This module adds support for reading AWS IAM access credentials from EC2 instance metadata, to allow Prosody modules to gain role-based access to AWS services.
= {
modules_enabled "aws_profile";
}
There is no other configuration.
Other modules can import the credentials as a shared table:
local aws_credentials = module:shared("/*/aws_profile/credentials");
(aws_credentials.access_key, aws_credentials.secret_key); do_something
Note that credentials are time-limited, and will change periodically.
The shared table will automatically be updated. If you need to know when
this happens, you can also hook the
'aws_profile/credentials-refreshed'
event:
:hook_global("aws_profile/credentials-refreshed", function (new_credentials)
module-- do something with new_credentials.access_key/secret_key
end);
Meant for use with Prosody 0.11.x, may work in older versions.
With the plugin installer in Prosody 0.12 you can use:
sudo prosodyctl install --server=https://modules.prosody.im/rocks/ mod_aws_profile
For earlier versions see the documentation for installing 3rd party modules