AWS Identity and Access Management(IAM)

統合バージョン: 5.0

ユースケース - Amazon Simple Storage Service(Amazon S3)を使用する

John は、aws-s3-bucket という名前の Amazon S3 バケットを会社用に作成しました。

  1. ユーザーを作成する(デベロッパーが会社のバケットにデータを作成できるようにする必要がある)
    1. グループを作成する(デベロッパーをグループとして)
  2. ポリシーを作成する(John はユーザー/グループに権限を割り当てる必要があります)
  3. ポリシーを関連付ける(John が、AWS S3 のオブジェクトの読み取り、書き込み、一覧表示をデベロッパーに許可するポリシーをグループに関連付ける)
  4. グループからユーザーを追加/削除する(デベロッパーの 1 人がマネージャーになったため、アクセス権を変更する必要がある)

Google Security Operations で AWS Identity and Access Management(IAM)の統合を構成する

Google SecOps で統合を構成する方法について詳しくは、統合を構成するをご覧ください。

統合のパラメータ

次のパラメータを使用して統合を構成します。

パラメータの表示名 種類 デフォルト値 必須 説明
AWS アクセスキー ID 文字列 なし 統合で使用する AWS アクセスキー ID。
AWS シークレット キー パスワード なし 統合で使用する AWS 秘密鍵。

アクション

Ping

説明

Google セキュリティ オペレーションの [Marketplace] タブの統合構成ページで提供されているパラメータを使用して、AWS IAM への接続をテストします。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

成功した場合: 「指定された接続パラメータを使用して AWS IAM サーバーに正常に接続されました。」と出力されます。

アクションが失敗し、ハンドブックの実行が停止します。

成功しなかった場合: 次の内容が出力されます。「AWS IAM サーバーへの接続に失敗しました!」エラーは {0}」.format(exception.stacktrace)

全般

ユーザーを作成する

説明

