EntityFrameworkを構成してコードが機能しないようにした後、このページのドキュメントが好きになりました IDサーバー4の公式ドキュメント
ページの最後にあるドキュメントのように、「これで、既存のクライアントアプリケーションを実行してサインインし、トークンを取得し、APIを呼び出すことができるようになります。これらはすべてデータベース構成に基づいています。」しかし、コンソールアプリケーションを実行すると、次のように表示されます エラー 、サーバー情報に問題がないように見えても、これは 検出ドキュメント です。クライアントの前のサーバー。グーグルとスタックオーバーフローに関連する理由や何かを見つけることができません。 「キーセットがない」の意味とその修正方法を知りたい。
以下を追加しましたか?
public void ConfigureServices(IServiceCollection services)
{
services.AddIdentityServer()
.AddDeveloperSigningCredential()....
}
これを追加しないと、次のエラーが発生しました。
System.InvalidOperationException: Policy error while contacting the discovery endpoint http://localhost:5050/.well-known/openid-configuration: Keyset is missing
at IdentityModel.AspNetCore.OAuth2Introspection.PostConfigureOAuth2IntrospectionOptions.<GetIntrospectionEndpointFromDiscoveryDocument>d__3.MoveNext()
これが文書化されていないことは非常に迷惑です。
P.S.テストする前に、クライアントを再起動する必要があります。クライアント呼び出しは1回だけ検出されます。