> For AI agents: [llms.txt](https://docs.trustedauth.com/llms.txt) provides a Markdown index of this documentation.

# Amazon Web Services (AWS)

Amazon Web Services is a secured cloud web services platform that provides a large bundle of cloud-based services (see <https://aws.amazon.com/>). You can configure your Amazon Web Services account for Single Sign-On (SSO) through Identity as a Service.

attention

Before you begin, review the information in the AWS documentation, [Configuring SAML Assertions for the Authentication Response](https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_create_saml_assertions.html).

note

This procedure was tested using previous versions of Identity as a Service and Amazon Web Services. Other versions of Amazon Web Services may require integration and configuration steps that differ from those documented in this procedure. For newer versions of Amazon Web Services, use this procedure as a starting point for integrating Amazon Web Services. In the event of other issues, contact <support@entrust.com> for assistance.

To integrate AWS with Identity as a Service you must do the following

## Step 1: Create custom user attributes for AWS

You need to create custom user attributes to fully integrate AWS and Identity as a Service. User attributes for AWS are case-sensitive and cannot contain spaces.

Repeat this procedure to create the following user attributes:

- AWS account number (for example name it, AWS Account Number)
- AWS Identity Provider name (for example, name it AWS Provider Name)
- AWS role name (for example, name it AWS Role Name)
- Optional. By default, the integration uses the Identity as a Service User ID for the AWS login User ID. If you want to change it to custom user attribute, create a custom user attribute for the AWS user ID.

1. Click Menu icon **>** **Members > Attributes**. The **User Attributes List** page appears.
2. Under **Custom User Attributes**, click **Add**. The **Add User Attribute** dialog box appears.
3. Enter a **User Attribute Name** for the custom user attribute. For example, AWS_User_ID.
4. Optional: Check **Attribute is** **required** to make the user attribute mandatory.
5. Click **Save** to create the attribute. The attribute now appears in the list of Custom User Attributes.
6. Repeat this procedure to create the remaining required user attributes.

## Step 2: Add AWS to Identity as a Service

1. Log into your Identity as a Service administrator account.

2. Click Menu icon **>** **Security > Applications**. The **Applications** **Lists** page appears.

3. Click **Add**. The **Select an Application Template** page appears.

4. Do one of the following:

   - Select **SAML Cloud Integrations** from the search drop-down list and scroll to find the application you want to add to IDaaS.
   - In the **Search bar**, enter a search option to filter for the application you want to add to IDaaS.

5. Click **AWS**. The **Add AWS** page appears.

6. Enter an **Application Name**.

7. Enter an **Application Description**.

8. Optional. Add a custom application logo.

   1. Click Plus icon next to **Application Logo**. The **Upload Logo** dialog box appears.
   2. Click Upload icon to select an image file to upload.
   3. Browse to select your file and click **Open**. The **Upload Logo** dialog box reappears showing your selected image.
   4. If required, resize your image.
   5. Click **OK**.

9. Select the **Authentication Flow** that appears to users during login.

10. Click **Next**. The **General** page appears.

11. If available, click Upload icon to **Upload Metadata XML** file to auto-populate the following fields, if available in the file:

    - Default Assertion Consumer Service URL
    - Service Provider Entity ID (Issuer)
    - Single Logout Service URL
    - SAML Signing Certificate
    - SAML NameID Encoding Format
    - SAML Signature Algorithm

12. Enter the **SAML Session Timeout** to the time when the SAML Assertion times out. The maximum is 720 minutes.

13. Enter the **Max Authentication Age (seconds)** to set the maximum amount of time that can elapse before a user is required to reauthenticate during a new login attempt. This applies for both SP-initiated and IDP-initiated login. Set this field to -1 to disable this feature.

14. If you do not have a metadata file, use the information provided in the next steps to populate the fields.

15. Enter the **Default** **Assertion Consumer Service URL** for the application.

    > <https://signin.aws.amazon.com/saml>

16. Enter the **Service Provider Entity ID (Issuer)** that is used by Identity as a Service to identify your application.

    > urn:amazon:webservices

17. Leave the **Single Logout Service URL** field blank.

18. Optional. Enter the **SAML Username Parameter Name** used to identity the user ID being requested for authentication. The user ID can then be passed as a parameter, for example, Username=jdoe.

19. From the **SAML Name ID Attribute** drop-down list, select the user attribute that will be used to uniquely identity a user to both Identity as a Service and your application. The attribute should be one that will never change. You created this user attribute in Step 1: Create mandatory user attributes for AWS.

20. **For the** **SAML NameID Encoding Format, s**elect **UNSPECIFIED**.

21. In **SAML Response Signature Algorithm,** select the signing algorithm you want Identity as a Service to use to sign the SAML response/assertion. The type of algorithm you select depends on the requirements of the application being configured.

22. Select the **SAML Signing Certificate** from the drop-down list.

23. Optional: Select **Sign complete SAML response** to ensure the message integrity of the SAML response sent to the application during authentication.

24. Optional: Select **Respond Immediately for Unsuccessful Responses** to return to the application immediately after a login failure, rather than allow user to try again with a different userID.

25. Deselect **Enable Go Back Button** if you do not want users to be able to go back to the application login page to log in.

26. Select **Show Default Assertion Consumer URL Service in the My Profile**. When selected, the Default Assertion Consumer URL appears in a user's My Profile page in addition to relay states and Alternative Assertion Consumer URLs.

27. Optional: Select **Encrypt SAML Assertion**. When selected the SAML Assertion is also encrypted. If you select this option, do the following:

    1. From the **Encryption Method for Key** drop-down list, select either **RSA Version 1.5** or **RSA-OAEP**. RSA Version 1.5 is the default.
    2. From the **Encryption Method for Data** drop-down list, select the encryption method used to encrypt data. The options are:
       - AES-256 (default)
       - AES-128
       - AES-192
       - Triple DES
    3. In the **Encryption Certificate** field, upload the encryption certificate file.

28. Optional. Add **Alternative Assertion Consumer Service URLs**, as follows:

    1. Click **Add**.
    2. Enter a **Name**.
    3. Enter a URL **Value**.
    4. Select **Show in My Profile** to display the Alternative Consumer Service URL in a user's My profile page.
    5. Optional. **Add an Application Logo**.
    6. Click **Add**.
    7. Repeat these steps to add more Alternative Assertion Consumer Service URLs.

29. Optional. Add a **Relay State** as follows:

    1. Under Relay State, click **Add**. The **Add Relay State** dialog box appears.

    2. Enter a **Name** for the relay state.

    3. Enter the **Value** for the relay state. This setting specifies the application or URL that is a user is redirected to after successful authentication.

    4. Select **Show in My Profile** to display the relay state on the user's My Profile page.

    5. Optional. Add a Relay State custom logo.

       1. Click Plus icon next to **Relay State Logo**. The **Upload Logo** dialog box appears.
       2. Click Upload icon to select an image file to upload.
       3. Browse to select your file and click **Open**. The **Upload Logo** dialog box reappears showing your selected image.
       4. If required, resize your image.
       5. Click **OK**.
       6. Click **Add**.
       7. Repeat these steps to add more Relay States.

note
After you add relay states, you can also enable or disable them on the Add/Edit application page. Click the disable icon next to the relay state to disable it or click the enable icon to re-enable it. Relay states apply to the Default Assertion Consumer Service URLs and not the Alternative Assertion Consumers URLs.

30. Under **SAML Attribute(s)**, do the following:

    1. Click <https://aws.amazon.com/SAML/Attributes/Role>. The SAML Attribute(s) dialog box appears with the following string:

       > arn:aws:iam::<AWS Account Number>:saml-provider/<AWS Provider Name>,arn:aws:iam::<AWS Account Number>:role/<AWS Role Name>

    2. Edit the content between < > with **the custom user attributes you created in** _Step 1: Create custom user attributes for AWS_.

    3. **Replace** <AWS Account Number> with the **user attribute you created for the AWS account number.**

    4. **Replace** <AWS Provider Name> with the **user attribute you created for the AWS Identity Provider name.**

    5. **Replace** <AWS Account Number> **with the user attribute you created for the AWS account number.**

    6. **Replace** <AWS Role Name> **with the user attribute you created for the AWS role name.**

note
**If the values between the angle brackets < > appear in** **bold** **text, they are already mapped and you do not need to edit them.**

31. Optional. By default, the integration uses the Identity as a Service User ID for the AWS login User ID. If you want to change it to another attribute, for example the user's email address, do the following:

    1. Under **SAML Attribute(s),** click <https://aws.amazon.com/SAML/Attributes/RoleSessionName>.
    2. Click **Add**.
    3. In the **Value(s)** field, type < and select the attribute you want to use for the AWS user ID.
    4. Click **Edit**.

32. Optional. Add other SAML Attributes as follows:

    1. Under **SAML Attributes**, click **Add**. The **SAML Attributes** dialog box appears.
    2. Enter a **Name** that clearly indicates the purpose of the attribute. It should indicate whether the SAML attribute value contains user group or authenticator attributes. For example, if the attribute value contains user groups the name could be User Groups.
    3. Click **Add** next to **Value(s)**.
    4. In the **Values** field do the following, as required:
       - Type < and select the user attribute to include every time the user authenticates to the application.
       - Type **[** and select **[Groups]** to include a user's groups every time the user authenticates to the application.
       - Type **[** and select **[Authenticators]** to include a user's authenticators every time the user authenticates to the application.
       - To add static text, type the text in the Value text box.
    5. Click **Add**.
    6. Repeat this procedure to add additional SAML attributes.

33. Click **Submit**.

## Step 3: Add a resource rule

See [Create resource rules](/docs/authentication-and-security/create-and-manage-resource-rules.md).

## Step 4: Download the Metadata file from Identity as a Service

1. In Identity as a Service, click Menu icon **>** **Security > Applications**. The **Applications List** page appears.

2. Do one of the following:

   - Click Cloud Download icon next to the application you are integrating with Identity as a Service.
   - Click Ellipsis Vertical icon next to the application you are integrating with Identity as a Service and select **SAML IDP Metadata**.

   The **SAML Application Metadata** dialog box appears.

3. **Select the certificate to include in the SAML IDP Metadata file** from the drop-down list.

4. If applicable, **Select the domain to include in the SAML IDP Metadata** file from the drop-down list.

5. Enter the **Lifetime, in days, for the SAML IDP Metadata file**. The value must be between 2 and 730.

6. Do one of the following, as required:

   - Copy the **Public Endpoint** to paste into your SAML application being used Identity Provider authentication.
   - Click **Download**.

note

If you are using multiple domains, you must download each domain's metadata file separately because the values in the metadata file vary for each domain.

## Step 5: Configure AWS for SSO

1. Log in to your AWS account and go to your **Amazon Web Services Management Console**.
2. Select **Services**. A list of Services appears.
3. Under **Security, Identity & Compliance**, select **IAM**. The **Welcome to** **Identity and Access Management** page appears.
4. Select **Identity Providers** from the navigation pane. The **Resource Groups** page appears.
5. Select **Create Provider**.
6. Add Identity as a Service as a trusted identity provider to your Amazon Web Service tenant/management console, as follows:
   1. Select **SAML** as the **Provider Type**, and click **Next Step**.
   2. In the **Provider Name** field, enter an identity provider (IDP) name, for example, Identity as a Service.
   3. Upload the XML file you downloaded from Identity as a Service.
   4. Click **Next Step**.
   5. Verify the information you have entered, and click **Create**. You are redirected to the **Identity Provider** page.
7. Select **Roles** from the left navigation panel.
8. Click **Create**.
9. For the Role Type, select **Role For Identity Provider**. A list of sub options appear.
10. Select **Grant Web Single Sign-On (Web SSO) access to SAML Providers**.
11. Select the name of the Identity Provider you previously created as the **SAML provider** (for example, Identity as a Service).
12. Click **Next Step**. The **Verify Role Trust** page appears showing the **Policy Document**.
13. Optional: Review the policy and modify the policy document as required.
14. Click **Next Step**. The **Attach Policy** page appears.
15. Select the policies (listed under **Policy Name)** as the policies that federated users inherit when assigned this role. A maximum of 10 can be selected. You can select whichever policies you want.
16. Click **Next Step**.
17. Enter **Role Name**.
18. Record the name of the role you created in the previous step. You need to enter that role when you Enter AWS values into Identity as a Service user attributes.
19. Enter a **Role Description**.
20. Review your settings. When satisfied click **Create Role**.

## Step 6: Add AWS definitions to Identity as a Service user attributes

1. Log in to your Identity as a Service account.

2. Click Menu icon **>** **Members > Users**. The **Users List** page appears.

3. Click the **User ID** for the profile you want to edit. The **User Profile** page appears.

4. Under **Attributes**, do the following (you will need to reference your AWS account to complete these steps):

   1. Locate the attribute you created for your AWS Role and on the line below it, enter the role name you recorded during _Step 5: Configure AWS for SSO_.

   2. Locate the attribute you created for the AWS_Account_ID and on the line below it, enter the account number. The account number is located at **Support > Support Center** of your AWS account.

   tip
   User account numbers of an AWS parent account are the exact same. Identity as a Service has structured the configuration so that user account's from multiple accounts can all be accessed through Identity as a Service.

   3. Locate the attribute you created for the AWS_IDP_ID and on the line below it, enter the IDP name. The IDP name can be found at **IAM > Identity provider**.

   4. Locate the attribute you created for the AWS_User_ID and on the line below it, enter the user name. The **User name** is listed on Amazon at **Services >Security, Identity & Compliance > IAM > Users**.

note
Check that the spelling, case of every character and located of each attribute value entered in the previous steps is correct. If any are incorrect, login attempts will fail.

5. Click **Save**.