AWS アカウントの新しい IAM ユーザーを作成します。カンマ区切り値を使用すると、複数のユーザーを一度に追加できます。この段階ではポリシーは適用されません。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
ユーザー名 文字列 なし はい 作成するユーザーの名前。カンマ区切り値。注: ユーザー名にスペースを含めることはできません。また、英数字と +=.@_- のみを使用する必要があります。名前はアカウント内で一意である必要があります。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
JSON の結果
[{
   "Arn":"arn:aws:iam::582302349248:user/ziv",
   "CreateDate":"2020-12-03T12:12:20",
   "Path":"/",
   "UserId":"AIDAYPE7MW7AFMHK4WCHS",
   "UserName":"ziv"
}]
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合(有効なユーザー名がいくつかあった場合): 「次のユーザーを IAM に正常に追加しました: <ユーザー名>」と出力されます。
  • エラー - ユーザーがすでに存在する場合: 「次のユーザーを IAM に追加できませんでした: <ユーザー名>。アカウント内で名前は一意である必要があります。」と出力します。
  • エラー(無効なユーザー名がいくつかあった場合): 「次のユーザーを IAM に追加できませんでした: <ユーザー名>。ユーザー名には、英数字と次の文字(+=,.@-.)のみを使用する必要があります。」と出力します。
  • エラーの場合(制限を引き上げます。(アカウントあたりのユーザー数の上限は 5,000 人): 「次のユーザーを IAM に追加できませんでした: <ユーザー名>。AWS アカウントのユーザー数の上限に達しました。」と出力します。

注: 何も起こらなかった場合: すべてのユーザーが無効/存在/制限 → アクションは失敗するはずです

アクションが失敗し、ハンドブックの実行が停止します。

  • 成功しなかった場合(すべてのユーザー名が無効、認証情報が間違っている、接続がない、その他のエラー): 「アクション「ユーザーの作成」の実行中にエラーが発生しました。理由: {exception.stacktrace}

注: すべてのユーザー名が無効な場合は、「アクション「ユーザーの作成」の実行エラー。理由: {invalid usernames}: ユーザー名には英数字と +=,.@-. のみを使用してください。{existing usernames}: 名前はアカウント内で一意である必要があります。

全般

ユーザーをグループに追加する

説明

指定されたユーザーを指定された IAM グループに追加します。グループを使用すると、複数のユーザーに同じ権限ポリシーを一度に適用できます。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
グループ名 文字列 なし はい 更新するグループの名前。注: グループ名にスペースを含めることはできません。また、英数字と次の文字(+=.@_-)のみを使用する必要があります。
ユーザー名 文字列 なし はい 追加するユーザーの名前。注: ユーザー名にスペースは使用できません。使用できるのは、英数字と +=.@_- のみです。値はカンマで区切ります。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合: 「ユーザー <ユーザー名> を IAM グループ <グループ名> に追加しました」と出力されます。
  • エラーの場合 - グループが存在しない、またはユーザーが存在しない:
    グループが存在しない: 「Could not add <UserName> to <Group name>. The Group <group name> cannot be found.(<UserName> を <Group name> に追加できませんでした。グループ <group name> が見つかりません)」と出力します。
    ユーザーが存在しない / 両方: 「Could not add <UserName> to <Group name>. The user <user name> cannot be found.(<UserName> を <Group name> に追加できませんでした。ユーザー <user name> が見つかりません)」と出力します。
  • エラーの場合
    ユーザーの制限 - IAM ユーザーは 10 個のグループのメンバーになることができます
    グループの制限 - 1 つのグループに 5,000 人のユーザーを含めることができます
    「現在の AWS アカウントの制限を超えるリソースを作成しようとしたため、<UserName> を <Group name> に追加できませんでした」と出力します。

アクションが失敗し、ハンドブックの実行が停止します。

  • 成功しなかった場合(認証情報が間違っている、接続がない、その他の SDK エラー): 「アクション「グループにユーザーを追加」の実行エラー。理由: {exception.stacktrace}
全般

グループからユーザーを削除する

説明

指定されたユーザーを指定された IAM グループに追加します。グループを使用すると、複数のユーザーに同じ権限ポリシーを一度に適用できます。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
グループ名 文字列 なし はい 更新するグループの名前。注: グループ名にスペースを含めることはできません。また、英数字と次の文字(+=.@_-)のみを使用する必要があります。
ユーザー名 文字列 なし はい 削除するユーザーの名前。注: ユーザー名にスペースは使用できません。使用できるのは、英数字と +=.@_- のみです。値はカンマで区切ります。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合: 「<ユーザー名> がグループ <グループ名> から削除されました」と出力されます。
  • エラーの場合 - グループが存在しない、またはユーザーが存在しない:
    グループが存在しない: 「<UserName> を <Group name> から削除できませんでした。グループ <group name> が見つかりません。」と出力します。
    ユーザーが存在しない / 両方: 「<UserName> を <Group name> から削除できませんでした。ユーザー <user name> が見つかりません。」と出力します。
  • エラーの場合
    ユーザーの制限 - IAM ユーザーは 10 個のグループのメンバーになることができます
    グループの制限 - 1 つのグループに 5,000 人のユーザーを含めることができます
    「Could not remove <UserName> from <Group name> because it attempted to create resources beyond the current AWS account limits.」と出力します。

アクションが失敗し、ハンドブックの実行が停止します。

  • 成功しなかった場合(認証情報が間違っている、接続がない、その他の SDK エラー): 「アクション「グループからユーザーを削除する」の実行エラー。理由: {exception.stacktrace}
全般

ユーザーの一覧表示

説明

IAM 内のすべてのユーザーのリストを取得します。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
返すユーザーの最大数 Integer 50 いいえ 返すユーザーの数を指定します。最大 1,000 人のユーザー。デフォルトは 50 です。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
JSON の結果
[{
   "Arn":"arn:aws:iam::582302349248:user/ziv",
   "CreateDate":"2020-12-03T12:12:20",
   "Path":"/",
   "UserId":"AIDAYPE7MW7AFMHK4WCHS",
   "UserName":"ziv"
}]
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

成功した場合: 「AWS IAM で利用可能なユーザーを一覧表示しました」と出力されます。

データがない場合: 「AWS IAM でユーザーが見つかりませんでした」と出力します。


アクションが失敗し、ハンドブックの実行が停止されました:

成功しなかった場合(認証情報が誤っている、サーバーへの接続がない、その他のサーバーエラー、max>10000 の場合): 「アクション「ユーザーの一覧表示」の実行エラー。理由: {exception.stacktrace}

全般
CSV テーブル

タイトル: IAM ユーザー

列:

ユーザー名

ユーザー ID

ARN

作成日

全般

グループの一覧表示

説明

IAM 内のすべてのグループのリストを取得します。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
返されるグループの最大数 Integer 50 いいえ 返すグループの数を指定します。最大 1,000 個のグループ。デフォルトは 50 です。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
JSON の結果
[{
   "Arn":"arn:aws:iam::582302349248:group/ZivGroup",
   "CreateDate":"2020-12-05 16:18:36+00:00",
   "Path":"/",
   "GroupId":"AGPAYPE7MW7AMKCWMJPMX",
   "GroupName":"ZivGroup"
}]
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

成功した場合: 「AWS IAM で利用可能なグループを一覧表示しました」と出力されます。

データがない場合: 「AWS IAM にグループが見つかりませんでした」と出力します。


アクションが失敗し、ハンドブックの実行が停止されました:

成功しなかった場合(認証情報が誤っている、サーバーへの接続がない、その他のサーバーエラー、「最大グループ数」が 1,000 を超えている場合): 「アクション「グループの一覧表示」の実行エラー。理由: {exception.stacktrace}

全般
CSV テーブル

タイトル: IAM グループ

列:

グループ名

グループ ID

ARN

作成日

全般

ポリシーを作成する

説明

AWS アカウントの IAM カスタマー管理ポリシーを作成します。このアクションにより、バージョン ID が v1 のポリシー バージョンが作成され、v1 がポリシーのデフォルト バージョンとして設定されます。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
ポリシー名 文字列 なし はい 作成するポリシーの名前。ポリシー名にスペースを含めることはできません。使用できるのは、英数字と +=.@_- のみです。ポリシー名はアカウント内で一意である必要があります。
ポリシー ドキュメント 文字列 なし はい 新しいポリシーのコンテンツとして使用する JSON ポリシー ドキュメント。
説明 文字列 なし いいえ ポリシーの説明。通常、ポリシーで定義された権限に関する情報を保存するために使用されます。たとえば、「本番環境の DynamoDB テーブルへのアクセス権を付与します」などです。ポリシーの説明は変更できません。値を割り当てた後は変更できません。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
JSON の結果
{
    "PolicyName": "S3-read-only-bucket",
    "PolicyId": "ANPAYPE7MW7AFKUDK3HD7",
    "Arn": "arn:aws:iam::582302349248:policy/S3-read-only-bucket",
    "Path": "/",
    "DefaultVersionId": "v1",
    "AttachmentCount": 0,
    "PermissionsBoundaryUsageCount": 0,
    "IsAttachable": true,
    "CreateDate": "2020-12-6T17:16:45",
    "UpdateDate": "2020-12-6T17:16:45"
}
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合: 「<Policy name> policy was successfully created」と出力されます。

アクションが失敗し、ハンドブックの実行が停止します。

  • エラー - ポリシーがすでに存在する場合: 「<ポリシー名> ポリシーを作成できませんでした。ポリシー名はアカウント内で一意である必要があります。
  • エラーの場合 - ポリシー名が無効: 「<ポリシー名> ポリシーを作成できませんでした。ポリシー名に使用できるのは、英数字と +=,.@_-. のみです。
  • エラーの場合 - ポリシー ドキュメントの形式が正しくない場合 : 「<ポリシー名> ポリシーを作成できませんでした。ポリシー ドキュメントの形式が正しくありません。理由: {exception.stacktrace}

成功しなかった場合(LimitExceededException、認証情報が間違っている、接続がない、その他のエラー): 「アクション「ポリシーの作成」の実行中にエラーが発生しました。理由: {exception.stacktrace}

全般

グループを作成

説明

AWS アカウントの新しい IAM グループを作成します。グループを設定するには、グループを作成する必要があります。次に、グループ内のユーザーに期待する作業の種類に基づいて、グループに権限を付与します。最後に、グループにユーザーを追加します。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
グループ名 文字列 なし はい 作成するグループの名前。カンマ区切り値。注: グループ名にスペースは使用できません。英数字と +=.@_- のみを使用できます。名前はアカウント内で一意である必要があります。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
JSON の結果
[{
   "Arn":"arn:aws:iam::582302349248:group/ZivGroup",
   "CreateDate":"2020-12-05 16:18:36+00:00",
   "Path":"/",
   "GroupId":"'AGPAYPE7MW7AMKCWMJPMX",
   "GroupName":"ZivGroup"
}]
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合(一部またはすべてのグループ名が有効だった場合): 「次のグループを IAM に正常に追加しました: <グループ名>」と出力します。
  • エラー - グループがすでに存在する場合: 「次のグループを IAM に追加できませんでした: <グループ名>。名前はアカウント内で一意である必要があります。
  • エラーが発生した場合(無効なグループ名がいくつかあった場合): 「次のグループを IAM に追加できませんでした: <グループ名>。グループ名には、英数字と +=,.@_- のみを使用する必要があります。」と出力します。
  • エラーの場合(制限を引き上げます。アカウントあたりのグループ数の上限は 500 個です。「次のグループを IAM に追加できませんでした: <グループ名>。AWS アカウントのグループ数の上限に達しました。


アクションが失敗し、ハンドブックの実行が停止されました:

  • 成功しなかった場合(すべての名前が無効、認証情報が間違っている、接続がない、その他のエラー): 「アクション「グループの作成」の実行エラー。理由: {exception.stacktrace}
全般

ポリシーの一覧表示

説明

独自のユーザー定義の管理ポリシーとすべての AWS 管理ポリシーを含む、AWS アカウントで使用可能なすべての管理ポリシーを一覧表示します。返されるポリシーのリストは、省略可能な Only Attached、Scope、Policy Usage パラメータを使用してフィルタできます。たとえば、AWS アカウントのユーザー管理ポリシーのみを一覧表示するには、スコープを [ローカル] に設定します。AWS マネージド ポリシーのみを一覧表示するには、[Scope] を [AWS] に設定します。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
添付ファイルのみ ブール値 いいえ いいえ オンにすると、IAM ユーザー、グループ、ロールにアタッチされているポリシーのみに結果がフィルタされます。オフにすると、すべてのポリシーが返されます。
範囲

DDL
(すべて、AWS、ローカル)

すべて いいえ 結果のフィルタリングに使用するスコープ。AWS マネージド ポリシーのみを一覧表示するには、[Scope] を [AWS] に設定します。AWS アカウントのカスタマー管理ポリシーのみを一覧表示するには、スコープを [ローカル] に設定します。デフォルトでは、すべてのポリシーが返されます。
返される最大ポリシー数 Integer 100 いいえ 返すポリシーの数を指定します。デフォルトは 100 です。最大値は 1,000 です。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
JSON の結果
[{
'PolicyName': 'string',
'PolicyId': 'string',
'Arn': 'string',
'Path': 'string',
'DefaultVersionId': 'string',
'AttachmentCount': 123,
'PermissionsBoundaryUsageCount': 123,
'IsAttachable': True|False,
'Description': 'string',
'CreateDate': "2020-12-6T17:16:45",
'UpdateDate':"2020-12-6T17:16:45"
}]
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合: 「AWS IAM で利用可能なポリシーを一覧表示しました」と出力されます。
  • [Max Policies] の値 < フィルタに基づく一致するポリシーの場合: 「AWS IAM で利用可能なポリシーを一覧表示しました。なお、指定したフィルタに一致するポリシーが他にもあります。」
  • データがない場合: 「AWS IAM でポリシーが見つかりませんでした」と出力します。


アクションが失敗し、ハンドブックの実行が停止されました:

  • 成功しなかった場合(認証情報が誤っている、サーバーへの接続がない、その他のサーバーエラー、max>1000): 「アクション「ポリシーの一覧表示」の実行エラー。理由: {exception.stacktrace}
全般
CSV テーブル

タイトル: IAM ポリシー

列:

ポリシー名

ポリシー ID

作成日

更新日

全般

ポリシーを適用する

説明

指定されたマネージド ポリシーを ID(ユーザー、グループ、ロール)にアタッチします。

パラメータ

パラメータの表示名 種類 デフォルト値 必須 説明
ID のタイプ

DDL
(User, Group, Role)

グループ はい IAM ID タイプ。
ID 名 文字列 なし はい ポリシーを関連付ける ID の名前(ARN ではなくわかりやすい名前)。ID 名にスペースを含めることはできません。使用できるのは、英数字と +=.@_-. のみです。
ポリシー名 文字列 なし はい ポリシーをアタッチするポリシーの名前(ARN ではなくフレンドリ名)。ポリシー名にスペースを含めることはできません。使用できるのは、英数字と +=.@_-. のみです。

実行

このアクションはエンティティに対しては実行されません。

アクションの結果

スクリプトの結果
スクリプトの結果名 値のオプション
is_success is_success=False
is_success is_success=True
ケースウォール
結果のタイプ 値 / 説明 種類
出力メッセージ *

アクションが失敗したり、ハンドブックの実行を停止したりすることはありません。

  • 成功した場合: 「ポリシーが <Identity Type>: <Identity Name> に関連付けられました」と出力されます。

アクションが失敗し、ハンドブックの実行が停止します。

  • エラーの場合 -: 「<ポリシー名> ポリシーを作成できませんでした。ポリシー名はアカウント内で一意である必要があります。
  • エラーが発生した場合 - ID 名が無効だった場合: 「Could not attach <policy name> to <Identity Type>: <Identity Name>. Names must contain only alphanumeric characters and/or the following: +=,.@_-.
  • 成功しなかった場合(認証情報が間違っている、サーバーに接続できない、その他のサーバーエラー): 「アクション「ポリシーを適用」の実行エラー。理由: {exception.stacktrace}
全般

ユーザー アクセスを無効にする

明示的なインライン拒否ポリシーを追加して、AWS でユーザー アクセスを無効にします。

このアクションは、通常の AWS ユーザーのみをサポートします。フェデレーション ユーザーや IAM ロールはサポートしていません。

エンティティ

このアクションはユーザー エンティティに対して実行されます。

アクション入力

なし

アクションの出力

アクションの出力タイプ
ケースウォールのアタッチメント なし
ケースのウォールのリンク なし
ケースウォール テーブル なし
拡充テーブル なし
JSON の結果 利用可能
スクリプトの結果 利用可能
JSON の結果
[
  {
    "Entity": "//iam.googleapis.com/projects/example/serviceAccounts/service-account@example.iam.gserviceaccount.com",
    "EntityResult": [
      {
        "fullResourceName": "//iam.googleapis.com/projects/example/serviceAccounts/service-account@example.iam.gserviceaccount.com",
        "activityType": "serviceAccountLastAuthentication",
        "observationPeriod": {
          "startTime": "2023-05-23T07:00:00Z",
          "endTime": "2023-08-20T07:00:00Z"
        },
        "activity": {
          "lastAuthenticatedTime": "2023-08-20T07:00:00Z",
          "serviceAccount": {
            "serviceAccountId": "example-account-id",
            "projectNumber": "example-project-id",
            "fullResourceName": "//iam.googleapis.com/projects/example/serviceAccounts/service-account@example.iam.gserviceaccount.com"
          }
        }
      }
    ]
  }
]
スクリプトの結果
スクリプトの結果名
is_success True/False
ケースウォール

このアクションでは、次の出力メッセージが表示されます。

出力メッセージ メッセージの説明

Successfully added deny policy to the following users in AWS IAM: USERNAME_LIST

Action wasn't able to find the following users in AWS IAM: USERNAME_LIST

Action wasn't able to add deny policy to the following users in AWS IAM: USERNAME_LIST

アクションが成功しました。
Successfully added deny policy to the following users in AWS IAM: USERNAME_LIST

操作を実行できませんでした。

エラーが発生したため、指定されたユーザーの少なくとも 1 人に拒否ポリシーを適用できませんでした。

Error executing action "Disable User Access". Reason: ERROR_REASON

操作を実行できませんでした。

サーバーへの接続、入力パラメータ、または認証情報を確認してください。

さらにサポートが必要な場合 コミュニティ メンバーや Google SecOps のプロフェッショナルから回答を得ることができます。