SAMLとは?認証の仕組みからシングルサインオンのメリットまでわかりやすく解説

シングルサインオン

シングルサインオン製品を調べていると「SAML」という用語を目にする機会が多くあります。SAMLは、シングルサインオン製品を選定する上でも知っておきたい用語です。この記事では、そんなSAMLの概要と認証の仕組み、SAML対応のシングルサインオンを導入するメリットについて解説します。

SAMLとは

SAML(サムル)とは「Security Assertion Markup Language」の略で、XML形式のマークアップ言語の一種です。SAMLは、異なるドメイン(「XXX.com」の「XXX」の部分)同士で認証情報の受け渡しに使うために定められました。

SAMLの仕様は、シングルサインオンを実現する上でも便利なので、現在ではシングルサインオンのプロトコル(規格)の一種としても利用されています。シングルサインオンとは、1回の認証で他のシステムもログインせずに使える仕組みです。

従来、シングルサインオンは外部サービスとの連携が難しい点が問題でした。社内システムはシングルサインオンで1回ログインすればいいのですが、クラウドサービスは毎回ログインする不便さがありました。

SAMLが登場し、シングルサインオンのプロトコルに採用されたことにより、クラウドサービスも含めたシングルサインオンの実現が可能となったのです。

SAMLによる認証の仕組み

SAMLによる認証の仕組みについて、関係者と流れを整理しながら解説します。

1、IdP・ユーザー・SPとは

SAMLによる認証には、IdP・ユーザー・SPという3者が関わります。

  • IdP(Identity Provider):認証処理を提供するサービス
  • ユーザー:SPの利用者
  • SP(Service Provider):認証情報を利用するアプリケーションサービス

IdPは、シングルサインオン製品に相当します。SPは、シングルサインオンを適用したいオンプレミスのシステムやクラウドサービスのことです。3者の役割を念頭に置いて、SAMLによる認証の流れを見ていきましょう。

2、SAMLによる認証の流れ

SAMLによる認証の流れを以下にまとめました。

No 動作者 内容
1 ユーザー ログインするためにSPへアクセス
2 SP SAML認証要求を作成
3 SP IdPへ送信
4 IdP SAML認証要求を受信
5 IdP 登録ユーザーかどうかを確認(認証)
6 IdP SAML認証応答を作成
7 IdP SAML認証応答をSPへ送信
8 SP SAML認証応答よりユーザーのログインを許可あるいは拒否

ユーザーがいつも利用しているSPにアクセスすると、SPとIdP間で認証をするかどうかのやり取りが発生します。

SAML認証要求を受信したIdPは、その都度ユーザーが登録ユーザーかどうか認証チェックを行います。認証するかどうかの判断は組織単位で決まるため、ユーザーに対して同意を求めることなく処理が進む点が特徴です。

3、SAMLとシングルサインオンの関係

SAMLは、ドメインを超えて認証情報をやり取りできるフォーマットを提供します。SAMLに準拠していれば、IdP(認証情報提供サービス)とSP(アプリケーションサービス)を組み合わせてシングルサインオンができる環境を構築可能です。

シングルサインオン製品はIdPの役割を果たします。製品を選ぶ際、SAMLに準拠している製品を選べば、同じくSAMLに対応しているクラウドサービスや社内システムをすべてシングルサインオン利用可能にできます。

SAMLとOAuth・OpenID Connectとの違い

SAMLと同じような認証の仕組みである、OAuthやOpenID Connectとの違いはどこにあるでしょうか。SAMLの理解を深めるために、これらとの違いについても確認します。

1、OAuthとの違い

SAMLの場合は、認証要求があると、要求をしてきたユーザーがなりすましでないかどうかを検証してから認証応答を作成します。なりすまし検証は、登録しているユーザーと一致するかどうかで行います。

一方OAuthは、すでに信頼関係を構築したシステム同士で認証情報を引き渡します。単純に認証情報を渡すだけで、SAMLのようにユーザーのチェックは行いません。なりすましの検証を行う分、SAMLはOAuthよりもセキュリティが高いと言えます。

2、OpenID Connectとの違い

OpenID Connectは、さまざまなWebサービスなどの認証をひとつのIDでシームレスに実行する仕組みで、シングルサインオンの規格のひとつです。連携する際はユーザーに同意を求めるという動きが入る点に特徴があります。

OpenID ConnectはSAMLと似ていますが、SAMLはユーザーの同意なしで連携する・しないを判断する点が相違点です。

SAMLの概要と仕組み、OAuth・OpenID Connectとの違いについて見てきました。これまでの内容を踏まえて、SAMLを利用したシングルサインオン導入のメリットとは何かを確認しましょう。

SAMLを利用したシングルサインオン導入のメリット4つ

SAMLを使ったシングルサインオンを導入することで、どのようなメリットを得られるのかについて解説します。

1、導入期間が短くコストが低い

シングルサインオンを実現するもっともシンプルな方法は、利用しているシステム全体のIDを統合して管理することです。しかしこの方法は、ID統合の仕組みをシステムとして開発するのに加えて既存システムのID管理部分にも改修が入ります。そのため、開発コストが高額になり、開発期間も長くかかります。

SAMLを用いたシングルサインオンなら、各システムのID管理の改修もあまり多くはなく、短期間・低コストでの導入が可能です。ただし、自社で利用しているオンプレミスのシステムやクラウドサービスが、SAMLに対応しているかどうかを事前に確認する必要はあります。

2、業務上の利便性向上

業務上の利便性向上は、シングルサインオンの導入効果の中でも特に大きなメリットです。オンプレミスのシステム・クラウドサービスのうち、SAMLに対応しているものすべてのシングルサインオンが可能になると、最初の1回だけログインすれば、使用するシステムを変えても、ログイン情報を入力する手間がなくなります。

業務上の利便性向上とはいっても「1回1回の認証情報入力は大した作業量ではない」と感じるかもしれません。しかし、従業員全体で考えると、シングルサインオンによって削減できる作業コストは膨大なものになります。

3、多要素認証との併用で高いセキュリティレベルを実現

SAMLは、ユーザーから認証要求が来ると、登録ユーザーかどうかを確認する認証処理が入るため、セキュリティ向上の効果があります。さらに、多要素認証と併用することで、さらに高いセキュリティレベルを実現できます。

4、今注目のIDaaSでも重要な役割を果たすSAML

IDaaS(Identity as a Service)とは、アイデンティティ管理をクラウド上で管理する、近年注目されているサービスです。クラウドやオンプレミスのID連携を可能とし、シングルサインオンや多要素認証も提供する総合的なID管理をクラウドサービスとして利用できます。

IDaaSが持つクラウドサービス間のID連携の仕組みは、フェデレーションと呼ばれます。このフェデレーションの認証プロトコルにはSAMLがよく利用されます。

SAMLのメリットを確認してシングルサインオンを導入しよう

SAMLとは、異なるドメイン間で認証情報をやり取りするために定められたXML形式のマークアップ言語であり、シングルサインオンの規格のひとつです。

ユーザーからの認証要求があると、登録ユーザーかどうかをチェックする工程があり、セキュリティの高い認証を可能とします。SAMLは次世代の統合ID管理サービスとして注目されるIDaaSでも利用されている規格であり、今後も重要性は増すでしょう。

社内システムやクラウドサービスをシングルサインオン化したい場合は、シングルサインオン製品の資料を入手して、SAML対応している製品を探してみてください。

タイトルとURLをコピーしました