SAML とは?
業界標準のプロトコルである Security Assertion Markup Language (SAML) によって、どのようにセキュリティ対策を強化するとともにサインイン エクスペリエンスを向上させることができるかを学びましょう。
SAML の定義
SAML とは、1 組の資格情報を使用して 1 回サインインすれば複数のアプリケーションにアクセスできるようにするための基盤テクノロジです。サービス プロバイダーが運営するサイト、サービス、またはアプリへのアクセスを希望するユーザーがサインインするときに、ID プロバイダー (たとえば Microsoft Entra ID) がそのユーザーを確認してから、SAML を使用してその認証データをサービス プロバイダーに渡します。
SAML の用途
SAML は、企業のセキュリティを強化するとともに従業員、パートナー、顧客のサインイン プロセスをシンプルにするのに役立ちます。これを使用すると、シングル サインオンが可能になります。つまり、1 つのユーザー名とパスワードを使用して複数のサイト、サービス、アプリにアクセスすることができます。 記憶が必要なパスワードの数が少なくなれば、人々にとって便利なだけでなく、パスワードが盗まれるリスクも縮小します。また、組織が使用する SAML 対応のアプリすべての認証に関するセキュリティ標準を設定することもできます。 たとえば、オンプレミスのネットワークやアプリ (Salesforce、Concur、Adobe など) にアクセスするユーザーに、最初に多要素認証を要求することができます。
SAML は、組織が次のようなユース ケースに対処するのに役立ちます。
ID およびアクセス管理の統合:
認証と認可を 1 つのシステムで管理するので、IT チームがユーザーのプロビジョニングと ID エンタイトルメントに費やす時間を大幅に短縮できます。
ゼロ トラストを可能にする:
ゼロ トラスト セキュリティ戦略では、組織がすべてのアクセス要求を確認することと、機密情報へのアクセスを必要性のある人だけに制限することが必須となります。 SAML を使用すると、多要素認証や条件付きアクセスなどのポリシーを、組織で使用されるすべてのアプリに対して設定することができます。また、より厳格なセキュリティ対策も実施できるようになります。たとえば、ユーザーの行動、デバイス、または場所に基づいてリスクが高まったと判断されたときにパスワードのリセットを強制します。
従業員エクスペリエンスを豊かにする:
従業員のためにアクセスをシンプルにすることに加えて、IT チームはサインイン ページをブランディングしてすべてのアプリでエクスペリエンスを統一することができます。また、セルフサービスでパスワードを簡単にリセットできるので、従業員の時間の節約になります。
SAML プロバイダーとは?
SAML プロバイダーは 1 つのシステムであり、ID の認証と認可のデータを他のプロバイダーと共有します。SAML プロバイダーには、次の 2 つの種類があります。
- ID プロバイダー: ユーザーの認証と認可を行います。 ユーザーが資格情報を入力するためのサインイン ページを用意します。また、セキュリティ ポリシーを施行します。たとえば、多要素認証やパスワードのリセットを要求します。ユーザーが認可されると、ID プロバイダーはそのデータをサービス プロバイダーに渡します。
- サービス プロバイダー: 人々がアクセスしようとするアプリや Web サイトのことです。 個々のアプリに人々をサインインさせる代わりに、サービス プロバイダーは SAML 認可を信頼するように自身のソリューションを構成し、ID の確認とアクセスの認可は ID プロバイダーに任せます。
SAML 認証のしくみ
SAML 認証では、サービス プロバイダーと ID プロバイダーがサインインとユーザー データを共有します。この目的は、アクセスを要求している人が認証済みであることの確認です。これは一般的に、次の手順で行われます。
- 従業員は作業を開始するために、ID プロバイダーが用意したログイン ページを使ってサインインします。
- ID プロバイダーは、さまざまな認証情報の組み合わせ (たとえばユーザー名、パスワード、PIN、デバイス、または生体認証データ) を確認することで、その従業員が自称するとおりの人物であることを検証します。
- 従業員は、サービス プロバイダーのアプリ (たとえば Microsoft Word や Workday) を起動します。
- その従業員がそのアプリへのアクセスを認可されていることを確認するために、サービス プロバイダーは ID プロバイダーと通信します。
- ID プロバイダーから、認可と認証が送り返されます。
- 従業員はそのアプリに、2 回目のサインインは不要でアクセスできます。
SAML アサーションとは?
SAML アサーションは、サインインする人が認証済みであることをサービス プロバイダーに対して認めるデータが記録されている XML ドキュメントです。
次の 3 つの種類があります。
- 認証アサーション: そのユーザーが誰であるかを表します。この中には、その人がサインインした時間と、使用した認証の種類 (たとえばパスワードや多要素認証) も含まれます。
- 属性アサーション: SAML トークンをプロバイダーに渡します。 このアサーションには、ユーザーに関する特定のデータが含まれます。
- 認可判断アサーション: そのユーザーが認証されたか、それとも資格情報の問題や、そのサービスを利用する許可がないなどの理由で拒否されたかをサービス プロバイダーに伝えます。
SAML と OAuth
SAML と OAuth はどちらも、複数のサービスに個別にサインインすることなく簡単にアクセスできるようにするものですが、この 2 つのプロトコルはそれぞれ異なる技術とプロセスを使用しています。SAML では、同じ資格情報を使用して複数のサービスにアクセスできるようにするために XML が使用されますが、OAuth では認可データの受け渡しに JWTまたは JavaScript Object Notation が使用されます。
OAuth では、サービスを利用する人が、そのサービスのための新しいユーザー名とパスワードを作成する代わりに、サードパーティの認可 (たとえば自分の Google や Facebook のアカウント) を使用してサービスにサインインすることを選択します。認可の情報が伝達されますが、ユーザーのパスワードは保護されます。
企業における SAML の役割
SAML は、企業がハイブリッド ワークプレイスで生産性とセキュリティの両方を向上できるようにするのに役立ちます。リモート ワークが増えているため、リモート ワーカーが会社のリソースにどこからでも簡単にアクセスできるようにすることが重要ですが、適切なセキュリティ制御が実施されていなければ、アクセスの簡単さが侵害のリスクを高めることになります。SAML を利用すると、組織が従業員のサインイン プロセスを効率化すると同時に、従業員が使用するアプリに対して多要素認証や条件付きアクセスなどの強力なポリシーを適用することができます。
組織での導入を開始するには、ID プロバイダー ソリューションを購入する必要がありますが、その一例が Microsoft Entra ID です。Microsoft Entra ID では、組み込みのセキュリティでユーザーとデータが保護されることに加えて、ID の管理を単一のソリューションにまとめることができます。セルフサービスとシングル サインオンで、従業員が簡単かつ便利に生産性を維持することができます。さらに Microsoft Entra ID には、Zoom、DocuSign、SAP Concur、Workday、アマゾン ウェブ サービス (AWS) など、多数のアプリとの SAML 統合があらかじめ組み込まれています。
Microsoft Security についてさらに学ぶ
よく寄せられる質問
-
SAML には、以下の構成要素があります。
- ID サービス プロバイダー: ユーザーの認証と認可を行います。 ユーザーが資格情報を入力するためのサインイン ページを用意するとともに、セキュリティ ポリシーを施行します。たとえば、多要素認証やパスワードのリセットを必須にします。ユーザーが認可されると、そのデータが ID プロバイダーからサービス プロバイダーに渡されます。
- サービス プロバイダー: 人々がアクセスしようとするアプリや Web サイトのことです。 個々のアプリに人々をサインインさせる代わりに、サービス プロバイダーは SAML 認可を信頼するように自身のソリューションを構成し、ID の確認とアクセスの認可は ID プロバイダーに任せます。
- メタデータ: ID プロバイダーとサービス プロバイダーがアサーションをどのように交換するかを表します。これにはエンドポイントとテクノロジも含まれます。
- アサーション: サインインする人が認証済みであることをサービス プロバイダーに対して証明する認証データです。
- 署名証明書: ID プロバイダーとサービス プロバイダーの間の信頼を確立するために、アサーションがその 2 つのプロバイダー間を移動する間に操作されていないことを証明します。
- システム クロック: サービス プロバイダーと ID プロバイダーの時間が同じであることを確認します。この目的は、リプレイ攻撃から保護することです。
- ID サービス プロバイダー: ユーザーの認証と認可を行います。 ユーザーが資格情報を入力するためのサインイン ページを用意するとともに、セキュリティ ポリシーを施行します。たとえば、多要素認証やパスワードのリセットを必須にします。ユーザーが認可されると、そのデータが ID プロバイダーからサービス プロバイダーに渡されます。
-
SAML には、組織、その従業員、およびパートナーにとって次のような利点があります。
- ユーザー エクスペリエンスの向上。SAML でシングル サインオンが可能になります。つまり、組織の従業員とパートナーは 1 回サインインすれば自分に必要なすべてのアプリにアクセスできるようになります。 これで作業がしやすくなり、利便性も向上します。覚える必要のあるパスワードが少なくなり、ツールを切り替えるたびにサインインする必要がなくなるからです。
- セキュリティの向上。パスワードの数が少なくなるため、アカウント侵害のリスクが縮小します。 さらに、セキュリティ チームは SAML を使用して強力なセキュリティ ポリシーをすべてのアプリに適用することができます。たとえば、サインイン時に多要素認証を必須にすることや、条件付きアクセス ポリシーを適用して、ユーザーがアクセスできるアプリとデータを制限することができます。
- 統合型の管理。SAML を使用すると、ID とセキュリティ ポリシーの管理を 1 つのソリューションでできるようになります。つまり、アプリごとに個別の管理コンソールを使用する必要はありません。 これで、ユーザー プロビジョニングが大幅にシンプルになります。
- ユーザー エクスペリエンスの向上。SAML でシングル サインオンが可能になります。つまり、組織の従業員とパートナーは 1 回サインインすれば自分に必要なすべてのアプリにアクセスできるようになります。 これで作業がしやすくなり、利便性も向上します。覚える必要のあるパスワードが少なくなり、ツールを切り替えるたびにサインインする必要がなくなるからです。
-
SAML は、ID プロバイダー (たとえば Microsoft Entra ID) からサービス プロバイダー (たとえば SaaS アプリ) に認証データを渡すための、オープン標準の XML 技術です。
シングル サインオンとは、一度サインインすれば複数の異なる Web サイトやアプリにアクセスできるようになることです。SAML でシングル サインオンを実現できますが、他のテクノロジでシングル サインオンをデプロイすることもできます。 -
LDAP (Lightweight Directory Access Protocol) は、ユーザー ID の認証と認可に使用される ID 管理プロトコルです。多くのサービス プロバイダーによってサポートされているため、LDAP はシングル サインオンに適したソリューションと言えますが、やや古いテクノロジのため、Web アプリケーションではあまりうまく機能しません。
これよりも新しいテクノロジである SAML は、Web とクラウドの多数のアプリケーションで利用できるため、中央集中型 ID 管理のためのより一般的な選択肢となっています。
-
多要素認証 (MFA) は、本人であることを証明するために複数の要素を使用することをユーザーに要求するセキュリティ対策です。一般的には、その個人が持っているもの (たとえばデバイス) に加えて、その人が知っているもの (たとえばパスワードや PIN) を要求します。SAML を利用すると、技術チームが多要素認証を複数の Web サイトやアプリに適用することができます。SAML と統合されたすべてのアプリにこのレベルの認証を適用することも、多要素認証を一部のアプリだけに適用して他のアプリには適用しないことも可能です。
Microsoft Security をフォロー