# Microsoft AD FS

{% hint style="success" %}
最初に[管理コンソールの設定](/jp/sso-connect-cloud/admin-console-configuration.md)の手順を完了してください。
{% endhint %}

### Microsoft AD FS

#### フェデレーションメタデータXMLを取得

AD FS管理アプリケーション内で、フェデレーションメタデータxmlファイルを特定します。AD FS > Service (サービス) > Endpoint (エンドポイント) をクリックしてから、「Metadata」 (メタデータ) セクションでURLのパスを探して確認します。パスは通常以下に見られるように、**/FederationMetadata/2007-06/FederationMetadata.xml**となります。

![フェデレーションメタデータXMLファイルの場所](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FO18rcZ9M7jkFQSWzoNF6%2Fadfs8.jpeg?alt=media\&token=fe088e7d-5f30-404e-b7c7-a6a7b1a8323f)

![メタデータのパス](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2F57Q0Wzdd6W8g9iim4WHa%2FScreen%20Shot%202022-08-08%20at%209.42.55%20AM.png?alt=media\&token=9e1d40b3-5523-4a39-b937-4114a4a28058)

#### メタデータをダウンロード

メタデータファイルをダウンロードするには通常サーバー上でブラウザにURLをロードします。 以下はその例です。\
\
<https://localhost/FederationMetadata/2007-06/FederationMetadata.xml\\>
\
このファイルをダウンロードして、コンピュータに保存します。

![メタデータXMLファイルをダウンロード](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FLDHi2Irbv8SHJI7nn1qC%2Fadfs9.jpeg?alt=media\&token=4f30fe66-d552-4492-b81e-126e30c78779)

#### フェデレーションメタデータをインポート

Keeper管理コンソールのSSOクラウド設定画面で、IdPタイプとして\[ADFS]を選択し、前の手順で保存したフェデレーションメタデータファイルをインポートします。

![IDPタイプを選択してSAMLメタデータをアップロード](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2F0V75TRpv1Ir5p6XhNU9t%2F2023-09-11_11-01-44.png?alt=media\&token=389a75b4-6771-4773-88ca-cd5c14f102e0)

#### Keeperメタデータをエクスポート

プロビジョニング画面に戻り、**\[表示]**&#x3092;クリックします。

<figure><img src="https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FmiSuK7wM25lAFxeFTL7A%2F2023-09-11_11-51-07.png?alt=media&#x26;token=e5c3054a-0985-46cc-b273-92b313e2c627" alt=""><figcaption><p>設定を表示</p></figcaption></figure>

次に、後ほど証明書利用者信頼 (Relying Party Trust) ウィザードでインポートするため、Keeperメタデータファイルをダウンロードします。Keeper SSO Connect Cloud™のプロビジョニングの\[表示]をクリックします。

<figure><img src="https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FrkN3a0USIwyYbtAwhux1%2F2023-09-11_12-06-02.png?alt=media&#x26;token=e38974d1-20ff-48d3-9011-10883f970d92" alt=""><figcaption></figcaption></figure>

\[メタデータをエクスポート]ボタンをクリックして、config.xmlファイルをダウンロードします。

![メタデータをエクスポート](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FkVOhMH7jkDrxjrwr6llW%2F2023-09-11_12-20-34.png?alt=media\&token=f6290d02-3b5f-4161-bd10-743de8442521)

### AD FSの設定を完了 <a href="#finish-adfs-config" id="finish-adfs-config"></a>

{% hint style="warning" %}
KeeperのCloud SSO SP証明書の有効期限は1年間のみです。毎年、管理コンソールから最新のKeeper SP証明書をダウンロードして、AD FSのRelying Party Trust (証明書利用者信頼) の設定にアップロードする必要があります。

証明書の有効期限が迫っている際には、Keeperからすべてのユーザーにお知らせします。
{% endhint %}

#### 証明書利用者信頼 (Relying Party Trust) を作成

Keeper SSO Connectを証明書利用者信頼として作成します。

![証明書利用者信頼を追加](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FRJ4Vw9Ejyfb5VWRaa1Q0%2Fadfs10.jpeg?alt=media\&token=4b5cb929-43a4-41c4-9b2a-c7e1e8c888f9)

#### Keeperメタデータをインポート

以下に見られるように、証明書利用者信頼 (Relying Party Trust) ウィザードを完了して、Keeper SSO Connect Cloudの表示画面から前もってエクスポートしたKeeperメタデータファイルをインポートします。

Welcome (ようこそ) 画面で\[Claim aware] (要求に対応する) を選択し、Keeperから保存したメタデータファイルを選択します。

![Keeperメタデータをインポート](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FpEBsk273XZfqazPufBcu%2Fadfs12.jpeg?alt=media\&token=25c8731f-0acc-4a46-a9b5-e6d92b9dc7f0)

![表示名にKeeper SSO Connect Cloudを入力](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2F3i9jqqPbgbtIdEEE6mxg%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuNQk5pWatNHCfAhRi_sso-step-35b.webp?alt=media\&token=03b46541-0b9a-4181-b16e-30e896083089)

