SAMLとは?SSO(シングルサインオン)認証の仕組み・メリット
目次を閉じる
SAMLとは
SAMLとは、Security Assertion Markup Languageの略で、SSO(シングルサインオン)を実現する仕組みのひとつです。読み方は「サムル」またはそのまま「SAML」。SAMLは、OASISによって策定された異なるインターネットドメイン間でユーザー認証を行うための認証情報の規格です。つまり、SAMLはユーザーの認証情報をやり取りするルール・プロトコルを指しています。ちなみにSAML 2.0は、2005年にリリースされたバージョン2.0のSAMLです。
SAML認証の仕組み
SAML認証方式は、IdPとSPが情報をやり取りする際に、情報形式の変換を省く方式です。ユーザーはサーバーに一度だけログインすれば、SAML認証方式に対応しているサービスを利用できます。
ユーザーとSP、IdPの用語を解説した後に、あらためてSAML認証の流れを解説します。
ユーザーとは
ユーザーとは、SPと称されるクラウドサービスへログインしたい人をさします。たとえば、SalesforceやOneDriveへログインしたい方がこのユーザーに該当します。
ちなみに、ユーザーの識別子はNameIDと呼ばれます。SAML認証をする際、認証が成功するとNameIDを含む情報がSPに共有され、その後の認証が容易になります。
SPとは
SPとはService Providerの略で、SAML連携ではログインされるクラウドサービスをさします。SalesforceやOneDrice以外にも多くのクラウドサービスが存在しますが、これらクラウドサービス全般がこのSPに該当します。
また、EntityIDはSPを一意にさだめる識別子です。SAMLの仕様では、EntityIDがドメイン名を含むURLであることが推奨され、慣習としてEntityIDにはSAMLメタデータURLを使用します。
IdPとは
IdPとは、Identify Providerの略で認証情報を提供するシステムです。SPへログインしようと試みているユーザーが、以前登録したユーザーであるか確認し、結果をSPへ送ります。具体的なサービスの例は、OneLoginやGMOトラスト・ログインです。
SAML認証の流れ
IdPは、ユーザーがSPのサービスにアクセスしようとすると、SAMLアサーションと呼ばれるメッセージをSPに渡します。SAMLアサーションとは、認証情報やユーザー属性などの情報をさします。共有される情報の確実性のために、SAMLアプリケーションでは証明書を使用します。
- ユーザーはログインするためにSPへアクセスします
- SPはSAML認証要求を作成します
- SPはユーザーのアクセスをSAML認証要求とあわせてIdPへ送ります
- IdPはSAML認証要求を受け取って、適切なユーザーであるか確認します
- IdPはSAML認証応答を作成します。SAML認証応答には、SPへログインしたいユーザーが登録されているものか認証します
- SPは受け取ったSAML認証応答にもとづいて、ユーザーのログインを許可/拒否します
SSO(シングルサインオン)とSAML
SSOとは、1つのIDとパスワードで認証を行うことで、複数のWebサービスやクラウドサービスにアクセスできる仕組みをいいます。SAMLは、このSSOを実現するために必要不可欠な仕組みです。SSOの仕組みにはエージェント方式、リバースプロキシ方式、代理認証方式などがあります。
SSOを利用するには、各SPに適応した形式での認証が必要です。SAML認証はIdPをもって、サービスの特有の認証形式に対応。つまりSAML認証は、ユーザーを認証するIdPと各サービスが認証するSPをつなぐ橋であり、それゆえにSSOに必要不可欠な形式だといえます。
フェデレーション方式とは
フェデレーション方式とは、クラウドサービス間をパスワードの代わりにチケットと呼ばれる情報を受け渡しすることで、SSOを実現する方式です。「Office365」「Google Workspace」「Salesforce」「Box」など、多くの海外クラウドサービスが対応しています。フェデレーション方式に使えるプロトコルは標準化が進められていて、こちらで解説しているSAMLやOpenID Connectが使われています。
シングルログアウトとは
シングルログアウト(SLO)とは、ログアウトを開始したブラウザのすべてのユーザーセッションが一度に終了することです。権限のないユーザーがSPにアクセスできないようにします。しかしシングルログアウトを実行してもブラウザを複数開いているユーザーは、ログアウトを開始したブラウザのセッションだけで終了します。
SSOに関してもっとよく知りたい方はこちらもチェックしてください。SSOにおすすめの製品特徴も解説しています。
SAMLを使ったSSO導入のメリット
SAMLを使ったSSO導入のメリットを紹介します。
ユーザーの利便性向上
SSOを導入すれば、一度のユーザー認証で異なるサービスにログインできます。都度ユーザー認証を行う必要がないので、快適にサービスを利用できます。
セキュリティの向上
1つのIDとパスワードさえ管理してすればよいため、SAMLはセキュリティに強いといえます。一見すると、各サービスごとにパスワードを変更するほうがリスク分散につながるとも考えられるものの、実際には多くのパスワードを管理するコストが発生するため安全とはいえないのが現実です。
SAMLとOAuthの違い
SAMLとOAuthは、SAMLが認証するためのシステムであるのに対しに、OAuthは認可するためのシステムであるという違いがあります。誤解を恐れずにいえば、認証とはユーザーが登録されているアカウントと一致するか確かめること、認可とはアカウントを登録することです。
OAuthはユーザーの情報を登録、SAMLはログイン時にユーザー情報をチェックという点で両者は異なります。ちなみにOpenID Connectは、SAMLと似た技術で場面やサービスによって使い分けがなされます。
SAMLを理解して、SSOを活用しよう!
SSOを活用すればクラウドサービスをログインして利用するときの、手間やストレスを軽減できます。SSOを実現するための要素技術であるSAMLを理解し、SSOを活用しましょう。
BOXILとは
BOXIL(ボクシル)は企業のDXを支援する法人向けプラットフォームです。SaaS比較サイト「BOXIL SaaS」、ビジネスメディア「BOXIL Magazine」、YouTubeチャンネル「BOXIL CHANNEL」を通じて、ビジネスに役立つ情報を発信しています。
BOXIL会員(無料)になると次の特典が受け取れます。
- BOXIL Magazineの会員限定記事が読み放題!
- 「SaaS業界レポート」や「選び方ガイド」がダウンロードできる!
- 約800種類のビジネステンプレートが自由に使える!
BOXIL SaaSでは、SaaSやクラウドサービスの口コミを募集しています。あなたの体験が、サービス品質向上や、これから導入検討する企業の参考情報として役立ちます。
BOXIL SaaSへ掲載しませんか?
- リード獲得に強い法人向けSaaS比較・検索サイトNo.1※
- リードの従量課金で、安定的に新規顧客との接点を提供
- 累計1,200社以上の掲載実績があり、初めての比較サイト掲載でも安心
※ 日本マーケティングリサーチ機構調べ、調査概要:2021年5月期 ブランドのWEB比較印象調査