This is a yum plugin that allows for private AWS S3 buckets to be used as package repositories. The plugin utilizes AWS Identity and Access Management (IAM) roles for authorization, removing any requirement for an access or secret key pair to be defined anywhere in your repository configuration.
IAM Roles are used to control access to AWS services and resources.
For further details, take a look at the AWS-provided documentation: docs.
Why it's useful: when you assign an IAM role to an EC2 instance, credentials to access the instance are automatically provided by AWS. This removes the need to store them, change and/or rotate them, while also providing fine-grain controls over what actions can be performed when using the credentials.
This particular plug-in makes use of the IAM credentials when accessing S3 buckets backing a yum repository.
There is a great blog post by Jeremy Carroll which explains in depth how to use this plugin: S3 Yum Repos With IAM Authorization.
Currently the plugin does not support:
- Proxy server configuration
- Multi-valued baseurl or mirrorlist
- AWS version 4 signatures needed by S3 in some regions (see v4_scheme branch for work in progress)
Use make test
to run some simple tests.
Apache 2.0 license. See LICENSE.
- Mathias Brossard
- Mischa Spiegelmock
- Sean Edge
- Julius Seporaitis
- Robert Melas' code was used as a reference. See NOTICE.