IAM Safety

In this topic:

    Overview

    Dome9 IAM Safety protects AWS cloud accounts from access to AWS services by users, and requires that AWS (IAM) users be explicitly granted permission from a Dome9 account administrator in order to access these services. This hardens the AWS account console and restricts users from making unauthorized or accidental changes to account settings without the knowledge and authorization of an administrator. Users can access the account to view settings without restrictions (based on their AWS permissions).

    IAM users who wish to access protected services must have an authorization window opened for them for the service. The window can be opened for them by a Dome9 admin user, on the Dome9 console, or by the IAM users themselves, using the Dome9 Mobile App. The authorization window is for a limited period of time. During this time, the IAM user can access the protected AWS services. At the end of the window, access to the services will be blocked.

    Further, all actions taken by IAM users on protected services are logged, and appear in the Dome9 Audit Trail.

    How it works

    Dome9 IAM Safety protects AWS services or specific actions for these services. To set up IAM Safety on Dome9, you must first configure a Dome9 IAM policy on your AWS account (for example, Dome9-Restricted-Policy) which grants Dome9 permissions to control AWS services. You then select the AWS services or actions that will be protected by Dome9 (AWS actions or services that are not selected can be accessed by IAM users, according to their AWS permissions, and are not restricted or protected by Dome9). Finally, you apply Dome9 protection to the AWS IAM users of the AWS account who require access to the protected services or actions on AWS. This allows them to be granted access (by Dome9) to the protected AWS services.

    Note: IAM users of a protected account, who do not have protection applied to them, will not be restricted by Dome9 from accessing services in the account (according to their AWS permissions only). To properly protect an AWS account, therefore, it is important to apply protection to all IAM Users and Roles as soon as the account is protected.

    To use this protection to access a service, an IAM user or role is authorized (or 'elevated') to access AWS services for a limited time. An IAM user or role can be elevated by in the following ways:

    • by a Dome9 super user from the Dome9 console
    • they can elevate themselves, if they are also a Dome9 user, and have installed the Dome9 Mobile app, and associated it with the protected account
     

    Considerations

    Dome9 recommends certain categories of actions and services to be protected by IAM Safety. These are grouped as Templates when you set up the IAM Safety, and cover Computing, Networking, Security & Identity, Storage, and Database actions. In addition, it is recommended to lock down services/actions that aren't performed very often and/or are irrevocable when they are performed. For example, IAM, Route53, KMS, services, or actions such as changing S3 bucket permissions, deleting buckets, or deleting EBS snapshots.

     

    What you need

    The AWS account with the services that you wish to protect with IAM Safety must be onboarded to Dome9, and must be in Full-Protection mode. See see Onboard an AWS Account.

    Dome9 users must be associated with a protected AWS account in order to grant access to themselves or other users. This is done by invitation from a Dome9 admin user. 

    If a Dome9 user wishes to use the Dome9 Mobile app to elevate themself to access AWS protected services, you must install the app and then pair it with your Dome9 account. 

    Protected vs Protected with Elevation

    You can protect an AWS service in two ways.

    Protected - Protected AWS IAM users cannot perform protected actions on these AWS services under any circumstances. Users can only perform these actions if the Dome9 protection is permanently removed from the service.

    Protected with Elevation - Dome9 users (who are associated with the protected account) can elevate themselves or other IAM users to access protected services for limited periods of time.

    Tamper protection

    IAM users or roles that are protected with IAM Safety are also protected against tampering. These users and roles are included in restricted groups or policies in AWS (as part of the way Dome9 implements the protection). Any attempt to remove a user or role from these groups or policies on the AWS console (and not through Dome9) will be detected by Dome9 (and logged in the Audit trail) and rolled back.

     
     

    Benefits

    • Reduce unauthorized or accidental access to AWS accounts to modify settings or entities

    • Control who can make changes to AWS accounts settings

    • Require an additional authorization factor (the mobile app on the user's mobile device) to grant access

    • Access permissions are temporary, and are automatically removed at the end of the authorization window

    • Full audit trail of access to sensitive services

    Use-cases

    • an AWS IAM user account needs to change settings on the AWS account or add/modify cloud entities associated with the account or its VPCs.

     
     

    Actions

    Add an AWS cloud account to be protected by Dome9 IAM Safety

    To set up your Dome9 account to manage IAM user access to an AWS account, you must configure a policy in the AWS account, to permit your Dome9 account to manage IAM users. This policy will list the AWS services and actions that will be protected. Once this policy is in place, access to these services will be blocked to all IAM users, and only permitted to particular users when an authorization is granted (this is described below).

    1. Navigate to the IAM Safety main page, and click GET STARTED.

    2. Select the AWS services and actions to be managed by your Dome9 account from the list of services. The list of services expands, to show specific actions. Alternatively, select one or more templates (aggregate groups of services) at the top. After making your selections, click COPY TO CLIPBOARD, and then click NEXT.

    3. Follow the steps described in the next screen, to create a new policy and group on your AWS account, which permits your Dome9 account to manage AWS IAM users. Copy the Policy and Group ARNs from the AWS console, and paste them in the appropriate places on this screen, and then click NEXT.

      Note: carefully review the services and actions that you have selected for protection before proceeding to the next step. Once you have set up the policy for these services, there is no simple way to make changes to it.

    4. Select the AWS account to be managed by Dome9, and then click NEXT.

      IAM-Safety-Connect-AWS-Account.png
    5. Connect the IAM Safety policy with the account. Follow the on-screen instructions, and then click NEXT.

    6. Dome9 will connect to your AWS account, and attempt to assume control of the selected services. If this is successful, this message will appear.

     

    Protect an IAM User or Role

    After the AWS account has been protected with Dome9 IAM Safety, you can apply Dome9 protection to IAM users of the account, so that they can be access the protected services. These users are called 'Protected' users. Applying protection to them does not grant them access, but allows access to be granted to them by means of an 'elevation' (or authorization), for temporary access to the service.

    Both IAM Users and Roles can be protected. If a role is protected, any IAM user with this role can access protected services if the role is elevated.

    Note: until you apply protection to an IAM user, the user can access the protected AWS services without restriction. It is important to apply protection to all IAM users immediately after configuring Dome9 IAM Safety on the account.

    1. Navigate to the IAM Safety main page, and then select the IAM Users tab. This shows a list of the IAM (AWS) users of the AWS account. The protection status of each user is also shown (initially all are Not Protected, and can access the services on the account without restriction from Dome9).

      IAM-Users-tab.png
    2. Click PROTECT next to a user to apply Dome9 IAM Safety protection to the user. This user will now be able to access protected AWS services on the AWS account only according to the protection you set.

    3. Select the type of protection to apply to the user, then click SAVE. Protected restricts the user from accessing protected AWS services. Protected With Elevation restricts the ser from accessing protected services, but allows the user be elevated, to access services. Select also a Dome9 user that the IAM user will be paired with. This user must be paired with the mobile device and app (see Dome9 Mobile App). 

    4. You can apply protection to IAM Roles in the same way. Select the IAM Roles tab.

    5. To protect all IAM users, click PROTECT ALL. This applies Protect type protection to all IAM users. To change the protection for any of these users, for example to Protect With Elevation, select and then Change Protection.

    Unprotect an IAM User or Role

    A Dome9 super user can remove protection from an IAM User for an AWS account. When protection is removed, this user can access protected services on the account without any Dome9 restriction or control (including Tamper Protection). In addition, actions by this user will not be audited by Dome9.

    1. Navigate to the IAM Users tab.
      IAM-Users-tab.png
    2. Select opposite the User or Role, and then select . Similarly, to change the protection level (for example, from Protected to Protected With Elevation), select Change Protection.
     

    Invite (add) Dome9 users to protected accounts.

    A Dome9 account admin can associate other Dome9 users with a protected account.

    [invite other (regular) Dome9 users to install the Dome9 mobile app. They will use the mobile app to open authorization windows to the AWS account. You can invite users only after configuring your Dome9 account for IAM Safety. Invitations are sent to the recipient users by secure email.]

    You only need to invite users who have Protect With Elevation protection. Users with Protect only protection cannot authorize access to the AWS account, and so do not need the mobile app.

    1. Navigate to the IAM Safety main page, and then select the Dome9 Users tab.

      IAM-Dome9-users-tab.png
    2. Select a user in the list, and click INVITE USER. An email invitation will be sent to this Dome9 user, to become an IAM User.

    3. The recipient user should click on the link.

    4. The user can optionally install the Dome9 mobile app (see Dome9 Mobile App).

    5. To remove a user from IAM Safety, click CANCEL INVITATION.

     

    Open an authorization window for an IAM User or Role (elevate a user)

    A Dome9 user, associated with a protected AWS account, can elevate themselves or an IAM user of the AWS account, to access the protected services. This can be done from the Dome9 console app, or on the Dome9 Mobile app.

    The IAM user must be protected by IAM Safety with Protect With Elevation protection.

    The elevation will be for a limited period of time, during which the elevated user will be able to access the protected AWS services.

    Elevate using the Dome9 console app

    Dome9 super users can elevate IAM users from the Dome9 console app.

    1. Navigate to the Accounts & IAM Users page in the IAM Safety menu. The left pane shows the AWS accounts that are protected by Dome9. For a selected account, the right pane shows the IAM users and roles, and their protection status.
      IAM-Accounts-and-Users.png
    2. Select the user to be elevated from the list of IAM Users (the user must be Protected). Click ELEVATE opposite the user to elevate the user for 15 minutes, or select a specific elevation period from the drop-down list.
    3. To elevate a number or users, check the box next to each one, then select the elevation period.
      IAM-Elevate-multiple-users.png
      If some of the selected users are not yet protected, click PROTECT ALL to protect them,
    4. If the intended user is not yet protected, press PROTECT to include them in Dome9 protection, and select the Protected With Elevation option, after which they can be elevated.

    Elevate using the Dome9 Mobile app

    Dome9 users can elevate themselves using the Dome9 Mobile app.

    1. Open the mobile app, and select IAM Safety from the main menu

    2. Tap on a Role or User in the list, to grant an authorization window to access the AWS service. The duration of the window will be indicated. The size of the authorization window can be configured in the Settings page of the app.