メインコンテンツまでスキップ

ONLYOFFICE SPとAD FS IdPの設定

はじめに​

シングルサインオン(SSO)は、ユーザーが一度だけサインインすることで、再認証なしに複数のアプリケーションやサービスにアクセスできる技術です。

例えば、ウェブポータルがフォーラム、チャット、ブログなどの大規模な独立したセクションを含んでいる場合、ユーザーは一つのサービスで認証手続きを行うことで、他のすべてのサービスに対しても複数回の資格情報入力なしに自動的にアクセスできます。

SSOは常に、アイデンティティプロバイダーとサービスプロバイダー(以下「IdP」と「SP」と呼ぶ)の2つのアプリケーションの共同作業によって保証されます。ONLYOFFICE SSOはSPのみを実装しています。IdPとしては多くの異なるプロバイダーが存在しますが、この記事ではActive Directory Federation Services (AD FS)の実装を考慮します。

注記

ONLYOFFICEデスクトップエディターをONLYOFFICE Workspaceに接続する際にSSOを使用したい場合は、コントロールパネルでプライベートルームを無効にしてください。

システム要件​

システム要件には、ONLYOFFICE SSOと正しく動作することがテストされ証明された以下のソフトウェアが含まれます:

  • Windows Server 2008 R2、Windows Server 2016;
  • AD FS バージョン3.0以降。

SSO設定のためのONLYOFFICE Workspaceの準備​

  1. Docker用のONLYOFFICE WorkspaceまたはSSOサポート付きの任意の後続バージョンをインストールします(AD FSはCommunity Server v9.5以降でサポートされています)。
  2. ドメイン名を追加します。例:myportal-address.com。
  3. ポータルでコントロールパネル > HTTPSに移動し、トラフィックの暗号化のためにletsencrypt証明書を作成して適用します(ポータルでHTTPSを有効にするため)。

SSO設定のためのAD FSの準備​

  1. すべての公式アップデートとパッチを含む最新のAD DS(Active Directory Domain Service)バージョンをインストールします。

  2. すべての公式アップデートとパッチを含む最新のAD FSバージョンをインストールします。

    AD FSをゼロから展開するには、次の手順を使用できます。

  3. AD FSメタデータへのリンクが公開されていることを確認します。これを行うには、

    1. サーバーマネージャーで、ツール > AD FS管理を開きます。

    2. AD FS \ サービス \ エンドポイントに移動します。

    3. テーブル内のフェデレーションメタデータタイプの行を見つけます。IdPメタデータへのリンクは次のスキームに基づいて構築されます:

      https://{ad-fs-domain}/{path-to-FederationMetadata.xml}

      ONLYOFFICE SPとAD FS IdPの設定方法

      または、次のPowerShellコマンドを使用できます:

      PS C:\Users\Administrator> (Get-ADFSEndpoint | Where {$_.Protocol -eq "FederationMetadata" -or $_.Protocol -eq "Federation Metadata"}).FullUrl.ToString()

      結果として、次のようなリンクを得る必要があります:

      https://onlyofficevm.northeurope.cloudapp.azure.com/FederationMetadata/2007-06/FederationMetadata.xml
    4. AD FSが正しく起動していることを確認するために、受け取ったリンクをウェブブラウザで開きます。xmlが表示されるかダウンロードされるはずです。次のステップで必要となるメタデータxmlへのリンクをコピーします。

