8

サンプルをセットアップしようとしています: Web アプリケーションは、thinktecture ID サーバー 2.0 を介して Active Directory ログオンを使用します。

Active Directory と Thinktecture IdentityServer の両方が同じマシンにセットアップされています。

Active Directory フェデレーション サービスを ID プロバイダーとして使用するように、Thinktecture IdentityServer を構成しました。そして、Thintecture IdentityServer は応答側信頼になります。

Web アプリケーションからログオン アクションを要求すると、ADFS に記録される 2 つのエラーがあります。

レピュテーションが 10 個足りないので、アドレス「https://xxxx/idsrv/」を idsrvAddressにマスクします。

最初: イベント ID: 184

キー「idsrvAddress」で識別される証明書利用者のトークン要求を受信しましたが、キーが既知の証明書利用者信頼を識別しないため、要求を実行できませんでした。キー: idsrvAddress

このリクエストは失敗しました。

ユーザー操作 このキーがトークンを発行する必要がある URI を表している場合は、そのプレフィックスが AD FS 構成データベースで構成されている証明書利用者信頼と一致していることを確認してください。

2 番目: イベント ID: 364

フェデレーション パッシブ リクエスト中にエラーが発生しました。

追加データ

例外の詳細: Microsoft.IdentityServer.Web.InvalidScopeException: MSIS7007: 要求された証明書利用者信頼 'idsrvAddress' が指定されていないか、サポートされていません。証明書利用者信頼が指定されている場合は、信頼された証明書利用者にアクセスする権限がない可能性があります。詳細については、管理者にお問い合わせください。

私がすべきことを助けてください!

4

3 に答える 3

12

質問は古いですが、誰も答えなかったので、ヒントを共有することにしました。私の場合も Microsoft.IdentityServer.Web.InvalidScopeException が表示されました。解決策は、Relying Party Identifier を指定する際に ADFS で適切な大文字/小文字 (大文字/小文字) を再確認することです。これは明らかに、私が取り組んでいる ADFS 3.0 のバグです。

  • AD FS 管理コンソールを開く
  • Relying Party Trusts に移動します
  • 証明書利用者信頼の定義を右クリックし、[プロパティ] を選択します。
  • リスト項目
  • 表示されたダイアログで、「識別子」タブを選択します
  • イベント ビューアーのエラー メッセージから識別子をコピーします。
  • それを「Relying Party Identifier」テキストボックスに貼り付け、「追加」をクリックします。
    古い識別子が同じように見えても、大文字と小文字が異なる場合は、古い識別子を削除する必要があるかもしれません。ダイアログはそれを追加することを防ぎますが、内部的には、ADFS は大文字と小文字を区別する比較を使用してそれを比較しているようです。

上記は、エラーを取り除くのに役立ちました。もちろん、別の問題に直面するかもしれません。:-)

于 2015-01-28T15:35:14.910 に答える