SSOとフェデレーション
シングルサインオンプロトコルを理解します
「SSOとフェデレーション」はCoddyKit上の無料Cyber Security Academyレッスンです。 これはレッスン3/4です。 下記で完全なレッスンを無料で読むことができます。その後、ブラウザ内の組み込みコードエディタと24時間対応のAIチューターでハンズオン演習できます。 これはCyber Security Academy学習パスの一部であり、ウェブとCoddyKitアプリ全体で進捗が同期されます。 Cyber Security Academyコースには全4レッスンが含まれています。
SSOとは
シングルサインオン(SSO)を利用すると、ユーザーは一度認証するだけで、再度ログインすることなく複数のアプリケーションにアクセスできます。
ユーザー体験が向上し、セキュリティ制御も一元化できます。
アイデンティティプロバイダー
SSOでは、ユーザーを認証し、その身元を保証するアイデンティティプロバイダー(IdP)を利用します。
アプリケーションはサービスプロバイダー(SP)または依拠当事者と呼ばれ、パスワードを自ら扱うのではなく、IdPを信頼します。
SSOがセキュリティに役立つ理由
SSOには、次のようなリスク低減効果があります。
- ユーザーが使い回したり、漏えいさせたりするパスワードが減ります。
- MFAやポリシーを適用する場所を一つにできます。
- すべてのアプリでアクセスを即時に取り消せます。
フェデレーションとは
フェデレーションは、組織の境界を越えて信頼関係を広げる仕組みです。
ユーザーは、自分の所属するアイデンティティプロバイダーを使って、あるドメイン(たとえばパートナー企業)のアカウントから別のドメインのリソースにアクセスできます。
SAML
SAML(Security Assertion Markup Language)は、エンタープライズ向けSSOで広く使われているXMLベースの標準です。
IdPは、ユーザーの身元と属性を確認する署名付きのアサーションをSPに送信します。
OAuth 2.0
OAuth 2.0は認可フレームワークです。パスワードを共有することなく、アプリがユーザーに代わってリソースにアクセスするためのトークンを取得できます。
注意:OAuth単体で扱えるのは認可であり、アイデンティティではありません。
OpenID Connect
OpenID Connect(OIDC)は、OAuth 2.0上に構築された認証レイヤーです。
ユーザーの身元を証明するIDトークン(署名付きJWT)を追加するため、WebやモバイルのSSOで現代的な選択肢となっています。
IDトークン
OIDCのIDトークンは、ユーザーに関するクレームを含むJWTです。
{
'iss': 'https://idp.example.com',
'sub': 'user-1234',
'aud': 'my-app',
'email': 'alice@example.com',
'exp': 1735689600
}SSOログインの流れ
一般的なOIDCログインの流れは次のとおりです。
- アプリがユーザーをIdPにリダイレクトします。
- ユーザーが認証します(必要な場合はMFAも行います)。
- IdPがトークンを付けてユーザーをアプリにリダイレクトします。
- アプリがトークンを検証し、セッションを開始します。
プロトコルの選択
一般的な指針は次のとおりです。
- SAML:実績のあるエンタープライズアプリ。
- OIDC:最新のWeb、モバイル、API。
- OAuth 2.0:委任されたAPIアクセス(認可)。
フェデレーションのリスク
フェデレーションでは、IdPに信頼が集中します。IdPが侵害されると、接続されているすべてのアプリが危険にさらされます。
そのため、IdPを堅牢化して監視し、フィッシング耐性の高い強力なMFAで保護する必要があります。
簡単な確認
OAuth 2.0上に認証レイヤー(身元を証明するIDトークン)を追加する標準はどれでしょうか。
まとめ
SSOとフェデレーションについて学びました。
- IdPは、複数のアプリに対してユーザーを一度認証します。
- SAMLはエンタープライズに適しており、OIDC(OAuth 2.0上で動作)は最新のアプリに適しています。
- フェデレーションは組織間で信頼を広げますが、リスクがIdPに集中します。
次は、最小権限の原則について説明します。
よくある質問
「SSOとフェデレーション」レッスンは無料ですか?
はい。「SSOとフェデレーション」の完全なテキストはこのウェブで無料で読めます。インタラクティブに演習し(組み込みコードエディタと24時間対応のAIチューター)、Cyber Security Academyコースの残りをアンロックするには、CoddyKit PROにアップグレードしてください。 Cyber Security Academyコースには全4レッスンが含まれています。
「SSOとフェデレーション」で何を学びますか?
シングルサインオンプロトコルを理解します ブラウザで直接実行するハンズオンコードでCyber Security Academyを演習し、24時間対応のAIチューターがレッスンを進める中での質問に答えます。
Cyber Security Academyを始めるのに経験は必要ですか?
事前経験は必要ありません。CoddyKitのCyber Security Academyは初級者から上級者向けに構成されているため、ここから始めるか最初から始めて、自分のペースで進むことができます。 これはレッスン3/4です。
「SSOとフェデレーション」レッスンにはどのくらい時間がかかりますか?
ほとんどのCoddyKitレッスンは約5~10分かかります。各レッスンはコンパクトでインタラクティブなので、着実に進歩し、ウェブとアプリ全体で正確に前回の場所から再開できます。
このCyber Security Academyレッスンでコードを書いて実行できますか?
はい。すべてのCyber Security Academyレッスンに組み込みコードエディタが含まれているため、ブラウザでリアルコードを書いて実行し、即座のAIフィードバックを取得できます。ローカル設定は不要です。