問題タブ [bearer-token]
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.
oauth-2.0 - サービス アカウントの Bearer アクセス トークンを取得する方法
次のようなサービス アカウントの資格情報を生成しました。
資格情報を json 形式で表示します。
これにより、null の秘密鍵とアクセス トークンが生成されます。
ここで指定した REST リクエストを処理してアクセス トークンを取得するクラスはありますか?
oauth-2.0 - ベアラートークン認証とパスワード変更
現在、Web API での owin ベアラー トークン認証の学習段階にあります。このコードは、トークンおよび Cookie ベースの認証を使用して実装されています。コードは
コードは同僚によって実装されており、疑問があります。
トークン認証は、生成されたトークンに基づいています。ロールが「管理者」であるユーザーのトークンを生成しました。ユーザーが「管理者」ロールを持っているため、制限されたアクションにアクセスできるようになりました。しかしその後、同じ古いユーザーの役割を「ユーザー」に変更しました。現在、同じ古いトークンを使用して、彼が「管理者」にいなくてもリソースにアクセスできます。実際、これが追加のカスタムロジックで実装されているという記事をいくつか読みました。大丈夫です
今、私はユーザーパスワードを他のパスワードに変更しました。これで、同じ古いトークンでリソースにアクセスできます。短命のトークンを作成しても、これは良くないと思います。
誰もこれを逮捕するためにガイドしてください、または私は何かを逃しましたか? 「Authorization」ヘッダーでアクションを呼び出すときに実際に呼び出すメソッド
asp.net - ベアラー トークンからカスタム クレーム値を取得する (Web API)
私の ASP.NET Web API プロジェクトでは、ベアラー トークン認証を使用しており、次のようにいくつかのカスタム クレームを追加しています。
データベースに余分にアクセスせずに、コントローラーでこの追加のクレーム値にアクセスする方法はありますか?
c# - JWT を使用して Azure AD グループ情報を取得する
Azure AD ベアラー認証を必要とする API があります。
その後、おそらく Graph API を使用して Azure AD にクエリを実行し、呼び出し元のユーザーのグループ情報を特定することはできますか? ここでの最終目標は、以下の (または類似の) API メソッド/コントローラーにロールベースのセキュリティを適用することです。
さらに、ID 情報は実行中のスレッドにどのように適用されますか?
angularjs - ベアラー トークンの有効期限が切れているか、承認されたばかりかを判断する
私のAngularアプリケーションは、記事シリーズhttp://bitoftech.net/2014/06/01/token-based-authentication-asp-net-web-api-2-owin-asp-netで概説されているように、ベアラートークンを利用しています-アイデンティティ/ . アクセストークンの有効期限が切れたときに(401 httpコードを介して)トークンをシームレスに更新するために、フォークされた例に従いました。
私の質問は、決定された役割に基づいて、ベアラートークンが期限切れか、単に無許可かをどのように判断できるかということです.
たとえば、私の Web API メソッドには属性 [Authorize(Roles="Admin")] があります。それを呼び出すと、予想される 401 エラーが返されます。ただし、アクセス トークンの有効期限が切れて別の Web API メソッド呼び出しを行うと、401 エラーも返されます。インターセプターの responseError ハンドラーは次のとおりです。
私はさまざまなことをいじっていましたが、基本的には、アクセストークンの有効期限が切れたときにトークンを更新してリクエストを再送信したいと思います。ただし、指定された役割のために本当に拒否されたリクエストである場合、トークンを更新したくありません。
何かご意見は?
oauth-2.0 - .net Web API ベアラー トークンは数分以内に期限切れになります
Web API + oauth2 ベアラー トークン認証を正常にセットアップしました。/authtoken エンドポイント経由でトークンを取得し、それを Web API の保護領域への呼び出しに使用できます。
ただし、有効期限を 7 日に設定しましたが、トークンは約 5 分間しか有効ではないようです。
ここで何が問題なのですか?
c# - サロゲート トークンの提供による webapi からのロング ベアラー トークンの処理
クレーム認証を使用して ASP.NET WebApi 2 を使用して Web API を構築していますが、ユーザーは非常に多くのクレームを持つことができます。多数のクレームがあると、ベアラー トークンが急速に大きくなるため、はるかに短いベアラー トークンを返す方法を見つけようとしています。
IAuthenticationTokenProvider
これまでのところ、OAuth オプションOAuthAuthorizationServerOptions.AccessTokenProvider
プロパティに を提供できることを発見しました。
そして、これにより、を傍受しAuthenticationTicket
て隠し、より単純なものに置き換える機会が得られます-私の例では、ハッシュされたGUIDの下にあります。(注: 現時点では、このクラスは単純ConcurrentDictionary<string,AuthenticationTicket>
にセッションを保持しています。実際の例では、セッションを永続的なストレージに保存するつもりです)
だから私の質問:
- これは、長いクレームによって生成されたトークンの代わりに代理キーを提供する適切な (そして安全な!) 方法ですか?
- おそらく、webapi/OAuth スタック内でこれを行う必要がある、より良い/より簡単な場所はありますか?
注意すべきもう 1 つのことは、リフレッシュ トークンをサポートするつもりであるということです。実際、上記の例は、リフレッシュ トークンにこの種のメカニズムを使用する例から引き出されたものです ReceiveAsync
。通常、 から提供されたリフレッシュ トークンは常に削除されますが、そのConcurrentDictionary
理由がよくわかりません。
asp.net-mvc-5 - ログイン後の mvc アプリケーションから WebAPI 2.2 へのアクセス
フォーム認証を使用する MVC 5 アプリケーションがあります (デフォルトの MVC 5 プロジェクト テンプレートと同じ)。同じプロジェクトには、アプリケーションが使用する API を提供する WebAPI 2.2 コントローラーが含まれています。
ベアラー トークンを使用して、API に 2 種類のアクセスを提供したいと考えています。API は JavaScript 経由で呼び出されます。http://www.asp.net/web-api/overview/security/individual-accounts-in-web-apiを使用してそれを行うコードを追加しました。
問題は、別の API を呼び出してユーザー名とパスワードを提供することで、サンプル コードがトークンを取得することです。私が達成したいのは、ユーザーが MVC アプリケーションに正常にログインした後、JavaScript で別の呼び出しを行うのではなく、Bearer Token を返すことです。
これは可能ですか?
更新: ヘッダーを使用して、アカウント コントローラーのログイン アクションでトークンを返したいと思います。ただし、おそらくリダイレクトのため、ヘッダーは破棄されます。