![アクセス制御ポリシーを選択](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FMZjZWCPbCiNUWdMcilQx%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuNSf8o2Y9l5O_iDlD_sso-step-36b.webp?alt=media\&token=83fcdc5c-b84d-4bec-adb0-9ae5506a594a)

![SAMLログアウトエンドポイント](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2F2BkoWmiyCHdDPiuOaY7d%2Fsso-step-37b.png?alt=media\&token=47c1947c-a25e-477f-9add-0e2bb2adb502)

{% hint style="danger" %}
ログアウトエラーを防ぐには、証明書利用者信頼 (Relying Party Trust) のSAMLログアウトエンドポイントをhttps\://**<ご利用のADFSサーバーのドメイン名>**/adfs/ls/?wa=wsignout1.0に変更します。
{% endhint %}

![要求発行ポリシーを設定](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FKGYIO5lMASNxwL7zZsIO%2Fsso-step-38b.png?alt=media\&token=18cb465f-3252-46ea-bace-cbcc76a64dd3)

![証明書利用者信頼](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FuaHcw8l3a0hQRKgDa01U%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuNftnJ9zPx-PNHm_S_sso-step-39b.webp?alt=media\&token=682b2a57-42cf-412f-8022-634d5677912a)

#### 要求発行ポリシー規則を作成 <a href="#claim-issuance-policy" id="claim-issuance-policy"></a>

AD FSとKeeperの間で属性をマッピングするには、**\[LDAP 属性を要求として送信する]** (Send LDAP Attributes as Claims) で要求発行ポリシーを作成し、LDAPの属性をKeeper Connectの属性にマッピングする必要があります。

![要求発行ポリシーを編集](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FIzm9JjkeMwfmgGIADLja%2Fsso-step-40b.png?alt=media\&token=67e3346f-616e-4eed-8e1d-518d76a45b5d)

![規則を追加](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FD7PZmFcpnW3YvfMrUEmt%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuNxKVltK3IYEeNusx_sso-step-41b.webp?alt=media\&token=762f4bef-c75d-4f59-8871-109592abe38c)

![規則のタイプを選択](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2Ff0Kl4HDnevMoQ22ZcO41%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuNzVs4U-zAl3PerqH_sso-step-42b.webp?alt=media\&token=9769456f-69db-4b34-a634-1ba5c5f97a2c)

![要求規則名 - マッピング](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FwFMiOOLZqEheqCuf3ToO%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuOF0q7MgyThqOc46Z_sso-step-43b.webp?alt=media\&token=dab1c6d8-7a2f-4791-a1c4-9472a5d91744)

{% hint style="info" %}
**3つの属性 (First (名)、Last (姓)、Email (メール)) が上記のように正確なスペルで設定されていることをご確認ください**。
{% endhint %}

![発行変換規則](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2F3IQDe64mz9SHDdMgiOY9%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuOZ_G7xmVizBc9OtE_sso-step-44b.webp?alt=media\&token=5ff36e9b-925a-4220-8b14-401a5c151d62)

ログアウトのサポート用に、さらに2つの要求発行ポリシー規則を追加する必要があります。

![カスタム規則を使用して要求を送信](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FezT8xrzMUZrHpKXyi0V4%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuOaPn08WqATxQ01QU_sso-step-45b.webp?alt=media\&token=b1fc4f7b-bec6-4cce-b713-b552513fd875)

<figure><img src="https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2Fd8MWDZAAuyRLgVr5J9ut%2Fimage.png?alt=media&#x26;token=d3e1579d-b20b-4110-beea-7874542343ee" alt=""><figcaption><p>不透明な永続識別子を作成</p></figcaption></figure>

要求規則に追加する構文をコピーするには、以下のテキストをコピーしてカスタム規則に貼り付けます。

```
c1:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/windowsaccountname"]
 && c2:[Type == "http://schemas.microsoft.com/ws/2008/06/identity/claims/authenticationinstant"]
 => add(store = "_OpaqueIdStore", types = ("http://mycompany/internal/sessionid"), query = "{0};{1};{2};{3};{4}", param = "useEntropy", param = c1.Value, param = c1.OriginalIssuer, param = "", param = c2.Value);
```

![](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FrxCTyw4qFLEjJDAQ80fF%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuOyw8fm5erliGrFw3_sso-step-47b.webp?alt=media\&token=d41febb6-af3b-4d0a-a1a8-6f8007f843a4)

![入力方向の要求を変換](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2F4kmFxj9n8TivX85OmJkp%2Fsso-step-48b.png?alt=media\&token=8da4b9dc-ec2d-4df6-8073-afdd75323901)

<figure><img src="https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FLmbFHy5hBHpjuTjlvX6a%2Fimage.png?alt=media&#x26;token=a4b47ae8-43bb-405f-9e54-38c24c347df4" alt=""><figcaption><p>永続名前識別子を作成</p></figcaption></figure>

