Closed6

AWS Support App in Slackの設定方法

ida.ida.

Global Servicesなのでprodやstagingと別にglobalディレクトリ新規作成
(route53やIAM等もここで良さそう)

main.tfはロールと実際のSlack連携のリソースを作成する。
※Slackの情報はvariables.tfに定義。こちらは環境によって違うので割愛

# ... プロバイダー定義やバックエンド設定を記載 ...

# IAM Role for AWS Support App
resource "aws_iam_role" "support_app_slack_role" {
  name = "AWSSupportSlackAppRole"

  assume_role_policy = jsonencode({
    Version = "2012-10-17"
    Statement = [
      {
        Effect = "Allow"
        Principal = {
          Service = "supportapp.amazonaws.com"
        }
        Action = "sts:AssumeRole"
      }
    ]
  })

  tags = {
    Name        = "AWSSupportSlackAppRole"
    Environment = "global"
    Purpose     = "Support App Slack Integration"
  }
}

# IAM Role Policy Attachment for AWS Support App
resource "aws_iam_role_policy_attachment" "support_app_policy" {
  role       = aws_iam_role.support_app_slack_role.name
  policy_arn = "arn:aws:iam::aws:policy/AWSSupportAppFullAccess"
}

# AWS Support App Slack Channel Configuration
resource "awscc_supportapp_slack_channel_configuration" "dev_notify_channel" {
  team_id                              = var.slack_team_id
  channel_id                           = var.slack_channel_id
  channel_name                         = var.slack_channel_name
  notify_on_create_or_reopen_case      = var.notify_on_create_or_reopen_case
  notify_on_add_correspondence_to_case = var.notify_on_add_correspondence_to_case
  notify_on_resolve_case               = var.notify_on_resolve_case
  notify_on_case_severity              = var.notify_on_case_severity
  channel_role_arn                     = aws_iam_role.support_app_slack_role.arn
}

作成後terraform applyを実施。無事完了した。

Hidden comment
ida.ida.

上記設定で無事利用できた。
使い方は/awssupport helpを実行すると確認できる。

このスクラップは3日前にクローズされました