ごきげんよう、IDチームのわかなです!
良かれと思って設定したのに、思わぬインシデントに繋がってしまった・・・
そんな経験、ありませんか?
IdPはID管理、ひいては組織のセキュリティ全体の要です。だからこそ、設定を一つ誤るだけで、広範囲に深刻な影響が及ぶ可能性があります。
今回は、IdPの運用で特にインシデントに繋がりやすい「SSO」と「プロビジョニング」の設定に焦点を当て、具体的な勘所をご紹介します。
【第一の罠】SSO設定:そのログイン、誰のアカウントですか?
SSO設定はIdP運用の基本ですが、ここに落とし穴があります。
ログイン属性(アトリビュート)の不一致
SSOを設定する際、IdPと連携先SaaSの間で「どの情報を使ってユーザーを特定するか」を取り決めます。これをログイン属性(アトリビュート)のマッピングと呼びます。
多くのSaaSはメールアドレスをユーザー名(NameID)として利用しますが、SaaSによっては社員番号やuserPrincipalName
など、別の属性を要求する場合があります。
ここのマッピングを間違えると、
- 意図しないアカウントでログインしてしまう(同姓同名の別人など)
- ユーザーが見つからず、ログインエラーになる
- 既存のアカウントとは別に、新しいアカウントが作られてしまうといったインシデントに直結します。
まずは連携先SaaSの仕様書をよく読み、「どの属性を」「どのフォーマットで」送る必要があるのかを正確に把握することが極めて重要です。
安全な本番移行のために
いきなり全社員が使う本番環境で設定を変更するのは非常に危険です。
- テスト用と本番用のアプリケーションを用意
- IdP上に、同じSaaSに対して「テスト用」「本番用」の2つのアプリケーション設定を作成します。
- 日中(業務時間内):テスト用アプリを使い、少数のテストユーザーを対象に設定変更や動作確認を徹底的に行います。
- 深夜・休日(業務時間外):テストで問題がなかった設定を、慎重に本番用アプリに反映します。これにより、万が一問題が発生しても、影響を最小限に抑えることができます。
- IdP上に、同じSaaSに対して「テスト用」「本番用」の2つのアプリケーション設定を作成します。
新規導入SaaSとの連携ステップ
- まずはSSOから
- 最初からプロビジョニングまで完璧に設定しようとせず、まずは「SSOで正しくログインできること」のみを確認します。
- 権限は最小限で
- 連携するSaaS側で、IdPから連携されたユーザーに付与する権限を事前に設計し、最小限の権限からスタートしましょう。
【第二の罠】Provisioning設定:意図しないアカウント操作を防ぐ
ユーザーの入退社や異動に伴うアカウント管理を自動化するプロビジョニングは便利ですが、設定を誤ると大惨事を招きかねません。
JITとSCIMの使い分け
- JIT(Just-in-Time)プロビジョニング
- 初回ログイン時にアカウントを自動作成します。手軽ですが、退職者のアカウントがSaaS側に残り続けるなど、意図しないアカウントが放置されるリスクがあります。
- SCIM(System for Cross-domain Identity Management)プロビジョニング
- IdPとSaaS間でユーザー情報を同期(作成・更新・削除)します。より厳密なライフサイクル管理が可能ですが、設定が複雑になる場合があります。
- 使い分けのポイント
- まずはJITでスモールスタートし、運用の習熟度やSaaSの重要度に応じてSCIMへ移行するのがおすすめです。
安全な導入・変更手順
- 初動は必ずテストユーザーから
- いきなり全社適用はせず、影響範囲の少ないテストユーザーや情報システム部門のメンバーから有効化し、意図通りに動作(作成、更新、削除)するかを確認します。
- 実施は深夜・休日に
- 万が一、意図しない大量のユーザー削除などが発生した場合に備え、必ず業務影響のない時間帯に実施しましょう。
- ツールごとの挙動の違いを理解する
- プロビジョニングで参照する属性は、SaaSによって異なります。あるツールは
userName
を参照し、別のツールはemail
を参照するなど、仕様は様々です。場合によっては、IdP側で値を加工したり、固定値で上書き(オーバーライド)したりといった細かい設定が必要になることもあります。
- プロビジョニングで参照する属性は、SaaSによって異なります。あるツールは
【応用編】MDM/SASE連携:自分を締め出すな!
デバイストラストなど、MDMやSASEとIdPを連携させてアクセスポリシーを強化する際は、特に慎重な操作が求められます。
- アクセスポリシーの変更は必ず業務時間外に
- 設定を一つ間違えるだけで、管理者自身を含む全ユーザーがすべてのSaaSにアクセスできなくなる可能性があります。この種の「自分締め出し」インシデントは絶対に避けなければなりません。
- Entra IDの場合はレポート専用モードを活用しよう
- 特にMicrosoft Entra IDで条件付きアクセスポリシーを設定する場合、設定された条件に合致すると容赦なく適用されるため、テストが不十分な場合、管理者自身や全ユーザーをシステムから意図せず締め出してしまう「自分締め出し」のリスクが特に高いと言えます。ポリシーを有効化(実装)する前に、必ずレポート専用モードを活用しましょう。
- 特にMicrosoft Entra IDで条件付きアクセスポリシーを設定する場合、設定された条件に合致すると容赦なく適用されるため、テストが不十分な場合、管理者自身や全ユーザーをシステムから意図せず締め出してしまう「自分締め出し」のリスクが特に高いと言えます。ポリシーを有効化(実装)する前に、必ずレポート専用モードを活用しましょう。
- Entra IDの場合はレポート専用モードを活用しよう
- 設定を一つ間違えるだけで、管理者自身を含む全ユーザーがすべてのSaaSにアクセスできなくなる可能性があります。この種の「自分締め出し」インシデントは絶対に避けなければなりません。
- テスト用のグループと検証端末は必須
- ポリシーを適用するための「テストアカウント用グループ」を必ず作成し、そこに所属させたユーザーと検証端末で、ポリシーが意図通りに動作することを何度も確認してから、適用範囲を広げましょう。
- デバイストラストの設定自体(証明書の配布など)は業務時間内でも可能ですが、アクセスを制限するポリシーの有効化は必ず業務時間外に行いましょう。
- ポリシーを適用するための「テストアカウント用グループ」を必ず作成し、そこに所属させたユーザーと検証端末で、ポリシーが意図通りに動作することを何度も確認してから、適用範囲を広げましょう。
全体を通して心掛けること
- ドキュメントを残す
- 「なぜこの設定にしたのか」という理由や背景、参考にしたURLなどを必ず記録に残しましょう。未来の自分や後任者を助けます。
- 定期的な棚卸し
- 利用されなくなったテスト用アプリやアクセスポリシールールは、セキュリティホールになり得ます。四半期に一度など、定期的に設定を見直し、不要なものは削除しましょう。
- 公式ドキュメントとコミュニティを活用する
- 困ったときは、まず公式ドキュメントにあたるのが鉄則です。また、ユーザーコミュニティで同じ課題を解決した先人がいないか探すのも非常に有効です。
まとめ
本記事では、IdP設定におけるインシデントを防ぐための勘所をご紹介しました。
- SSO設定:ログイン属性のマッピングを正確に把握し、テスト用アプリで安全に移行する
- Provisioning設定:JITとSCIMを使い分け、テストユーザーからスモールスタートする
- MDM/SASE連携:アクセスポリシーの変更は必ず業務時間外に行い、自分を締め出さない
- 運用:ドキュメント化と定期的な棚卸しを習慣づける
この記事が、皆様の安全なID管理業務のヒントになれば幸いです!