
多くの企業で活用されているシングルサインオンには、いくつかの方式が存在します。
それぞれ一長一短の特徴がありますが、現在主流となっているSAML方式は特に仕組みを理解しておきたい方式のひとつです。
多くのクラウドサービスを活用する現代のビジネス環境において、SAML方式は非常に使いやすい方式であると言えます。
この記事では、SAMLの基本的な概要や認証フロー、メリット・デメリットを紹介します。
SAMLとは
シングルサインオンを実現するための仕組みのひとつがSAML(Security Assertion Markup Language)です。
※この記事では、以下の本文中でシングルサインオンを「SSO」と表記します。
SAMLの特徴
SAMLは2002年にXMLの標準化団体であるOASISによって策定され、2005年に改訂されたバージョン2.0が現在の主流となっています。
統一されたSSOの仕組みが策定されたことにより、SAMLの仕様に合わせてSSO機能が実装されているシステム間でのSSOの実現が可能となりました。
ドメインが異なるサービス間でユーザー認証を行なうために、クラウド上で認証システムを動作させることがSAMLの特徴と言えます。
クラウドサービスの活用が急速に広がっている現代では、特にSaaSサービスの認証をSSO化するために多くの企業が利用しています。
複数存在するSSOの方式の中で、クラウドサービスのSSO化に特化しているとも言えるでしょう。
SAMLは現在主流と言える方式であり、対応しているサービスも比較的多くあります。
SAMLによる認証フロー

SAML方式はどのような仕組みでシングルサインオンを実現しているのでしょうか。
SAML認証の要素
ユーザー
SAML認証を行なう利用者を指します。
シングルサインオンを用いてシステムへログインするユーザーです。
Identity Provider(IdP)
認証情報を管理、提供するシステムです。
一般的にクラウドサービスとして提供されており、Microsoft社が提供するAzure ADやGoogle社が提供するCloud Identityなど、大手ベンダーからも提供されています。
Service Provider(SP)
認証情報を利用するSaaS等のサービスを指します。
SPを起点としたログイン
ユーザーがSPへアクセスし、SSOによるログインを行なうパターンです。
その場合の認証フローを示します。
1. ユーザーがSPへアクセスする
2. SPがIdPへ認証のリクエストを行なう
3. ユーザーがIdPでログイン作業を行なう
4. 認証に成功した情報をIdPからユーザーへ送信する
5. ユーザーからSPへ認証情報を送信する
6. 認証が完了し、SPのサービス画面がユーザーに表示される
IdPを起点としたログイン
ユーザーがIdPのポータルやランチャーへアクセスし、SSOによるログインを行なうパターンの認証フローです。
1. ユーザーがIdPへアクセスし、ログイン作業を行なう
2. 認証に成功したら、IdPのサービス画面がユーザーに表示される
3. SSOに対応しているSPをIdPのサービス画面から選択する
4. IdPの認証情報を利用して、選択したSPへのログインが行なわれる
SAMLによるSSOを実現するためには、ログイン対象のサービス側がSAML方式に対応している必要があります。
SAMLのシングルサインオン(SSO)導入におけるメリット・デメリット

SAMLのSSO導入におけるメリット・デメリットを解説します。
メリット
クラウドサービスの連携
SAMLに対応したクラウドサービスであれば、SSOの対象とすることが可能です。
一度SAMLのSSO環境を構築すれば手軽にクラウドサービスをSSO化できるため、管理者の負担も少ないと言えるでしょう。
アカウント情報自体が削減される
IdPが発行する認証情報を利用してSPへのログインが行なわれるため、アカウントの数自体が削減されます。
サービス個別のアカウントを作成する必要がなくなり、管理者と利用者双方の工数削減に繋がります。
セキュリティの強化
ログイン作業の手間が削減されるため、1度のログインを強固な方法にすることも検討しやすくなります。
例えば、認証をIDとパスワードだけではなく顔認証とすることが考えられます。
顔認証はカメラに顔をかざすだけで認証が行なわれるため、ログインの手間をさらに削減することが可能です。
顔認証に利用する顔情報は偽装が極めて困難であり、文字情報が漏洩した時点で不正アクセスのリスクが急増してしまうIDとパスワードの方式と比較して、強固な認証方式と言えるでしょう。
パソコンやスマホに搭載されているカメラでも、顔認証を利用することが可能です。
SSOと併せて検討すると良いでしょう。
デメリット
未対応のサービスでは使えない
SAMLでSSOを行なうには、サービス側がSAMLに対応している必要があります。
サービス利用者側の設定ではなく、サービス自体がSAMLに対応する必要があるため、SAMLに未対応のサービスはSSO対象とすることはできません。
SAMLによるSSOを既に導入している場合は、利用したいクラウドサービスがあってもSAMLに対応していないため導入を躊躇してしまうケースもあります。
管理者がSAMLについての理解を深める必要がある
個別にサービスへログインする場合とSAMLによるSSOを行なう場合では、認証の仕組みが大きく異なります。
何らかの障害や不具合が発生し、ログインが上手くいかない場合に、管理者がSAMLの仕組みを理解していなければ、復旧が困難になってしまうリスクもあるでしょう。
SSOでのログインが行なえないと、複数のサービスが利用不可となってしまい業務に大きな影響を与えてしまう懸念もあります。
メリット・デメリットを理解した上でSAML方式のSSOを導入しましょう。
クラウドサービスを多用するならSAMLの検討を
紹介したように、SAML認証は複数のクラウドサービスを活用するのであれば有力な選択肢となる方式と言えます。
統一された規格であるため、今後登場するクラウドサービスも、SAMLに対応している可能性は高いと考えられるでしょう。
また、方式に限らずSSOではログイン作業の回数が削減されます。
そのため、ログイン作業をこれまで以上に強固な方法に変更することはSSOの利便性とセキュリティを高める有効なアプローチです。
近年では生体認証が一般的に利用されており、その中でも顔認証はパソコンやスマホなどのデバイスに標準搭載されているインカメラで利用することができます。
マスクやサングラスを着用していても認証可能な製品も登場しているため、認証の手間は最低限まで抑えられていると言えるのではないでしょうか。
強固なログイン方法の実現を目指すのであれば、ぜひ顔認証ログインをご検討ください。