もりはやメモφ(・ω・ )

ITとか読書感想文とか

SSO&JIT Provisioningを有効にしたDatadogへ、招待中のユーザがログインできなかった話

タイトルの通りだったのですが、結構ハマったのでメモしておきます。

結論を書いておくと、すでに招待中( Invite Pending ) のユーザは SAML で JIT ログインできませんので一度削除しました、という話です。


前提

Datadogで Single Sign On With SAML の機能を、AWS SSO と連携して運用しています。 特に Just in time (JIT) provisioning 機能は Datadog に存在しないユーザであっても、SAML ログインをしようとしたタイミングで存在しなければ作成してくれる素晴らしい機能として重宝していました。

docs.datadoghq.com

aws.amazon.com

突然のヘルプコール

この運用は2ヶ月ほど続いていてそろそろ安定してるなと思った矢先に、Slackでヘルプの依頼が飛んできました。

「AWS SSO を利用して、Datadog ログインしようとしましたができません。今回が初めてのログインです。エラーは以下の画面です!!」

f:id:morihaya:20210819235454p:plain
error of datadog loin via aws sso

Arf.
Unknown User
There is no active account for xxxxxx at the org with id xxxxxx .

これを受けて以下を調査しましたが、問題はありませんでした。

  • AWS SSO の Application 設定で、Datadog を許可している AD Group
  • 上記 AD Group に、該当ユーザが所属していること
  • 該当ユーザと同じ部署( AD Group ) に所属している他の方は問題なく Datadog へログインできている
  • 該当ユーザの AWS SSO のポータルには、ちゃんと Datadog へログインするためのアイコンが表示されている

ここまで調べて、これは AWS SSO ではなく Datadog 側に何か問題がありそうだと考え Datadog のユーザリストを検索しました。 すると該当ユーザが招待中( Invite Pending ) ステータスで存在していることがわかり、これを一旦削除することで無事に JIT Provisiong によるログインができました。

f:id:morihaya:20210820000154p:plain
invite pending on datadog

まとめ

わかってみれば簡単な話で以下の条件が重なってハマっていたのでした。

  • ユーザはすでに作成されているため JIT with SAML によるユーザ作成は行われない
  • Invite Pending ステータスであるため、SAML ログインもできない

これは、AWS SSO を運用する前の Datadog はメールによる認証を行なっていた名残で、その頃に招待を受けたが承認せずにいたユーザがはまり込む罠といえます。 今回を機に全ての Datadog Organization について Invite Pending 状態のユーザがいないかをチェックして削除しました。(極少数でしたが...)

みなさんもお気をつけくださいませー