ONLYOFFICE SPの設定​

  1. ONLYOFFICEのコントロールパネルに管理者としてサインインしていることを確認し、左サイドバーのポータル設定セクションでSSOタブをクリックします。

    注記

    ONLYOFFICEポータルでは、組織のために1つのエンタープライズアイデンティティプロバイダーのみを登録できます。

    ONLYOFFICE SPとAD FS IdPの設定方法

  2. シングルサインオン認証を有効にするスイッチャーを使用してSSOを有効にし、AD FSからコピーしたリンクをIdPメタデータXMLのURLフィールドに貼り付けます。

    ONLYOFFICE SPとAD FS IdPの設定方法

    上向き矢印のボタンを押してIdPメタデータをロードします。ONLYOFFICE SP設定フォームはAD FS IdPからのデータで自動的に入力されます。

  3. カスタムログインボタンキャプションフィールドには、デフォルトのもの(シングルサインオン)の代わりに任意のテキストを入力できます。このテキストは、ONLYOFFICE認証ページでシングルサインオンサービスを使用してポータルにログインするためのボタンに表示されます。

    ONLYOFFICE SPとAD FS IdPの設定方法

  4. NameIDフォーマットセレクターで、次の値を選択します:urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress。

    ONLYOFFICE SPとAD FS IdPの設定方法

  5. IdP公開証明書 \ 詳細設定セクションで、ログアウトレスポンス署名を検証オプションのチェックを外します。AD FSはデフォルトでそれを必要としません。

    ONLYOFFICE SPとAD FS IdPの設定方法

  6. 次に、SP証明書セクションに証明書を追加する必要があります。自己署名証明書を生成するか、他の証明書を追加できます。

    注記

    新しい証明書ウィンドウで、使用目的セレクターを署名と暗号化オプションに切り替えます。AD FS IdPはデジタル署名の確認とデータの暗号化を自動的に設定されているためです。

    ONLYOFFICE SPとAD FS IdPの設定方法

    ほぼ同じ結果が得られるはずです:

    ONLYOFFICE SPとAD FS IdPの設定方法

  7. SP証明書 \ 詳細設定で、ログアウトレスポンスに署名のチェックを外します。AD FSはデフォルトでそれを必要としません。

    ONLYOFFICE SPとAD FS IdPの設定方法

    注記

    属性マッピングフォームを調整する必要はありません。これらのパラメータは後でAD FS IdPで設定します。詳細設定セクションでは、デフォルトの認証ページを非表示にし、SSOサービスに自動的にリダイレクトするために認証ページを非表示オプションをチェックできます。

    重要

    デフォルトの認証ページを復元する必要がある場合(IDPサーバーが故障した場合にポータルにアクセスできるようにするため)、ブラウザのアドレスバーでポータルのドメイン名の後に/Auth.aspx?skipssoredirect=trueキーを追加できます。

  8. 保存ボタンをクリックします。ONLYOFFICE SPメタデータセクションが開かれるはずです。

    ONLYOFFICE SPとAD FS IdPの設定方法

    SPメタデータXMLをダウンロードボタンをクリックして、設定が公開されていることを確認します。XMLファイルの内容が表示されるはずです。

  9. SPエンティティID(メタデータXMLへのリンク)フィールドからONLYOFFICE SPメタデータへのリンクをコピーし、AD FSがインストールされているマシンに移動します。

    ONLYOFFICE SPとAD FS IdPの設定方法

