問題タブ [identityserver4]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
121 参照

javascript - API 認証を必要とする大きなイメージ タグの表示

現在、Cookie 認証の使用から ID サーバーへの切り替えを行っているシステムを使用しています。アプリケーションのフロント エンドは、KnockoutJS を使用した SPA です。SPA は、そのコンテンツの WebAPI スコープにアクセスできます。

現在、SPA が Identity Server のベアラー トークンを取得し、Authentication ヘッダーでトークンを渡す API に ajax 呼び出しを行うことができるようにするコードが用意されています。現在直面している問題は、以前は WebAPI に直接リンクしていた一部のイメージ タグの src 属性を置き換える方法です。

例は次のとおりです。

これは、以下のメソッドと同様のメソッド シグネチャを使用して Web API と通信していました (この記事では省略しています)。

これまでに見たアプローチの 1 つは、API を変更して base64 でエンコードされた画像を返し、ajax を使用して画像文字列を要求し、それを src として設定できるようにすることです。

ただし、この方法を使用して表示できる画像ファイルにはサイズ制限があり (ブラウザーによって異なるようです)、多くの画像がこの方法には大きすぎるため、これは現在のシステムではオプションではありません。

大きな画像をブラウザに安全に渡す他の方法はありますか?

0 投票する
1 に答える
2458 参照

angularjs - IdentityServer 4 でログインした後、ユーザー クレームを取得するにはどうすればよいですか?

このサンプルを使用して、Angular および WebApi (ASP.NET Core) で IdentityServer4 をセットアップしました: https://github.com/damienbod/AspNet5IdentityServerAngularImplicitFlow

すべてが機能しており、ログインして API などすべてを使用できますが、問題は、ログイン後にユーザー情報を取得できないことです。特定のユーザーを取得できるように subjectId が必要です。クレームか何かで返されると思っていたのですが、クッキーに表示されるのはトークンだけです。

0 投票する
2 に答える
744 参照

asp.net-core - API で access_token に基づいて id_token を取得する

現在、バックエンド ASP.NET Core マイクロサービスのコレクションを構築しています。これらのサービスは、フロントエンド アプリケーションから直接アクセスされるのではなく、ASP.NET Core API ゲートウェイを介してアクセスされます。OpenID Connect サーバーに IdentityServer4 を使用しています。UseJwtBearerAuthenticationAPI ゲートウェイが IdentityServer4 に対して JWT ベアラー トークン (access_token) を検証するようにミドルウェアをセットアップできました。API ゲートウェイが、access_token に基づいて id_token を、エンドユーザーを知る必要があるバックエンド サービスへの要求に挿入できるようにしたいと考えています。

access_token の検証時に id_token を取得するように JWT ミドルウェアを構成する方法はありますか、それとも API ゲートウェイで OpenID Connect サーバーを手動で呼び出す必要がありますか?

0 投票する
1 に答える
4562 参照

asp.net-core-mvc - IdentityServer4 のクレーム プリンシパルでアクセス トークン クレームを取得する

oAuth2/IdentityServer4について頭を悩ませようとしています。

https://github.com/IdentityServer/IdentityServer4.Samples/tree/dev/Quickstarts/3_ImplicitFlowAuthenticationでサンプル アプリケーションを使用する

MVC アプリケーションの次のコード:

ID トークン クレームのように見えるものを返します

nbf
1467173142
exp
1467173442
iss
http://localhost:5000
aud
mvc
nonce
636027699106782287.MDI0YzI5MTQtYmQxNy00MDllLWJmYzQtZjBhYzI2MGNjYmE3MDFmNzg1YmUtM2Y5ZC00YjBiLWEzOGItN2Q3ODRiODJlYjFl
iat
1467173142
c_hash
H2i5QeJKlHM5-s8vUTYlOw
sid
42b58d38e2b7c6cc653492742a08840b
sub
818727
auth_time
1467170555
idp
idsvr
name
Alice Smith
given_name
Alice
family_name
Smith
website
http://alice.com
amr
pwd

API プロジェクトの次のコード

アクセス トークン クレームのように見えるものを返します

コードは基本的に同じ (ユーザー ID 原則でクレームを返す) であり、名前/電子メールが欠落していますが、API の例にスコープ クレームが含まれていることに注意してください。

トークン フローは基本的に IdentityServer4 => MVC プロジェクト => API プロジェクトです。明らかに、MVC プロジェクトには identityToken とアクセス トークンの両方がありますが、アクセス トークン int User.Claims はロードされません。

私の目標は、MVC プロジェクトの User でスコープ クレームを使用できるようにして、MVC メソッドの Authorize 属性セクションを動作させるポリシーを設定できるようにすることです。

API プロジェクトのスタートアップはこちら: https://github.com/IdentityServer/IdentityServer4.Samples/blob/dev/Quickstarts/3_ImplicitFlowAuthentication/src/Api/Startup.cs

MVC プロジェクトのスタートアップはこちら: https://github.com/IdentityServer/IdentityServer4.Samples/blob/dev/Quickstarts/3_ImplicitFlowAuthentication/src/Api/Startup.cs

ありがとう、デイブ

0 投票する
1 に答える
373 参照

