0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SendGridのTeammate管理をAWSからのSSOログイン+Terraformで効率化した

0
Last updated at Posted at 2026-03-05

はじめに

トラストバンク SREグループの @kgkukoaoisi です。

SendGridのTeammate管理について、
SubUserの数だけログインを繰り返してTeammateを追加したり、
削除するときはどのアカウントに対象のTeammateがいるか全部見て回ったり、
だんだんしんどくなってきたので管理方法を見直しました。

この記事では、AWS Identity CenterとのSSO連携およびTerraformによるコード管理の設定手順・ハマりポイントを紹介します。

見直し前

親アカウントに複数のSubUserが存在しており、それぞれのアカウントにPassword Teammateを作成して運用していました。

課題

  • 追加時には各SubUserにログインしてTeammateを作成する必要あり
    • SubUserの数だけログイン操作の繰り返しが発生
    • SendGrid全体でTeammateのメールアドレスが一意という制約あり
      • 同じメールアドレスで複数Teammateを作れないので、SubUserごとにエイリアスアドレスを使い分け
      • Teammateが増えるほどID/パスワード/2FAの管理コスト増
  • Teammateの情報をスプレッドシートなどで一元管理していない
    • 削除時には親アカウントと全SubUserを巡回して対象Teammateを探す必要あり

方針&ゴール

  • AWS Identity CenterをIdentity Provider(IdP)としてSendGridへSSOログイン
    • 親アカウントにSSO Teammateを作成し、そのTeammateに対して各SubUserへの権限を設定
    • PW Teammateだとこの運用は難しそうだったのでSSO一択
  • TerraformでSSO Teammateを管理
    • 誰がどのようなTeammateを持っているか、SendGridにログインしなくてもコードを見ればわかるようになる
    • コード化しておくことで、生成AI(Claude Code)によるTeammate管理の自動化にもつながる

実装

SendGridとAWS Identity Centerを連携させる

参考文献

SendGrid公式ドキュメント

具体的な設定内容

注意点

アプリケーション開始 URL は空にしてください。ここにURLを入れてしまうとうまくログインできません。

スクリーンショット 2026-03-01 16.09.49.png

実際、ここにURLを入れてしまっており、ストレートにログインできず、ログイン画面に飛ばされてしまう現象とずっと格闘してました、、、

TerraformでSSO Teammateを管理

provider

残念ながら、SendGridが公式で出しているTerraform providerはないです。

ただ、有志の方が作っているものがいくつかあるので、比較しつつ今回のユースケースに合うものを探しました。
(Claudeに各providerを徹底的に比較してもらい、選択しました)

検討した結果、SSO Teammateの扱いやすさやアップデート頻度を加味して以下を使わせていただいています。

こちらの記事でprovider作成までの過程も公開されておりますので、見てみてください!

既存PW Teammateを移行

既存のPW TeammateをSSO Teammateへ移行する作業が必要です。

手順としては、

  1. 既存のPW Teammateを削除
  2. TerraformでSSO Teammateを作成

になります。

1と2の間にTeammateが消える時間が発生するので、事前に社内に告知して実施しました。
基本的にはスムーズにいったのですが、以下のパターンにハマるケースが厄介でした。

PW Teammate削除後もメールアドレスの重複エラーが出る

課題でも書きましたが、同一SendGridアカウント(親アカウント・SubUserを含む)内でTeammateのメールアドレスは一意である必要があります。
ダッシュボード上はPW Teammateを削除してもSendGridに残ってしまうケースがあるみたいです。

The email you are assigning as the SSO Teammate's username already belongs to an existing user.
You will need to delete the conflicting user or modify the existing username so that this SSO teammate can be created.

こちらではどうしようもできないのでSendGridのサポートに問い合わせましょう。

参考

さいごに

SSOにしたことでSubUserへのログイン操作を繰り返す必要がなくなり、
Terraformで管理するようにしたことでSendGridにログインしなくても
コードを見ればTeammateの状況が把握できるようになりました。

また、生成AIの登場でよりIaCの重要性が高くなったと個人的に感じています。
他のサービスについてもできるだけコードで管理できるよう、
引き続き環境を整備していこうと思います。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?