- 公開日
- 最終更新日
【SecurityHub】SSM.7修復をTerraformで実施してみる
この記事を共有する

目次
サービスG松原です。 今回はAWS SecurityHub CSPM(以下Security Hub)で検知されるSSM.7コントロールの修復対応をTerraformで実施します。
SSM.7コントロールについて
Security HubのSSM.7は2025年7月から追加されたコントロールです。内容は「SSMドキュメントでパブリック共有ブロック設定を有効にする必要がある」というもの。
今まではSSM.4(SSMドキュメントはパブリックにしないでください)でSSMドキュメントのパブリック共有そのものの検知はされていましたが、 それに加えてSSMドキュメントのパブリック公開のガードレール設定について検知されるようになったかたちです。
Security Hubでは上記のように検知されます。パブリック共有ブロック設定はデフォルトでオフなので検知されやすいコントロールのはず。今回はこれをTerraformで修正します。
Terraformコード
TerraformにてSSMドキュメントのパブリック共有ブロック設定を有効化します。 以下コード例です。
# プロバイダー
provider "aws" {
region = "ap-northeast-1" # 東京リージョン
}
provider "aws" {
region = "ap-northeast-3" # 大阪リージョン
alias = "osaka"
}
# SSM設定
resource "aws_ssm_service_setting" "public-sharing-permission-tokyo" {
setting_id = "/ssm/documents/console/public-sharing-permission"
setting_value = "Disable"
}
resource "aws_ssm_service_setting" "public-sharing-permission-osaka" {
provider = aws.osaka
setting_id = "/ssm/documents/console/public-sharing-permission"
setting_value = "Disable"
}
解説
- aws_ssm_service_settingリソースで/ssm/documents/console/public-sharing-permission設定をDisableに設定します
- リージョン別の設定なのでプロバイダー/リソースをリージョン別に記載しています(今回は東京/大阪)
実施時のログ
Terraform Plan時
Terraform used the selected providers to generate the following execution plan. Resource actions are indicated with the
following symbols:
+ create
Terraform will perform the following actions:
# aws_ssm_service_setting.public-sharing-permission-osaka will be created
+ resource "aws_ssm_service_setting" "public-sharing-permission-osaka" {
+ arn = (known after apply)
+ id = (known after apply)
+ region = "ap-northeast-3"
+ setting_id = "/ssm/documents/console/public-sharing-permission"
+ setting_value = "Disable"
+ status = (known after apply)
}
# aws_ssm_service_setting.public-sharing-permission-tokyo will be created
+ resource "aws_ssm_service_setting" "public-sharing-permission-tokyo" {
+ arn = (known after apply)
+ id = (known after apply)
+ region = "ap-northeast-1"
+ setting_id = "/ssm/documents/console/public-sharing-permission"
+ setting_value = "Disable"
+ status = (known after apply)
}
Plan: 2 to add, 0 to change, 0 to destroy.
Terraform Apply後にブロック設定がオンになることをマネジメントコンソールで確認
Systems Manager > ドキュメント > 詳細設定
SSMドキュメントのパブリック共有ブロックがオンになりました!
おわりに
TerraformでSSM.7対応した記事はなさそうだったので書いてみました。どなたかの参考になれば幸いです!
この記事は私が書きました
松原 唯介
記事一覧2024年4月入社 サービスG所属
