SaaS版でのシングルサインオンの有効化
はじめに
お使いのSaaSサービスプランに規定されている場合、シングルサインオンセクションでは、SAMLを使用したサードパーティ認証を有効にすることができ、ユーザーがポータルにアクセスする際により迅速で簡単かつ安全な方法を提供します。
一般に、シングルサインオン技術は、ユーザーが一度サインインするだけで、複数のアプリケーション/サービスに再認証なしでアクセスできるようにします。例えば、ウェブポータルにフォーラム、チャット、ブログなどの複数の大規模な独立したセクションが含まれている場合、ユーザーはサービスの1つで認証手続きを行うことで、複数回の資格情報入力なしに他のすべてのサービスに自動的にアクセスできます。
ONLYOFFICEサービスプロバイダーにおけるアイデンティティプロバイダーの登録
アイデンティティプロバイダー(IdP)は、ユーザーのアイデンティティ情報を作成、維持、管理し、フェデレーション内の他のサービスプロバイダーにユーザー認証を提供するサービスです。OneLogin、ADFSなどのサービスがアイデンティティプロバイダーとして機能します。サービスプロバイダー(SP)は、ウェブサービスを提供し、ユーザー認証のために信頼されたアイデンティティプロバイダーに依存するエンティティです。この場合、サービスプロバイダーはONLYOFFICEです。
アイデンティティプロバイダーとサービスプロバイダー間の認証/認可データ交換のために、SAMLに基づくSSOを有効にできます。
- SAML(Security Assertion Markup Language)- アイデンティティプロバイダーとサービスプロバイダー間でユーザー認証/認可データをセキュリティトークンを介して伝送するためのXML標準です。
オンラインオフィスがユーザーパスワードを保存しないことで、セキュリティが強化されます。代わりに、アイデンティティプロバイダー側での認証結果を使用します。必要なユーザー情報は認証トークンを介して伝送されます。アイデンティティプロバイダー側でユーザー情報が変更された場合、次回のSSO認証時にポータルで自動的に更新されます(データはアイデンティティプロバイダーからオンラインオフィスへの一方向のみで同期されることに注意してください)。
アイデンティティプロバイダーとオンラインオフィスがSSOを確保するために相互に設定された後、ユーザーのSSO認証プロセスはアイデンティティプロバイダー側で実行されます。オンラインオフィスはアイデンティティプロバイダーから認証トークン(SAML)を受け取ります。トークンが検証されると(デジタル署名とトークンの有効期間を使用して)、オンラインオフィスはユーザーがポータルにアクセスすることを許可します。
SSOの有効化
ポータルのSSO認証を有効化および設定するには、次の手順に従います。
アイデンティティプロバイダーの設定を確認してから、サービスプロバイダーを調整してください。
- ポータルの設定ページに移動します。右上の角にある
アイコンをクリックします。 - 左のサイドバーにある統合セクションで、シングルサインオンリンクをクリックします。
- シングルサインオン認証を有効にするスイッチをシングルサインオンキャプションの下でオンにします。
- ONLYOFFICE SP設定セクションで必要なフィールドに入力します。必要な情報は、いくつかの異なる方法で指定できます。
- メタデータファイルへのURLアドレスを入力します。IdPメタデータが外部からリンクでアクセス可能な場合、IdPメタデータXMLへのURLフィールドにリンクを挿入し、矢印ボタンをクリックしてデータを読み込みます。データが読み込まれると、すべての必要なパラメータが拡張フォームに自動的に表示されます。
- メタデータファイルをアップロードします。IdPがメタデータファイルを提供する場合、ファイルを選択ボタンを使用して、ローカルマシンに保存されているファイルを参照します。ファイルがアップロードされると、すべての必要なパラメータが拡張フォームに自動的に表示されます。
- 必要なパラメータを手動で指定します。メタデータファイルが利用できない場合、必要なパラメータを手動で入力します。必要な値を取得するには、IdP管理者にお問い合わせください。
以下のパラメータが利用可能です。
- IdPエンティティID(必須フィールド) - サービスプロバイダーがIdPを一意に識別するために使用するアイデンティティプロバイダーの識別子またはURLアドレス。
例:https://example.com/idp/shibboleth
ここで、example.comはSSOサービスのドメイン名です。
- IdPシングルサインオンエンドポイントURL(必須フィールド) - アイデンティティプロバイダー側でのシングルサインオンに使用されるURL。これは、SPが認証要求を送信するIdPのエンドポイントアドレスです。
必要なバインディングタイプを対応するラジオボタンの1つを選択して設定します。バインディングは、IdPとSP間で認証要求と応答が基礎となるトランスポートプロトコルを介して送信される方法を指定します:HTTP POSTまたはHTTP リダイレクトバインディングを使用します。
- IdPシングルログアウトエンドポイントURL - サービスプロバイダー側でのシングルログアウトに使用されるURL。これは、SPがログアウト要求/応答を送信するIdPのエンドポイントアドレスです。
必要なバインディングタイプを対応するラジオボタンの1つを選択して設定します。バインディングは、IdPとSP間でログアウト要求と応答が基礎となるトランスポートプロトコルを介して送信される方法を指定します:HTTP POSTまたはHTTP リダイレクトバインディングを使用します。
- NameIdフォーマット - NameIDパラメータはSPがユーザーを識別するのに役立ちます。リストから利用可能なフォーマットの1つを選択します。
IdPおよびSPの証明書を追加することもできます。
IdP公開証明書
IdP公開証明書 - このセクションでは、SPがIdPからの要求と応答を検証するために使用するアイデンティティプロバイダーの公開証明書を追加できます。
IdPメタデータを読み込んだ場合、これらの証明書はポータルに自動的に追加されます。それ以外の場合、証明書はIdPアカウントで見つけることができます。証明書を手動で追加するには、証明書を追加ボタンをクリックします。新しい証明書ウィンドウが開きます。公開証明書フィールドに証明書を入力し、OKボタンをクリックします。
証明書のチェックに関する追加パラメータを設定します。
IdPからSPに送信される要求/応答のどの署名を検証するかを指定します。
- 認証応答署名の検証 - SPに送信されるSAML認証応答の署名を検証します。
- ログアウト要求署名の検証 - SPに送信されるSAMLログアウト要求の署名を検証します。
- ログアウト応答署名の検証 - SPに送信されるSAMLログアウト応答の署名を検証します。
デフォルト署名検証アルゴリズムリストから必要なアルゴリズムを選択します:rsa-sha1、rsa-sha256、またはrsa-sha512。
追加された証明書を編集または削除するには、対応するリンクを使用します。
SP証明書
SP証明書 - このセクションでは、SPからの要求と応答を署名および暗号化するために使用されるサービスプロバイダー証明書を追加できます。
IdPが入力データの署名および/または暗号化を要求する場合、このセクションで対応する証明書を作成または追加します。
証明書を追加ボタンをクリックします。新しい証明書ウィンドウが開きます。自己署名証明書を生成するか、公開証明書フィールドに既存の証明書を追加し、対応する秘密鍵を秘密鍵フィールドに追加します。使用目的リストで、利用可能なオプションの1つを選択します:署名、暗号化、署名および暗号化。準備ができたら、OKボタンをクリックします。
証明書をアップロード/生成する際に使用目的リストで選択した証明書の目的に応じて、証明書の追加パラメータが指定されます。以下のパラメータは、SPからIdPに送信されるどの要求/応答が署名されるべきかを定義します。
- 認証要求の署名 - SPがIdPに送信するSAML認証要求に署名します。
- ログアウト要求の署名 - SPがIdPに送信するSAMLログアウト要求に署名します。
- ログアウト応答の署名 - SPがIdPに送信するSAMLログアウト応答に署名します。
もし使用目的リストで暗号化または署名および暗号化オプションを選択した場合、アサーションの復号化パラメータもチェックされます。復号化は対応する秘密鍵を使用して行われます。
リストから必要なアルゴリズムを選択します。
- 署名アルゴリズム:
rsa-sha1、rsa-sha256、またはrsa-sha512。 - デフォルト復号化アルゴリズム:
aes128-cbc、aes256-cbc、またはtripledes-cbc。
追加された証明書を編集または削除するには、対応するリンクを使用します。
属性マッピング
属性マッピング - このセクションでは、ONLYOFFICEのPeopleモジュール内のフィールドとIdPから返されるユーザー属性の対応を設定できます。ユーザーがSSO資格情報を使用してONLYOFFICE SPにサインインすると、ONLYOFFICE SPは必要な属性を受け取り、ユーザーアカウントのフルネームとメールアドレスフィールドにIdPから受け取った値を入力します。ユーザーがPeopleモジュールに存在しない場合、自動的に作成されます。IdP側でユーザー情報が変更された場合、SPでも更新されます。
利用可能な属性は以下の通りです。
- 名(必須フィールド) - ユーザーレコード内のユーザーの名に対応する属性。
- 姓(必須フィールド) - ユーザーレコード内のユーザーの姓に対応する属性。
- メール
- メールアドレス(必須フィールド) - ユーザーレコード内でユーザーのメールアドレスに対応する属性です。
- 所在地 - ユーザーレコード内でユーザーの所在地に対応する属性です。
- 役職 - ユーザーレコード内でユーザーの役職に対応する属性です。
- 電話番号 - ユーザーレコード内でユーザーの電話番号に対応する属性です。
詳細設定
認証ページを非表示にするオプションを使用すると、デフォルトの認証ページを非表示にしてSSOサービスに自動的にリダイレクトすることができます。
/Auth.aspx?skipssoredirect=trueキーを追加してください。ポータル内で全ての設定が指定されたら、保存ボタンをクリックします。ONLYOFFICE SP メタデータセクションが開きます。
ONLYOFFICEを信頼されたサービスプロバイダーとしてIDプロバイダーに登録する
次に、ONLYOFFICEを信頼されたサービスプロバイダーとしてIDPアカウントに追加し、IDP内でONLYOFFICE SPメタデータを指定する必要があります。
必要なデータを受け取るには、SSOページのONLYOFFICE SP メタデータセクションを参照してください。SPデータが公開されていることを確認します。そのためには、SPメタデータXMLをダウンロードボタンをクリックします。XMLファイルの内容が新しいブラウザタブに表示されます。データをXMLファイルとして保存し、IDPにアップロードできるようにします。
または、対応するフィールドでクリップボードにコピーボタンをクリックして個別のパラメータを手動でコピーすることもできます。
以下のパラメータが利用可能です:
- SPエンティティID(メタデータXMLへのリンク) - サービスプロバイダーXMLのURLアドレスで、IDプロバイダーがSPを一意に識別するためにダウンロードして使用できます。デフォルトでは、ファイルは次のアドレスにあります:http://example.com/sso/metadata、ここでexample.comはあなたのONLYOFFICEポータルのドメイン名または公開IPです。
- SPアサーションコンシューマーURL(POSTおよびリダイレクトバインディングをサポート) - サービスプロバイダーがIDプロバイダーからのアサーションを受信して処理するURLアドレスです。デフォルトでは、次のアドレスが使用されます:http://example.com/sso/acs、ここでexample.comはあなたのONLYOFFICEポータルのドメイン名または公開IPです。
- SPシングルログアウトURL(POSTおよびリダイレクトバインディングをサポート) - IDプロバイダー側でのシングルログアウトに使用されるURLです。これは、IDプロバイダーからのログアウト要求/応答を受信して処理するSPのエンドポイントアドレスです。デフォルトでは、次のアドレスが使用されます:http://example.com/sso/slo/callback、ここでexample.comはあなたのONLYOFFICEポータルのドメイン名または公開IPです。
ONLYOFFICE SPへのログイン
SSOが有効化され、設定された後、ログインプロセスは次のように行われます:
- ユーザーがONLYOFFICEポータルの認証ページでシングルサインオンボタン(ONLYOFFICE SPの設定時に独自のテキストを指定した場合、キャプションが異なる場合があります)をクリックしてONLYOFFICEへのアクセスを要求します(SP開始のSSO)。
- IDPとSPの設定がすべて正しく設定されている場合、ONLYOFFICEは認証要求をIDPに送信し、ユーザーをIDPページにリダイレクトし、そこで資格情報を求められます。
- ユーザーがまだIDPにログインしていない場合、IDPで資格情報を提供します。
- IDPはユーザーデータを含む認証応答を作成し、それをONLYOFFICEに送信します。
- ONLYOFFICEはIDプロバイダーからの認証応答を受信し、それを検証します。
- 応答が検証されると、ONLYOFFICEはユーザーのログインを許可します(ユーザーが存在しない場合は自動的に作成され、IDPで変更された場合はデータが更新されます)。
IDプロバイダー側のサインインページ(IDP開始のSSO)を使用して資格情報を入力し、その後再認証なしでONLYOFFICEポータルにアクセスすることも可能です。
ONLYOFFICE SPからのログアウト
ログアウトは2つの方法で行うことができます:
- ONLYOFFICEポータルからサインアウトメニューを使用して(この場合、ログアウトのための要求がIDPから送信されます)。ユーザーが以前にSSO認証を介してアクセスした他のすべてのアプリケーションからログアウトした場合、IDPからも自動的にログアウトされる必要があります。
- IDPのログアウトページから。
SSOを使用して作成されたユーザープロファイルの編集
SSO認証を使用して作成されたユーザーは、ポータル管理者のユーザーリストにSSOアイコンでマークされています。
Peopleモジュールでそのようなユーザープロファイルを編集する可能性は制限されています。SSO認証を使用して作成されたユーザープロファイルフィールドは、Peopleモジュールから編集できません。ユーザーデータはIDP側でのみ変更可能です。