Skip to content

infra(terraform)+docs: Phase 1 Sprint 0 — (tasks) Parameter Store + parameter-store.md(SMTP credsはproject別/platform値はSSM read)(S0Infra-7) #243

Description

@win2cot

Phase 1 Sprint 0 Infra-7: Parameter Store SecureString 整備 + parameter-store.md 横断 doc

概要

AWS SSM Parameter Store で secret / config を集中管理。同時に docs/architecture/parameter-store.md 新規作成(全 PS パラメータの階層 / 型 / アクセス許可者 / 回転ポリシー一覧、SSOT)。

詳細仕様: docs/architecture/infrastructure-plan.md v5 §6.1 / §3.5。

実装内容

A. Terraform module(infra/modules/parameter-store/)

パラメータ階層 用途
/tasks/<env>/db/password SecureString RDS root password(S1Infra-1 で IAM 認証移行後は不要化)
/tasks/<env>/keycloak/admin-password SecureString Keycloak admin user password
/tasks/<env>/keycloak/oauth-client-secret SecureString tasks-webapi の OAuth client secret
/tasks/<env>/keycloak/smtp-password SecureString Keycloak の SMTP メール送信用(初回パスワードリセット等、ADR-0006 派生)。SES SMTP interface 経由、IAM Access Key から生成
/tasks/<env>/app/jwt-issuer String OAuth2 issuer URL(https://auth-dev.tasks.dgz48.xyz/realms/tasks)
/tasks/<env>/app/tenant-default-id String デフォルト tenant id

アプリ側からのメール送信は SES API + IAM Task Role を推奨(password 不要)、別途 Sprint 1+ で実装。

B. parameter-store.md 横断 doc

  • docs/architecture/parameter-store.md 新規
  • セクション: 階層構造図 / パラメータ一覧表 / アクセス IAM Policy 例 / 初期セットアップ手順
  • 将来追加パラメータも本 doc に追記(SSOT)

C. environments/dev で呼び出し

  • infra/environments/dev/parameter-store.tf
  • 初回値は terraform.tfvars(gitignore)or var.tf placeholder

受入条件

  • terraform plan 差分なし
  • 上記 6 パラメータ created
  • docs/architecture/parameter-store.md 新規 commit、全パラメータ網羅
  • IAM Policy(ECS Task Role 用)を doc に例示

関連

備考

  • task-type: task-type:impl / 優先度: priority/p0 / area: area/infra + area/docs
  • claude-automation 推奨: 適用

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/docsdocs/ 配下のドキュメント(設計書・規約・ADR 等)変更area/infraAWS インフラ(ECS Fargate / RDS / Keycloak / IAM)変更claude:ready実装着手 OK のサイン。人が付与すると実装 Claude が起動priority/p0Critical / Blocker。本番影響あり、または他作業がブロックされるtask-type:implコード実装が主体のタスク

    Projects

    No projects

    Milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions