Forguncyマニュアル
SAML 2.0
Forguncyの使い方 > ログインと認証 > 認証プロバイダー > SAML 2.0

次のリンク先より入手した「SAML 2.0用認証プロバイダー」を登録することによって、アイデンティティプロバイダ(以下、IdP)として動作するシングルサインオンツールやSaaSアプリケーションの認証情報を使用したForguncyアプリケーションに対するシングルサインオンができるようになります。Forguncy側はサービスプロバイダー(以下、SP)の役割を担います。

ダウンロードリンク

※利用しているバージョンによって対応する認証プロバイダーは異なります。以下より該当するバージョンをお選びください。

Forguncy Builer / Forguncy Serverのバージョン SAML 2.0用認証プロバイダーのバージョン
 6.0.4.0 ~ 6.0.21.0 saml20securityprovider_6_0_4_0.zip
 6.0.40.0 saml20securityprovider_6_0_40_0.zip
 6.0.41.0以降の6.x.x.x saml20securityprovider_6_0_41_0.zip

※古いバージョンでは本ページに記載している一部の機能はサポートされていません。

Forguncyは以下の要件を満たしたIdPをサポートしています。

注意:            

認証プロバイダーの登録

  1. ユーザーアカウント管理画面、もしくはサーバー管理ポータルにログインします。

    以降は、開発時ユーザーアカウント管理の画面を使って説明しますが、運用環境でも同様です。

  2. [認証連携] - [認証プロバイダー]をクリックした後、[認証プロバイダーの登録]ボタンをクリックしてダウンロードしたZIPファイルを選択します。

  3. 登録が完了します。

    以下の図のように「General Saml2.0 Security Provider」が「準備完了」と表示されます。

    この状態で[その他の設定]をクリックすると、次の図のようにSAML 2.0認証プロバイダーを使用するのに必要となる4つの設定項目が表示されます。以降の手順にて、これらの設定値の取得方法を説明します。

    [IdP情報の設定方法]は「IdPメタデータのインポート」と「カスタム設定」の2つがありますが、特別な理由がない限り「IdPメタデータのインポート」を使用することをお勧めします。以下にこの2つ設定方法について説明します。

認証プロバイダーの設定

本ページでは、OneLogin社が提供するアイデンティティ管理ソリューションOneLoginのシングルサインオン機能をIdPとして使用する場合を例として説明します。以下の手順1から4までは「IdPメタデータのインポート」と「カスタム設定」の両方において共通となります。

  1. Applicationsページから[Add App]ボタンをクリックします。

  2. 検索窓に「SAML Test Connector」と入力し、「SAML Test Connector (Advanced)」をクリックします。

  3. [Display Name]に任意の名前を入力し、上部にある[Save]ボタンをクリックします。

    本ページの例では「forguncyapp1」と入力しています。また、必要に応じて[Rectangular Icon]や[Description]などを設定します。

  4. 左側のメニューから[Configuration]をクリックし、[Audience]、[Recipient]、[ACS (Customer) URL Validator]、[ACS (Customer) URL]の4つの項目を次の表に従って適切な値を入力し、上部にある[Save]ボタンをクリックします

    Forguncy Builder上で行うデバッグ実行とForguncy Server上に発行したアプリケーションとでは、設定する値が異なることに注意してください。

    設定名

    説明

    デバッグ実行時(localhost)

    発行されたアプリケーション(Forguncy Server上)

    Audience(Entity ID)

    「SP エンティティ ID」に入力した値

    未入力の場合は自動で値が設定されますが、シングルサインオンは1つのアプリケーションにのみ適用されます。

    「SP エンティティ ID」が未入力の場合は以下の固定値になります。

    「Forguncy-SAML-WebSite」

    「SP エンティティ ID」が未入力の場合は以下

    「Forguncy-SAML-」 + Forguncyアプリケーション名

    例)Forguncy-SAML-myapp1

    ※ Forguncyアプリケーション名が「myapp1」の場合

    Recipient

    ForguncyアプリケーションのURL + 「/Saml2/ACS」

    ※複数のアプリケーションに対して設定する場合はいずれか一つのアプリケーションのURLを選択してください

    http://localhost:26850/Saml2/ACS

    ※ [開発用Webサーバーのポート番号]が「26850」である場合

    https://<ドメイン名・ホスト名>/myapp1/Saml2/ACS

    ※ Forguncyアプリケーション名が「myapp1」の場合

    ACS (Consumer) URL Validator

    AuthnRequestによって開始されたACSのURL検証

    .*

    .*

    ACS (Consumer) URL

    ForguncyアプリケーションのURL + 「/Saml2/ACS」

    ※複数のアプリケーションに対して設定する場合はいずれか一つのアプリケーションのURLを選択してください

    http://localhost:26850/Saml2/ACS

    ※ [開発用Webサーバーのポート番号]が「26850」である場合

    https://<ドメイン名・ホスト名>/myapp1/Saml2/ACS

    ※ Forguncyアプリケーション名が「myapp1」の場合

           

    注意:「SP エンティティ ID」が未入力の場合

    • 「SP エンティティ ID」が未入力の場合、ForguncyアプリケーションごとにAudience(Entity ID)に設定するべき値が変わってしまうため、SAML認証連携が可能なForguncyアプリケーションは1つに限られます。ただし、一度認証した情報は同じWebブラウザー上ではほかのForguncyアプリケーションにも共有されることから、ログイン済みの状態であればSAMLによる認証ユーザーの情報をほかのForguncyアプリケーションでも利用可能です。

    • たとえば、「app1」をIdPとのSAML認証連携を行うForguncyアプリケーションとして設定します。この場合、最初にログインできるのは「app1」アプリケーションのみであり、認証モードを「認証プロバイダー」に設定した「app2」でログインすることはできません。よって、SAML認証連携を行うアプリケーションが複数ある場合は、「app1」をアプリケーションを起動するための入り口となるアプリケーションとしIdpとのSAML認証連携を設定します。こうすることで「app1」から起動される「app2」などの他のアプリケーションはログイン状態で起動できるようになります。

