IdPとは
IdP(Identity Provider)とは、SAML認証での認証情報の提供者のことです。IDP(Intruder Detection & Protection)など、他の用語との誤用を防ぐためか、「d」を小文字で表記するのが普通です。
最近のクラウドサービスでは、SAML認証が使われることが多くなっています。クラウドサービスの内部に個別に認証情報を持つこともできますが、ユーザーにとってサービス毎に別々のパスワードを設定し管理するのは煩雑です。そのため、SAMLのような共通の認証プロトコルを使うことが増えています。SAML認証をサポートするクラウドサービスでは、利用者側でIdPを用意することで、様々なサービスの認証情報を一元管理することができるようになります。IdPをLDAPやActive Directoryなどの認証サーバと連携することで、企業内で利用しているログインIDとパスワードを、クラウドサービスを利用する際にも使えるようになります。
この記事では、SAMLの仕組みの中でのIdPの役割について紹介します。
IdPのSAMLにおける役割
SAMLでは、以下のようなフローで、サービスとIdPが連携して認証を行います。
- ユーザがサービスにアクセスします。
- サービスプロバイダは、認証済みかどうかを調べ、認証していなければIdPのURLを調べます。
- サービスプロバイダは、IdPのURLを返送します。
- ユーザのブラウザは、IdPのURLに自動的にリダイレクトされます。
- ユーザは、IdPに認証を依頼します。
- IdPは、ユーザの認証状況を調べ、まだ認証済みでなければユーザにIDやパスワードの入力を促し、認証処理を行います。
- IdPは、認証トークンをユーザに返送します。
- ユーザのブラウザは、サービスプロバイダに自動的にリダイレクトされます。
- ユーザからサービスプロバイダに、IdPから取得した認証トークンが送られます。
- サービスプロバイダは、認証トークンを検査します。
- 認証トークンが正しければ、ユーザはサービスを利用できるようになります。
このフローからも分るように、IdPが実施するのは認証の処理のみです。なお、認証基盤が停止するとこのようなフローを実施する事ができなくなり、サービスが使えなくなります。そのため、十分に冗長性を考慮してシステムを構築する必要があります。
IdPとシングルサインオン
シングルサインオンとは、一回のユーザ・パスワードの認証を行うことで、様々なシステムの認証を行えるようにする技術です。IdPはシングルサインオンを実現するために必要な基盤としても知られています。
IDaaS
IDaaSは、クラウド上で提供される認証サービスです。SAMLのIdPとしても利用することができます。ユーザ数に応じたサブスクリプション型の料金体系になっているものがほとんどです。そのため、利用者が少ない場合には、IDaaSを利用するとコストを抑えることが可能です。ただし、企業内のActive DirectoryやLDAPサーバなどと連携することができないサービスが多いため、注意が必要です。
IdPのソフトウェア
IdPの役割を果たすソフトウェアとしては、次の2つのシングルサインオンのオープンソースソフトウェアが使われています。利用者の人数が多い場合には、IDaaSよりも安価にシステムを導入することができます。また、オンプレミス環境に構築すれば、企業内のActive DirectoryやLDAPと連携することもでき、非常に便利です。
こうしたソフトウェア使うと、組織内外のサービス間でシングルサインオンを実現することができ、インターネット上のサービスの利便性が向上します。
Keycloak
Keycloakは、RedHatが開発している比較的新しいシングルサインオンのソフトウェアです。RedHatが開発していることから、今後は利用が進んでいくと考えられています。また、SAMLの他にOpenID Connectにも対応しています。非常にシンプルなソフトウェアで、SAMLのIdPとして利用するのに適しています。そのためデージーネットでは、Office 365やAWSなど、様々なサービスとの連携ができることを確認しています。 詳しくは、「Keycloakと連携可能なサービス/ソフトウェア」を参照してください。
「Keycloak〜SAMLにも対応したシングルサインオン〜」へ
OpenAM
OpenAMは、シングルサインオンのソフトウェアとしてデファクトスタンダード的な位置づけのソフトウェアです。SAMLをサポートしていて、IdPとして利用することができます。SAMLやOpenID Connectに対応していないアプリケーションでも、認証を行えるように代理認証やエージェント型認証など、多くの認証方法をサポートしています。非常に高機能なソフトウェアで、SAMLのIdPとして利用するには、ややオーバースペックで、導入のコストがやや高くなる傾向にあります。そのため、最近は、SAMLでの利用を意識したOpenAMの仮想アプライアンスなども販売されています。
デージーネットの取り組み
デージーネットでは、KeycloakやOpenAMを使ったIdPの構築や導入後の支援サービスを行っています。認証システムは停止すると影響が大きいため、冗長構成でのシステム構築を提案しています。サービスプロバイダーがKeycloakやOpenAMとの連携を保証していない場合には、事前に動作検証も実施しています。また、導入後の支援サービスであるOpen Smart Assistanceでは、障害時のリモート調査やセキュリティ情報の通知などのサポートサービスを提供します。
【カテゴリ】:認証  セキュリティ  
【Webセミナー】脱PPAPへ、パスワード付きZIPファイルに代わるセキュリティ対策セミナー
日程: | 5月19日(木)Webセミナー「BigBlueButton」を使用します。 |
内容: | パスワード付きZIPファイルのメール送信(PPAP)の代替となるセキュリティ対策をご紹介します。 |
ご興味のあるかたはぜひご参加ください。 |