This document describes how to set up multi-factor authentication (MFA) for Amazon Web Services (AWS) with AuthPoint as an identity provider. AWS must already be configured and deployed before you set up MFA with AuthPoint.
AWS can be configured to support MFA in several modes. For this integration, we set up SAML with AuthPoint.
Amazon AWS Authentication Data Flow with AuthPoint
AuthPoint communicates with various cloud-based services and service providers with the SAML protocol. This diagram shows the data flow of an MFA transaction for AWS.
Before You Begin
Before you begin these procedures, make sure that:
- End-users can log in to the Amazon AWS
- A token is assigned to a user in AuthPoint
- You have an AuthPoint identity provider (IdP) certificate (see Certificate Management)
- You have an IdP portal resource in AuthPoint
Configure Amazon AWS
To start, you must download the metadata file from the Resources page in the AuthPoint management UI. Once you have that, you can configure Amazon AWS.
- From the navigation menu, select Configure > AuthPoint. If you have a Service Provider account, you must first pivot to your Subscriber view.
- Select Resources.
- Click Certificate.
- Next to AuthPoint certificate you will associate with your resource, click and select Download Metadata. We recommend that you choose the certificate with the latest expiration date.
The AuthPoint metadata provides your resource, in this case AWS, with information necessary to identify AuthPoint as a trusted identity provider.
- Sign in to AWS as an administrator.
- Select Services.
- Select Security, Identity & Compliance > IAM.
- Select Access management > Identity providers.
- Click Create Provider.
- From the Provider Type drop-down list, select SAML.
- In the Provider Name text box, type a name (such as authpoint).
- Adjacent to Metadata Document, click Choose File and upload the AuthPoint metadata file that you downloaded.
- Click Next Step.
- Click Create.
- Select Access Management > Roles.
- Click Create Role.
- Select SAML 2.0 federation.
- From the SAML provider drop-down list, select the AuthPoint provider you created.
- Select Allow programmatic and AWS Management Console access.
- Click Next: Permissions.
- Select the policies that you want. In our example, we select AdministratorAccess.
- Click Next: Tags.
- (Optional) To add tags, in the Key text box, type a key.
- Click Next: Review.
- In the Role name text box, type a descriptive name for the role.
- Click Create role.
Before AuthPoint can receive authentication requests from AWS, you must specify AWS as a SAML resource in AuthPoint and you must add an IdP portal resource. You must also assign an access policy for the AWS resource and the IdP portal resource to the user group(s) that must authenticate to log in.
Add a SAML Resource in AuthPoint
From the AuthPoint management UI:
- From the navigation menu, select Resources.
- From the Choose a Resource Type drop-down list, select SAML. Click Add Resource.
- On the SAML page, in the Name text box, type a name for this resource.
- In the Application Type drop-down list, select Amazon AWS.
- In the Service Provider Entity ID text box, type https://signin.aws.amazon.com/saml.
- In the Assertion Consumer Service text box, type https://signin.aws.amazon.com/saml.
- From the User ID sent on redirection to service provider drop-down list, select User Name or Email.
- In the Logout URL text box, type https://signin.aws.amazon.com/saml.
- From the Signature Method drop-down list, select SHA-256.
- From the AuthPoint Certificate drop-down list, select the certificate to associate with your resource. This must be the same certificate that you downloaded the metadata for in the previous section.
- In the Roles section, click Add Role.
- In the Role Value text box, type the value of Trusted entities and the value of Role ARN separated by commas.
Example: arn:aws:iam::11112222233333:saml-provider/authpoint,arn:aws:iam::111122223333:role/SAML .
You can get these values from the AWS role that you created. In the Summary section, you can see the Role ARN value. In the Trust relationships section, you can see the Trusted entities value.
- Click Add.
- Click Save.
Add an IdP Portal Resource
You must have an IdP portal resource to use MFA for AWS. If you already have an IdP portal resource, you must add an access policy for the IdP portal resource to any group that has an access policy for AWS.
For detailed steps to add an IdP portal resource, see Add an IdP Portal Resource.
Add an Access Policy to AuthPoint
You must have at least one user group in AuthPoint for authentication with AWS, and you must assign an access policy for the AWS resource to that group. If you already have a group, you do not have to add another group.
In the AuthPoint management UI:
- From the navigation menu, select Groups.
- To add a new group, click Add Group. If you already have a group that you want to use, select the group to edit it.
- In the Name text box, type a descriptive name for the group.
- (Optional) In the Description text box, type a description of the group.
- In the Access Policy section, click Add Policy.
- In the Add Policy dialog box, from the Resource drop-down list, select the resource you want to add an access policy for.
- (Optional) To require that users type their password before they authenticate for this resource, enable the Require Password Authentication toggle.
- Select the authentication options that users in this group can select from when they authenticate.
For SAML resources, if you select more than one authentication option, users must select one of the available options when they authenticate. For example, if you select OTP and Push, users can choose to type their OTP or approve a push to authenticate. You cannot require that they do both.
- Click Add.
- (Optional) Add one or more safe locations to your group. For more information about safe locations and detailed instructions to add them, see About Safe Locations.
- Click Save.
- In the Additional Fields section, from the Roles drop-down list select the desired role(s) created in the previous section.
Before you assign users to a group, you must add the users to AuthPoint. You can manually add user accounts or import user accounts from an external user database. For more information on how to add user accounts, see Add User Accounts.
Test the Integration
To test AuthPoint MFA with AWS, you can authenticate with a mobile token on your mobile device. You can choose any method (one-time password, QR code, or push).
In this example, we show the push authentication method (users receive a push notification in the mobile app that they must approve to authenticate).
- In a web browser, go to the IdP portal. You can see the URL for the IdP portal when you edit your IdP portal resource in the AuthPoint management UI.
- Type your email address or AuthPoint user name. Click Next.
- If required, in the Password text box, type your password.
- For the authentication method, select Send Push.
- Approve the authentication request that is sent to your mobile device.
- In the IdP portal, select Amazon AWS.
You are logged in to Amazon AWS.