IdPメタデータのインポート

手順4以降、「IdPメタデータのインポート」の場合には以下の操作を行います。

  1. [More Actions]-[SAML Metadataを選択し、SAML Metadataファイルをダウンロードします。

  2. 開発時ユーザーアカウント管理でダウンロードしたSAML Metadataファイルを[IdPメタデータファイル]にアップロードし、アップロード後に[設定の保存]ボタンをクリックします。

    アップロード後、空白の設定項目に値が自動的に入力され、IdP証明書情報が表示されます。

カスタム設定

手順4以降、「カスタム設定」の場合には以下の操作を行います。

  1. 左側のメニューから[SSO]をクリックし、[X.509 Certificate]の項目にある[View Details]をクリックします。

  2. ドロップダウンリストから「X.509 PEM」、もしくは「X.509 DER」を選択し、[Download]ボタンをクリックして証明書ファイルをダウンロードします。

  3. Forguncyの「SAML 2.0用認証プロバイダー」における[その他の設定]ページにある[IdP証明書ファイル]にダウンロードした証明書ファイルを設定します。

  4. SSOのページへと戻り、[Issuer URL]と[SAML 2.0 Endpoint (HTTP)]の2つの値が表示されていることを確認します。

  5. 1つ前の手順で確認した[Issuer URL]の値をコピーし、Forguncyの「SAML 2.0用認証プロバイダー」における[その他の設定]ページにある[IdPエンティティID]に入力します。次に、[SAML 2.0 Endpoint (HTTP)]の値をコピーし、[IdPログインURL]に入力し、[設定の保存]ボタンをクリックします

  6. [IdPバインディング]を設定します。

    既定値は「HttpRedirect」です。設定すべきバインディングの種類は、IdPメタデータファイルを参照することで確認できます。IdPメタデータファイルに複数のバインディングが存在する場合には、一番目に記載されているバインディングを指定します。バインディングの種類はIdPログインURLと一致している必要があります。

「IdPメタデータのインポート」と「カスタム設定」の両方で必要な操作

「IdPメタデータのインポート」の場合には手順2の後に、「カスタム設定」の場合には手順6の後に以下の操作を行います。

  1. 上部のメニューから[Users]をクリックし、Forguncyアプリケーションへのシングルサインオンを許可したいユーザーをクリックして選択します。

  2. 左側のメニューから[Applications]をクリックし、[Applications]の右側にある[+]アイコンをクリックします。

  3. 手順3で追加した「forguncyapp1」を選択し、[Continue]ボタンをクリックします

  4. 設定されている各項目の内容を確認し、必要に応じて修正・追加を行い、[Save]ボタンをクリックします。

  5. 開発時ユーザーアカウント管理、もしくはサーバー管理ポータルのサービスを再起動させます。

    開発環境の場合

    以下のどちらかの方法で開発時ユーザーアカウント管理のサービスを再起動させます。

    • [認証モード]を「認証プロバイダー」に変更し、アプリケーションでデバッグの開始を実行します。もし、すでに[認証モード]が「認証プロバイダー」に設定されている場合には、一度別の認証モードに変更してデバッグの開始を行い、再度「認証プロバイダー」に設定してデバッグの開始を実行してください。

    • 一度Forguncyプロジェクトファイル(拡張子:FGCP)を保存し、Forguncy Builderを一旦終了させたのちに再度Forguncyプロジェクトファイルを開きます。

    運用環境の場合

    以下のどちらかの方法で、対象のアプリケーション、もしくはサーバー管理ポータル管理のサービス(Forguncy Serverサービス)を再起動させます。

    • サーバー管理ポータルで[アプリ]を選択し、アプリケーション一覧の中から対象のアプリケーションの停止アイコンをクリックし、その後開始のアイコンをクリックしてアプリを再起動させます。

    • サーバー管理ポータルの右上のユーザー名が表示されている個所をクリックし、ドロップダウンリストから[サービスの再起動]を選択します。

  6. Forguncyアプリケーションを実行し、アプリケーションにログインしようとするとOneLoginページに遷移されます。

    OneLoginのユーザー名とパスワードを入力してログインします。すでにOneLoginにログインしている場合には、ログインは省略されForguncyアプリケーションのページが表示されます。

    なお、開発時ユーザーアカウント管理、もしくはサーバー管理ポータルの[内部管理]のにOneLoginのユーザーがForguncyのユーザーアカウントとして追加されていることを確認できます。

リダイレクトURIの設定

対象のアプリケーションへのアクセスにドメイン名を使用している場合、Forguncyアプリケーションの設定において[ドメイン名]の設定が必要です。

  1. サーバー管理ポータルの対象のアプリケーションの設定ページおいて[ドメイン名]を設定し、[設定の保存]ボタンをクリックします。

    ドメイン名にはアプリケーション名を含める必要があります。たとえば、アプリケーション名が「testapp1」、ドメインが「example.com」である場合、設定する値は「https://example.com/testapp1」です(既定のアプリとして設定している場合を除く)。
    ホスト名やIPアドレスを使用してアクセスしているアプリケーションの場合、本設定は不要です。

SPメタデータファイルの取得

対象のIdPにおいてSPメタデータファイルが必要となる場合には、以下の方法で取得できます。

開発環境の場合

  1. 開発時ユーザーアカウント管理で「SAML 2.0用認証プロバイダー」を登録した状態で、[認証モード]を「認証プロバイダー」に変更し、アプリケーションでデバッグの開始を実行します。

    もし、すでに[認証モード]が「認証プロバイダー」に設定されている場合には、一度別の認証モードに変更してデバッグの開始を行い、再度「認証プロバイダー」に設定してデバッグの開始を実行してください。

  2. 次のようなページが表示されたら、[SPメタデータファイルのダウンロード]ハイパーリンクをクリックします。

運用環境

  1. サーバー管理ポータルで「SAML 2.0用認証プロバイダー」を登録した状態で、[認証モード]が「認証プロバイダー」に設定されているForguncy Server上のアプリケーションの停止と開始を行いアプリケーションを再起動します。

  2. 再起動させたアプリケーションにアクセスし、次のようなページが表示されたら[SPメタデータファイルのダウンロード]ハイパーリンクをクリックします。

注意:            

ローカルログアウト

Forguncyが提供する「SAML 2.0用認証プロバイダー」はローカルログアウトをサポートしています。シングルログアウトはサポートしていないことに注意してください。

ローカルログアウトとは、Forguncyアプリケーション上だけでログアウトする動作を意味します。そのため、ログアウト後にSAML認証が要求されるページにとどまっている場合、自動的にIdP側との認証処理が行われ、再度自動的にログインしてしまいます。そのため、次のような設定を行い、ログアウト後にSAML認証が要求されないページへと遷移させる必要があります。

  1. ログインユーザー型セルの[ログアウト時の遷移先設定]で遷移先をSAML認証が要求されないページに設定します。

    指定するページは、Forguncyアプリケーション内のページでも外部のWebページでもどちらでも構いません。

関連トピック