AWS環境のセットアップ

KeeperPAMと連携するようにAWS環境をセットアップ

AWS環境の概要

AWS環境内のリソースは、EC2インスタンスロールポリシーか、PAM構成レコードで構成された特定のアクセスキーIDまたはシークレットアクセスキーを使用してKeeperゲートウェイで管理できます。

ロールポリシーは適切に設定し、対象のAWSリソースへアクセスできるようにする必要があります。

  • EC2ロールポリシー

  • IAMユーザーポリシー

以下の図は、AWS環境の階層構造です。

EC2 IAMロールポリシー

PAMの機能 (パスワードローテーションや検出など) をサポートするEC2 IAMポリシーを作成するには、適切なポリシー設定を持つロールを構成し、Keeperゲートウェイを実行するEC2インスタンスに適用する必要があります。

KeeperPAMでIAMユーザーやRDSデータベースのローテーションするには、以下のインラインロールポリシーを最小権限の原則に基づきつつニーズに応じて変更します。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "iam:SimulatePrincipalPolicy",
                "ec2:DescribeInstances",
                "rds:DescribeDBInstances",
                "ds:DescribeDirectories",
                "iam:ListUsers",
                "iam:GetUser",
                "iam:ListAccessKeys",
                "iam:UpdateLoginProfile",
                "rds:ModifyDBInstance",
                "ds:ResetUserPassword",
                "ds:DescribeLDAPSSettings",
                "ds:DescribeDomainControllers"
            ],
            "Resource": "*"
        }
    ]
}

最小権限を確保するために、KeeperPAMが管理する対象リソースに基づいて、JSONポリシーの「Action」および「Resource」属性を修正してください。

以下の手順に従って、新しいロールを作成してポリシーを適用します。

  1. 上記のJSONでロールを作成するか、[IAM] > [Roles] > [Create Role]をクリックし、[AWS Service]を選択し、[EC2 use case]を選択します。

  2. 作成したロールに、ポリシーJSONを適用します。

  3. [EC2] > [Instances]でゲートウェイを実行するインスタンスを選択し、[Actions] > [Security] > [Modify IAM Role]に移動して新しいロールを選択します。

最小限のAWSポリシーでIAMユーザーを管理

管理するユーザータイプ
IAMポリシー

EC2 User

ローテーションはローカル認証情報を使用し、特別なAWS権限は必要ありません。

Managed Database

ローテーションはAWS APIを使用してPAMデータベースレコードを操作し、以下が必要です。 iam:GetUser iam:SimulatePrincipalPolicy rds:ModifyDBInstance rds:DescribeDBInstances

PAMデータベースやPAMユーザーレコードをSQL経由で管理する場合、AWS権限は必要ありません。

Directory User

ローテーションはAWS APIを使用してPAMディレクトリレコードを操作し、以下が必要です。

iam:SimulatePrincipalPolicy ds:DescribeDirectories ds:ResetUserPassword ds:DescribeLDAPSSettings ds:DescribeDomainControllers

IAM User

ローテーションはAWS APIを使用してPAMユーザーレコードを操作し、以下が必要です。

iam:SimulatePrincipalPolicy iam:UpdateLoginProfile iam:GetUser

IAMユーザーポリシー

EC2インスタンスロールポリシーの使用が推奨されますが、AWSアクセスキーIDおよびシークレットアクセスキーをPAM構成内で直接設定することも可能です。対象のAWSリソースにアクセスできるよう、適切なポリシー設定を構成したIAM管理者アカウントを作成する必要があります。

以下はサンプルのポリシーです。

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "VisualEditor0",
            "Effect": "Allow",
            "Action": [
                "iam:SimulatePrincipalPolicy",
                "ec2:DescribeInstances",
                "rds:DescribeDBInstances",
                "ds:DescribeDirectories",
                "iam:ListUsers",
                "iam:GetUser",
                "iam:ListAccessKeys",
                "iam:UpdateLoginProfile",
                "rds:ModifyDBInstance",
                "ds:ResetUserPassword",
                "ds:DescribeLDAPSSettings",
                "ds:DescribeDomainControllers"
            ],
            "Resource": "*"
        }
    ]
}

最小権限を確保するために、KeeperPAMが管理する対象リソースに基づいて、JSONポリシーの「Action」および「Resource」属性を変更します。

アクセスキーの作成手順

  1. 新しいIAMユーザーを作成するか既存のユーザーを選択します。

  2. ユーザーにポリシーを適用します。

  3. IAMユーザー > [セキュリティ認証情報] > [アクセスキーを作成]を選択します。

  4. [AWS の外部で実行されるアプリケーション]を選択します。

  5. 表示されるアクセスキーID / シークレットアクセスキーをPAM構成に保存します。

また、これらのポリシーに加えて、AWS KMSを使用してゲートウェイ構成シークレットを保護することを推奨します。

最終更新