入力方向の要求の種類 (Incoming claim type): \*\*<http://mycompany/internal/sessionid**\\>
送信方向の要求の種類 (Outgoing claim type) : **Name ID** (名前ID)\
送信される名前IDの形式 (Outgoing name ID format) : **Transient Identifier** (一時識別子)

![送信方向の要求と名前IDの形式を設定](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FlovR8jGI50y8xVbQ8YGa%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuP8bi6mA1KdxhJ2-9_sso-step-50b.webp?alt=media\&token=20e73ae6-4617-47e2-849d-159fa81c0961)

#### SAML署名の設定

a. AD FSサーバーで管理者としてPowershellを開きます。\
\
b. 以下のコマンドを実行してSSO Connect Relying Party Trust Identifier (証明書利用者信頼の識別子) の文字列を特定します。

```
Get-ADFSRelyingPartyTrust
```

このコマンドを実行すると、長い出力リストが生成されます。SSO Connectセクションと「識別子」(Identifier) の文字列を探します。 この文字列は以下のようになります。\
<https://keepersecurity.com/api/rest/sso/saml/459561502484>

c.以下のコマンドを実行し、\<Identifier>を手順(b)で見つけた文字列に置き換えます。

```
Set-ADFSRelyingPartyTrust -TargetIdentifier <Identifier> -samlResponseSignature MessageAndAssertion
```

Get-ADFSRelyingPartyTrustを再度実行すると、SamlResponseSignatureセクションが「MessageAndAssertion」に設定されていることが確認できます。

#### AD FSサービスを再起動

サービスマネージャから、AD FSサービスを再起動します。

![](https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FgSp2Raa3AoS4b1VCZgDT%2Fassets_-MB_i6vKdtG6Z2n6zWgJ_-MBuG8lPowYSH8fqBdm2_-MBuPUNcmtjGDMJKW6Md_restart_adfs.webp?alt=media\&token=5b0106f7-583f-4f51-9534-b70edeb1d19d)

{% hint style="info" %}
SAMLアサーションの署名は、AD FS環境で適切に設定する必要があります。署名が設定されていない場合は、署名を設定してから、再設定後にAD FSとKeeper SSO Connect間でメタデータを再度交換する必要があります。
{% endhint %}

### トラブルシューティング

テスト目的または内部PKI証明書のために、IdPでの証明書の有効性確認を無効にする必要がある場合は、以下のPowershellコマンドをご使用ください。 < Identifier>を上記の「SAML署名の設定」 の手順で特定した文字列に置き換えます。

```
Set-ADFSRelyingPartyTrust -TargetIdentifier 
<Identifier> -EncryptionCertificateRevocationCheck None
```

```
Set-ADFSRelyingPartyTrust -TargetIdentifier 
<Identifier> -SigningCertificateRevocationCheck None
```

備考: 署名設定に何らかの変更を加えると、IdPとSSO Connectの間でXMLメタデータの交換が必要になる場合があります。

#### 既存のユーザー/初期管理者をSSO認証に移行

ルートノード (最上位) で作成されたユーザーは、SSOが設定されたサブノードに移行する必要があります。ユーザーがルートノードに残っている場合、ボルトや管理コンソールにアクセスする際にマスターパスワードの入力を求められます。

{% hint style="warning" %}
管理者は、SSOが有効になっているノードに自分自身を移動できません。この操作を行うには別の管理者が必要となります。
{% endhint %}

ユーザーがSSO対応ノードに移動した後、最初に\[法人SSOログイン]のプルダウンからSSO統合で設定した法人ドメインを入力し、Keeperボルトにログインする必要があります。また、マスターパスワード入力による確認を求められる場合があります。

<figure><img src="https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FbFfZY4rbYjOifBvaah9Y%2FJP_EG_EnterpriseSsoLogin1.png?alt=media&#x26;token=3c39d50f-e749-4a05-8883-9afa927613f1" alt=""><figcaption><p>まず[法人SSOログイン]を選択</p></figcaption></figure>

SSOで認証されると、それ以降はメールアドレスだけでSSO認証を開始できます。

<figure><img src="https://1914737032-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2F-Mfd2v-YT48Ljtykb8qm%2Fuploads%2FoaGsiuYsApEp4F3pzZDj%2FJP_EG_EnterpriseSsoLogin2.png?alt=media&#x26;token=f8c42ae7-f133-4690-bcbf-6c8e6b539eca" alt=""><figcaption></figcaption></figure>

法人ドメインを入力する必要はありません。メールアドレスを入力し&#x3066;**\[次へ]**&#x3092;クリックしても目的のSSOにルーティングされない場合は、Keeper SSO設定でジャストインタイムプロビジョニングが有効になっていることと、メールドメインがKeeperによって予約されていることを確かにします。 ルーティングとドメイン予約の詳細については、こちらをご覧ください。


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.keeper.io/jp/sso-connect-cloud/identity-provider-setup/ad-fs-keeper.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