identityserver3 - IdentityServer4 によって生成され、IdentityServer3.AccessTokenValidation を使用して検証された OAuth トークン

IS4 を使用してトークンを生成し、IS3 を使用してそれを検証することは可能ですか?

IS4 を使用して STS を .NET Core に移行していますが、現時点では移行されない Web API がいくつかあります。

API を要求すると、次のエラーが表示されます: IDX10500: 署名の検証に失敗しました。SecurityKeyIdentifier を解決できません: 'SecurityKeyIdentifier

IS3 を使用してトークンを生成すると、問題なく動作します。

誰も同じ問題を抱えていますか?

0 投票する
1 に答える
269 参照

visual-studio-2015 - IdentityServer4 1.0.0-beta4-update1 および Visual Studio 2015 Update 3 - SSL が機能しなくなった

Identity Server 4 を 1.0.0-beta4-update1 にアップグレードし、Visual Studio 2015 を Update 3 にアップグレードしたところ、SSL を使用してアプリケーションをデバッグできなくなりました。

次のエラーが表示されます。

InvalidOperationException: IDX10803: ' https://localhost:44339/.well-known/openid-configuration ' から構成を取得できません。

0 投票する
1 に答える
2028 参照

asp.net-identity - IdentityServer、クレームとロール

私は Identity Server v4 (ただし、v3 でも同じだと思います) と .NET Core で遊んでいます。

今、私は理解できない奇妙な問題を抱えています。

MVC アプリケーションから[Authorize(Roles="Geek")]を使用してコントローラー/アクションを保護します。HttpContextから現在のユーザーを調べると、すべてのロールがロールとしてではなくクレームとして利用可能です (実際、User.IsInRole("Geek")は false を返します)。

さらに、すべてのロールが同じキー (もちろん「ロール」) を使用してクレーム コレクションに格納されるため、 authorize 属性でクレームを使用することはできません。

キー「ロール」を持つすべてのクレームを現在のプリンシパルのロールとしても自動的に持つ方法はありますか?

「トークン検証イベント」で遊んでみましたが、成功しませんでした。

サンプル リポジトリを試しているので、私のコードはこのhttps://github.com/IdentityServer/IdentityServer4.Samples/tree/dev/MVC%20and%20APIとほぼ同じです。

ヒントはありますか?

0 投票する
2 に答える
2563 参照

asp.net-identity - IdentityServer: EF サポートおよび aspnet Identity サポート用のデータベースを作成する方法

したがって、IdentityServer3 のドキュメントに基づいて、Entity Framework を使用してクライアント、スコープ、および運用データを格納できます (ドキュメントはこちら) を使用してナゲット パッケージをインストールする必要がありInstall-Package IdentityServer3.EntityFramework ますが、データベースの作成方法に関する指示が見つかりませんでした。データベースの下に作成するために実行する必要があるコマンドまたはスクリプト

User Store についても同様の質問が当てはまります。Asp.Net ID を使用してユーザー情報を保存する予定です。Install-Package IdentityServer3.AspNetIdentityパッケージをインストールする必要があります。データベース構造の作成に関する明確な指示がない

対応するサンプル プロジェクトEntityFrameworkAspnetIdentityがありますが、これらのプロジェクトが最新のスキーマを使用している場合は信頼できます。また、サンプル プロジェクトは、サンプル データを含むデータベースを作成します。クリーンなデータベース構造が必要です。

0 投票する
0 に答える
132 参照

asp.net-4.5 - ID サーバー 4 を mvc 4.5 アプリケーションと統合する際に直面する問題

私はAsp.netアプリケーションMVC 4.5でアイデンティティサーバー4を使用しています.mvcアプリケーションを実行すると、アイデンティティサーバー4に来てログインページが表示されます. 次に、資格情報を入力した後、資格情報を検証し、リダイレクト uri をhttps://localhost:44367/Home/Secureとして取得しました。ブラウザーに同じ uri が表示されますが、エラーが発生します

このエラーが発生するのはなぜですか?

0 投票する
1 に答える
3003 参照

asp.net-core - 複数の IdentityServer クライアントからユーザーをログアウトさせる

IdentityServer4 を使用するプロジェクトがあります

https://github.com/IdentityServer/IdentityServer4

authadminおよびの3 つのドメインがあります。www

IdentityServer が実行されauth、他の 2 つは「クライアント」です。

  • wwwハイブリッド フロー (Cookie) を使用する
  • adminImplicit フローを使用します (これは oidc-client を使用する SPA です)

でホストされている単一のログイン ページがありますauth。ユーザーがログインすると、 に移動しwwwます。一部のユーザーはアクセスを許可されてadminおり、ナビゲーションにリンクが表示されます。

ログイン後、admin にアクセスすると、認証が自動的に行われ、コールバック URL に戻ることがわかります。これはすべてうまくいきます。

ただし、 からログアウトしてadminも にアクセスできますwww。その逆も同様です。理想的には、ログアウトでユーザーを両方のクライアントから一度にログアウトさせたいと考えています。

これは可能ですか?


注:私はこのプロジェクトのフロント エンド開発者であるため、実際に実装した人は、以下のコメントで追加の詳細を提供する場合があります。