AD FS IdPの設定​

  1. .NETアプリケーションの強力な認証を有効にします。

    .NET Framework 3.5/4.0/4.5.xアプリケーションは、SchUseStrongCryptoレジストリキーを有効にすることで、デフォルトプロトコルをTLS 1.2に切り替えることができます。このレジストリキーは、.NETアプリケーションがTLS 1.2を使用するように強制します。

    注記

    Windows Server 2016およびWindows Server 2012 R2上のAD FSでは、.NET Framework 4.0/4.5.xキーを使用する必要があります:HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft.NETFramework\v4.0.30319

    .NET Framework 3.5の場合は、次のレジストリキーを使用します:

    [HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Microsoft\.NETFramework\v2.0.50727] "SchUseStrongCrypto"=dword:00000001

    .NET Framework 4.0/4.5.xの場合は、次のレジストリキーを使用します:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\.NETFramework\v4.0.30319 "SchUseStrongCrypto"=dword:00000001

    ONLYOFFICE SPとAD FS IdPの設定方法

    または、次のPowerShellコマンドを使用することもできます:

    New-ItemProperty -path 'HKLM:\SOFTWARE\Microsoft\.NetFramework\v4.0.30319' -name 'SchUseStrongCrypto' -value '1' -PropertyType 'DWord' -Force | Out-Null

    詳細については、この記事を参照してください。

  2. サーバーマネージャーで、ツール > AD FS管理を開きます。

    ONLYOFFICE SPとAD FS IdPの設定方法

  3. AD FS管理パネルで、信頼関係 > 依存パーティ信頼を選択します。右側の依存パーティ信頼の追加...オプションをクリックします。依存パーティ信頼ウィザードが開きます。

    ONLYOFFICE SPとAD FS IdPの設定方法

  4. ウィザードウィンドウで、オンラインまたはローカルネットワーク上で公開された依存パーティのデータをインポートラジオボタンを選択し、先ほどコピーしたONLYOFFICE SPメタデータのリンクをフェデレーションメタデータアドレス(ホスト名またはURL)フィールドに貼り付け、次へボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  5. 表示名フィールドに任意の名前を指定し、次へボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  6. この依存パーティ信頼の多要素認証設定を今は構成しないオプションを選択し、次へボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  7. この信頼されたパーティにすべてのユーザーがアクセスできるようにするオプションを選択し、次へボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  8. 結果の設定を確認し、次へボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  9. デフォルトのオプションを変更せずに、閉じるボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  10. 新しいウィンドウが開きます。発行変換ルールタブで、ルールの追加...ボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  11. クレームルールテンプレートリストからLDAP属性をクレームとして送信オプションを選択し、次へボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  12. クレームルール名フィールドに任意の名前を入力します。属性ストアリストからActive Directoryオプションを選択し、以下の表に従ってLDAP属性を送信クレームタイプにマッピングフォームを記入します。準備ができたら、完了をクリックします。

    LDAP属性(選択または追加するには入力)送信クレームタイプ(選択または追加するには入力)
    Given-NamegivenName
    Surnamesn
    E-Mail-Addressesmail
    Telephone-Numbermobile
    Titletitle
    physicalDeliveryOfficeNamel

    ONLYOFFICE SPとAD FS IdPの設定方法

  13. クレームルールの編集ウィンドウで、再度ルールの追加...ボタンをクリックし、クレームを変換オプションをクレームルールテンプレートリストから選択し、次へボタンをクリックします。

    ONLYOFFICE SPとAD FS IdPの設定方法

  14. クレームルール名フィールドに任意の名前を入力し、リストから次のオプションを選択します。

    • 受信クレームタイプ: mail,
    • 送信クレームタイプ: Name ID,
    • 送信名IDフォーマット: Email

    ONLYOFFICE SPとAD FS IdPの設定方法

    準備ができたら、完了ボタンをクリックします。

    ほぼ同じ結果が得られるはずです:

    ONLYOFFICE SPとAD FS IdPの設定方法

    AD FSからのログアウトが機能しない場合、カスタムクレームルールを追加することをお勧めします。{portal-domain}をSPドメインに置き換え、{ad-fs-domain}をIdPドメインに変更します:

    c:[Type == "mail"]
    => issue(Type = "http://schemas.xmlsoap.org/ws/2005/05/identity/claims/nameidentifier", Issuer = c.Issuer, OriginalIssuer = c.OriginalIssuer, Value = c.Value, ValueType = c.ValueType, Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/format"] = "urn:oasis:names:tc:SAML:1.1:nameid-format:emailAddress", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/namequalifier"] = "http://{ad-fs-domain}/adfs/services/trust", Properties["http://schemas.xmlsoap.org/ws/2005/05/identity/claimproperties/spnamequalifier"] = "https://{portal-domain}/sso/metadata");

    ONLYOFFICE SPとAD FS IdPの設定方法

  15. OKボタンをクリックします。

  16. SSOをイントラネットから動作させるためには、グローバル認証ポリシーの編集(コンテキストメニューAD FS / 認証ポリシー)でフォーム認証オプションを有効にする必要があります。

    ONLYOFFICE SPとAD FS IdPの設定方法

  17. 作成した信頼されたパーティのプロパティを開き、詳細設定タブに切り替えます。

    ONLYOFFICE SPとAD FS IdPの設定方法

    セキュアハッシュアルゴリズムリストでSHA-1オプションを選択します。

    ONLYOFFICE SPとAD FS IdPの設定方法

ONLYOFFICE SPとAD FS IdPの動作確認​

SP側でのONLYOFFICEへのログイン​

  1. ONLYOFFICE認証ページにアクセスします(例:https://myportal-address.com/auth.aspx)。

  2. シングルサインオンボタンをクリックします(ONLYOFFICE SPの設定時に独自のテキストを指定した場合、キャプションが異なることがあります)。ボタンがない場合は、SSOが有効になっていないことを意味します。

    ONLYOFFICE SPとAD FS IdPの設定方法

  3. SPとIdPのパラメータがすべて正しく設定されている場合、AD FS IdPのログインフォームにリダイレクトされます。

    ONLYOFFICE SPとAD FS IdPの設定方法

  4. AD FS IdPアカウントのログインとパスワードを入力し、サインインボタンをクリックします。

  5. 認証情報が正しい場合、ポータルのメインページにリダイレクトされます。ユーザーが存在しない場合は自動的に作成され、IDPで変更された場合はデータが更新されます。

SSO認証で追加されたユーザーのプロファイル​

SSO認証を使用して作成されたユーザープロファイルの編集は制限されています。IdPから受け取ったユーザープロファイルフィールド(名、姓、メール、役職、所在地)は編集できません。これらのフィールドはIdPアカウントからのみ編集可能です。

以下の図は、SSOユーザーのアクションメニューを示しています:

ONLYOFFICE SPとAD FS IdPの設定方法

次の図は、編集用に開かれたSSOユーザープロファイルを示しています:

ONLYOFFICE SPとAD FS IdPの設定方法

SSO認証を使用して作成されたユーザーは、ポータル管理者用のユーザーリストでSSOアイコンでマークされています:

ONLYOFFICE SPとAD FS IdPの設定方法