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?

【2025年最新版】SAML(Security Assertion Markup Language)についてざっくり解説。

Posted at

SAML(Security Assertion Markup Language)の概要

異なるドメイン間でユーザー認証情報をやり取りするためのXMLベースの標準規格である。
主にSSOの仕組みを実現するために利用され、企業や組織のクラウドサービス、Webアプリ間の認証認可に用いられている。

認証(Authentication)と認可(Authorization)の違い

項目 説明
認証(Authentication) ユーザーが「本当に本人なのか?」を確認すること
認可(Authorization) 認証されたユーザーが「何ができるか」「どのリソースにアクセス権限があるのか」を決定すること。所謂、管理者権限の割当やアクセス制御が認可であるといえる。

→SAMLは主に認証を担っている仕組みである。(厳密にいうと認可も一部サポートする。)つまり本人かどうかを確認するということ。

SAMLのメリット

・SSOによる利便性向上。
・セキュリティ強化。
・アクセス管理の一元化。

SAMLのデメリット

・設定が複雑。(XMLベースだから)
・モバイル対応が弱い。(SAMLはweb向け!)
・リアルタイムのセッション管理が困難。(SAMLにはトークンを動的に更新する仕組みがないので)

具体的な仕組み(SSOの流れ)

SAMLに出てくる3人の登場人物

名前 説明
ユーザー サービスを使いたい人 実世界の私達(学生、社会人など)
IdP(アイデンティティプロパイダー) ユーザーを確認するシステム Google,Azureなど
SP(サービスプロパイダー) 実際に使いたいサービス Gmail,AWSなど

IdP Initiated SSO(IdPからログインする場合)

これは、ログイン管理システムに入ってから各サービスを使うパターン(Google cloudをイメージしてもらうとわかりやすいと思います。まずはGoogle cloudにログインして任意のAPIを使ったり、クラウドサービス使ったり、、、というようなイメージ。)

1.ユーザーがIdPにログイン
→ (例:Google Cloudにログイン)

2.IdPが「この人はOK!」と判断
→ SAMLアサーション(証明書みたいなもの)を作る!

3.SAMLアサーションをSP(サービス)に渡す
→ (GmailやAWSなどに自動ログイン!)

SAMLアサーションの中身などを知りたい人向け!

このサイトめっちゃ分かりやすいです!

SP Initiated SSO(SPからログインする場合)

1.ユーザーがSPにログイン
→(例:Gmailのログインページを開く)

2.SPが「この人のIdPに確認しよう!」とIdPへリダイレクト
→(例:Googleが「この人、どこでログイン管理されてるんだ?」と探す)

3.IdPが「OK!」と判断して、SAMLアサーションをSPへ送る
→ (結果、Gmailにログインできる!)

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?