NAME

Signer::AWSv4::RDS - Generate tokens for signing into MySQL/Aurora RDS servers with IAM credentials

SYNOPSIS

use Signer::AWSv4::RDS;
$pass_gen = Signer::AWSv4::RDS->new(
  access_key => 'AKIAIOSFODNN7EXAMPLE',
  secret_key => 'wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY',
  session_token => 'EXAMPLESESSIONTOKEN', # Required if using temporary security credentials.

  host => 'MyRDSEndpoint',
  user => 'iam_user',
  region => 'us-east-1',
);
my $password = $pass_gen->signed_qstring;

DESCRIPTION

Generate tokens for signing into MySQL/Aurora RDS servers with IAM credentials. You can find details of the process in https://www.capside.com/es/labs/rds-aurora-database-with-iam-authentication/.

Request Attributes

This module adds two required attributes in the constructor for obtaining a token (to be used as a MySQL password):

host String

The AWS RDS instance endpoint

user String

The user of the MySQL database

port Integer

The port the database is running on. Defaults to 3306.

Signature Attributes

signed_qstring

This has to be used as the password for the MySQL Server. Please note that all of this needs extra setup: correctly configuring your AWS environment AND your MySQL Client.

SEE ALSO

https://github.com/pplu/perl-rds-iam-authentication

BUGS and SOURCE

The source code is located here: https://github.com/pplu/AWSv4Signer

Please report bugs to: https://github.com/pplu/AWSv4Signer/issues

AUTHOR

Jose Luis Martinez
pplusdomain@gmail.com

COPYRIGHT and LICENSE

Copyright (c) 2018 by Jose Luis Martinez

This code is distributed under the Apache 2 License. The full text of the license can be found in the LICENSE file included with this module.