The Perl and Raku Conference 2025: Greenville, South Carolina - June 27-29 Learn more

#!perl
# vim: softtabstop=4 tabstop=4 shiftwidth=4 ft=perl expandtab smarttab
# ABSTRACT: Perl API for HashiCorp's Vault (MongoDB)
use Moo;
our $VERSION = '0.04'; # VERSION
has '+mount' => ( is => 'ro', default => 'mongodb' );
1;
__END__
=pod
=encoding UTF-8
=head1 NAME
WebService::HashiCorp::Vault::Secret::MongoDB - Perl API for HashiCorp's Vault (MongoDB)
=head1 VERSION
version 0.04
=head1 SYNOPSIS
use WebService::HashiCorp::Vault;
my $vault->new(%args);
# Grab the MongoDB secret backend object
my $mongodb = $vault->secret( backend => 'cassandra' );
# Grab a generated credential for the database
$mongodb->cred($name);
=head1 DESCRIPTION
The MongoDB Secret Backend handling for HashiCorps Vault server software.
To be used via L<WebService::HashiCorp::Vault>.
=head1 METHODS
=head2 creds
my $credentials = $backend->creds($name);
Generates dynamic credentials based upon the named role
B<Parameters>
=over 4
=item $name (string: B<required>) - Specifies the name of the role to create credentials against. This is part of the request URL.
=back
B<Returns>
A hashref containing the credentials
=head1 AUTHOR
Dean Hamstead <dean@fragfest.com.au>
=head1 COPYRIGHT AND LICENSE
This software is Copyright (c) 2025 by Dean Hamstad.
This is free software, licensed under:
The MIT (X11) License
=cut