- ホーム
- Workspace
- 管理
- コントロールパネルの使用
- サーバーバージョン向けONLYOFFICEシングルサインオン概要
サーバーバージョン向けONLYOFFICEシングルサインオン概要
はじめに
コントロールパネルが提供するシングルサインオン機能を使用すると、インストールされているSSOサービス(Shibboleth、OneLogin、またはActive Directory Federation Services)を使用してサードパーティ認証を有効にすることができます。
一般的にシングルサインオン技術は、ユーザーが一度サインインするだけで、複数のアプリケーションやサービスに再認証なしでアクセスできるようにします。たとえば、ウェブポータルに複数の大規模な独立したセクション(フォーラム、チャット、ブログなど)が含まれている場合、ユーザーは一つのサービスで認証手続きを行うことで、他のすべてのサービスに複数回の資格情報入力なしで自動的にアクセスできます。
SSOは常に2つのアプリケーション、すなわちアイデンティティプロバイダーとサービスプロバイダー(以下「IdP」と「SP」と呼びます)の共同作業によって実現されます。
ONLYOFFICE SSOはSPのみを実装しています。多くの異なるプロバイダーがIdPとして機能できますが、ONLYOFFICEは以下のサービスのみでテストされています:Shibboleth、OneLogin、およびAD FS。
SSO認証を使用することで、以下の主な利点を得ることができます:
- 利便性の向上。ユーザーは複数のパスワードやログインを記憶する必要がなく、ポータルへのアクセスがより迅速かつ簡単になります。
- セキュリティの強化。ONLYOFFICEはユーザーパスワードをいかなる形式でも保存せず、アイデンティティプロバイダー側での認証結果を使用します。
- 簡単な管理。必要なユーザー情報は認証トークンを通じて伝達されます。アイデンティティプロバイダー側でユーザー情報が変更された場合、次回のSSO認証時にポータル上で自動的に更新されます。ポータルにユーザープロファイルが存在しない場合、ユーザーがSSO資格情報を使用して初めてポータルにサインインするときに自動的に作成されます。
ONLYOFFICEでは、SSO認証は安全で一般的に使用されているSAML標準に基づいて実装されています。SAML(Security Assertion Markup Language)は、アイデンティティプロバイダーとサービスプロバイダー間でユーザー認証/認可データをセキュリティトークンを通じて伝達するためのXML標準です。
この記事では、一般的なSSOの有効化プロセスについて説明します。特定のIdPの設定例をお探しの場合は、ONLYOFFICE SPとShibboleth、OneLogin、またはAD FS IdPの設定方法に関する記事をご参照ください。
SSOの有効化:サーバーバージョン
ポータルのSSO認証を有効化および構成するには、以下の2つの主要なステップを実行する必要があります:
- ONLYOFFICEのコントロールパネル -> SSOページでアイデンティティプロバイダーを登録します。指定すべき情報はアイデンティティプロバイダーアカウントにあります。
ONLYOFFICEデスクトップエディターをONLYOFFICE Workspaceに接続する際にSSOを使用したい場合は、コントロールパネルでプライベートルームを無効にしてください。
- アイデンティティプロバイダーアカウントでONLYOFFICEを信頼されたサービスプロバイダーとして登録します。この手順は選択したアイデンティティプロバイダーによって異なります。
ONLYOFFICEサービスプロバイダーへのアイデンティティプロバイダーの登録
ONLYOFFICE SPにIdPを登録するには、SSOページのONLYOFFICE SP設定セクションを使用します。
- ONLYOFFICEポータルでコントロールパネルに移動し、左サイドバーのポータル設定セクションで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のエンドポイントアドレスです。
必要なバインディングタイプを選択するために対応するラジオボタンを選択します。バインディングは、IdPとSP間で認証リクエストとレスポンスが基礎となるトランスポートプロトコルを介して送信される方法を指定します:HTTP POSTまたはHTTP リダイレクトバインディングを使用します。
- IdPシングルログアウトエンドポイントURL - サービスプロバイダー側でのシングルログアウトに使用されるURL。これは、SPがログアウトリクエスト/レスポンスを送信するIdPのエンドポイントアドレスです。
必要なバインディングタイプを選択するために対応するラジオボタンを選択します。バインディングは、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をIdPで信頼されたサービスプロバイダーとして登録する
次に、IdPアカウントでONLYOFFICEを信頼されたサービスプロバイダーとして追加し、IdPにONLYOFFICE SPメタデータを指定する必要があります。
必要なデータを受け取るには、SSOページのONLYOFFICE SPメタデータセクションを参照してください。SPデータが公開されていることを確認してください。そのためには、SPメタデータXMLをダウンロードボタンをクリックします。XMLファイルの内容が新しいブラウザタブに表示されます。データをXMLファイルとして保存し、IdPにアップロードできるようにします。
または、対応するフィールドでクリップボードにコピーボタンをクリックして、個別のパラメータを手動でコピーすることもできます。
利用可能なパラメータは以下の通りです:
- SPエンティティID(メタデータXMLへのリンク) - サービスプロバイダーXMLのURLアドレスで、IdPがSPを一意に識別するためにダウンロードして使用できます。デフォルトでは、ファイルは次のアドレスに配置されています:http://example.com/sso/metadata、ここでexample.comはあなたのONLYOFFICEポータルのドメイン名または公開IPです。
- SPアサーションコンシューマーURL(POSTとリダイレクトバインディングをサポート) - サービスプロバイダーURLアドレスで、IdPからのアサーションを受け取り処理します。デフォルトでは、次のアドレスが使用されます:http://example.com/sso/acs、ここでexample.comはあなたのONLYOFFICEポータルのドメイン名または公開IPです。
- SPシングルログアウトURL(POSTとリダイレクトバインディングをサポート) - IdP側でのシングルログアウトに使用されるURLです。これは、IdPからのログアウトリクエスト/レスポンスを受け取り処理する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はIdPから認証レスポンスを受け取り、検証します。
- レスポンスが検証されると、ONLYOFFICEはユーザーのログインを許可します(ユーザーが存在しない場合は自動的に作成され、IdPで変更された場合はデータが更新されます)。
IdP側のサインインページを使用して資格情報を入力し、その後再認証なしでONLYOFFICEポータルにアクセスすることも可能です(IdP開始のSSO)。
ONLYOFFICE SPからのログアウト
ログアウトは2つの方法で行うことができます:
- ONLYOFFICEポータルのサインアウトメニューを使用する(この場合、ログアウトリクエストがIdPから送信されます)。ユーザーは、以前にSSO認証を介してアクセスした他のすべてのアプリケーションからログアウトした場合、IdPからも自動的にログアウトされるべきです。
- IdPのログアウトページから。
SSOを使用して作成されたユーザープロファイルの編集
SSO認証を使用して作成されたユーザーは、ポータル管理者のユーザーリストでSSOアイコンでマークされています。
このようなユーザープロファイルをPeopleモジュールで編集することは制限されています。SSO認証を使用して作成されたユーザープロファイルフィールドは、Peopleモジュールから編集できません。ユーザーデータはIdP側でのみ変更できます。