IAM Identity Center の許可セットのセッション期間の確認

権限の機密性と作業に必要な時間に応じて、AWS アカウントのセッション期間を制限してください。

説明

AWS IAM Identity Center の許可セットの session_duration は、その権限で AWS アカウントにアクセスするコンソールと CLI のセッション期間を指定します。必要以上に長いセッションは、盗まれた認証情報や共有端末に残ったセッションを悪用できる時間を延ばします。

既定値と最小値は 1 時間で、最大 12 時間まで設定できます。権限の機密性と作業要件に合わせて選んでください。AWS アクセスポータルのログインセッション期間は別の設定です。

想定される影響

  • 盗まれたアカウントセッションが、有効期限まで悪用されるおそれがあります。
  • 共有端末でログアウトしないと、他の人が残ったセッションを使う可能性があります。

対処方法

  • 機密性の高い権限には実用上可能な短い期間を使い、長い期間が必要な場合は理由を確認してください。PT1H がサポートされる最小値です。
  • 許可セットの変更とアカウントへの再プロビジョニングを確認してください。ポータルのセッション、MFA、インシデント時のセッション取り消しも別途管理してください。

例

Identity Center インスタンスを取得するデータソースがある前提の抜粋です。権限ポリシーとアカウントへの割り当ては別途設定してください。

変更前

hcl
resource "aws_ssoadmin_permission_set" "example" {
  name             = "Example"
  description      = "An example"
  instance_arn     = tolist(data.aws_ssoadmin_instances.main.arns)[0]
  relay_state      = "https://s3.console.aws.amazon.com/s3/home?region=us-east-1#"
  session_duration = "PT2H"
}

変更後

hcl
resource "aws_ssoadmin_permission_set" "example" {
  name             = "Example"
  description      = "An example"
  instance_arn     = tolist(data.aws_ssoadmin_instances.main.arns)[0]
  relay_state      = "https://s3.console.aws.amazon.com/s3/home?region=us-east-1#"
  session_duration = "PT1H"
}

補足:

  • 変更前: アカウントのセッション期間を 2 時間に設定します。必要な作業時間とリスクを併せて確認してください。
  • 変更後: アカウントのセッション期間を 1 時間に短縮します。ポータルのセッション終了や、既存のすべてのセッションの即時取り消しを行う設定ではありません。

参考資料