問題タブ [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.
angularjs - AngularJS の $http のどこに Bearer トークンを挿入すればよいですか?
ユーザーの資格情報が受け入れられたら、Bearer トークン [1] をフェッチし、デフォルトのヘッダーを更新します。
これは $scope.signIn() メソッドの最後で行われます。トークンはセッション全体で持続しますか? それとも他の方法を使用する必要がありますか?
[1] https://github.com/doorkeeper-gem/doorkeeper/wiki/Client-Credentials-flow
angularjs - API トークンを AngularJS アプリ全体で永続化するには、どこに保存すればよいですか?
現在のユーザーがサインインするときに、そのユーザーの API トークンをフェッチします。このトークンは、セッション全体を通して永続的である必要があります。
トークンが生成された後にデフォルトのヘッダーを更新することから始めましたが、ページを更新するとその更新は消えます。
$cookieStore.put('API-TOKEN', token)を使用して保存しようとしましたが、 /user パスで保存されたため機能しませんでした。/user スコープからのみ利用できるようにします。
セッションファブリケーターに保存することも、ページが更新されるたびに空になるため失敗しました。私の次の試みは、sessionStorage を使用して保存することです。おそらくhttp://ngmodules.org/modules/ngStorageの助けを借りて。
どの方法が好ましい方法ですか?
乾杯、マーティン
node.js - Passport JS Bearer 認証をグローバルに使用する
Route Middleware で Passport JS Bearer Authentication を使用する NodeJS で記述された次のコードがあります。
すべてのエンドポイントに使用する代わりに、passport.authenticate
これをすべてのエンドポイントにグローバルに適用したいと考えています。
うまくいかないミドルウェアの次の順序で試しました
エンドポイントにヒットすると 401 が返されます..「PUT」ではなく「OPTIONS」タイプで表示されますが、それが役立つか意味がある場合は.(chrome を使用してアプリの UI からエンドポイントをテストします)。
c# - クライアント側で DotNetOpenAuth.OAuth2 によって返されるエラー メッセージを取得する方法は?
関数を使用ExchangeUserCredentialForToken
して、認証サーバーからトークンを取得しています。ユーザーがデータベースに存在する場合は正常に機能しますが、資格情報が正しくない場合は、クライアントにメッセージを送り返したいと思います。次の 2 行のコードを使用して、エラー メッセージを設定しています。
しかし、クライアント側では、プロトコル エラー (エラー 400) のみが発生します。認可サーバーのサーバー側で設定されたエラーメッセージを取得するにはどうすればよいですか?
認可サーバーからの完全なアプリ構成:
authentication - 認証が失敗したときに Apache Shiro で予期される応答は?
ベアラー トークン認証 (ヘッダーに client-id と access-token を使用した各リクエストの認証) を実装しました。
間違った資格情報 (Access-Token) を使用すると、本文が空の「200 OK」が返されますが、これは想定内ですか? 401 または 404 ではないでしょうか。正しい認証情報を使用すると、"200 OK" と予想される Json 応答が本文の内容と共に返されます。
DefaultPasswordService と AuthorizingRealm を使用しています。多分私は何かを逃しますか?
Shiro 1.2.3 の使用
c# - OWIN ベアラー トークン認証
Bearer Token に関していくつか質問があります。Protect(ticket)
Owin では、次のようにチケットを保護できます。
トークンは次のようになります。
nqak-9R6U64Owsm_lqn_mJzKc_Djd8iVnIw0EX77v5x2rybhf4m_zg_UnrsoO5BxDZQl0HWrSvvd4efa4ChNSf5rAGhd13aOXZlvwOJOZ5v_9bhRCq8A7tqHyiM6DqVVOyYs3lh2SU-wU1m85HH2IcYDtdTY3ijaKZ_QnP1nsqO5LRnnEL4upbETPW9zqWIZzZBX7_Y2cXi2v0K7WnlRor3gFKIZlU9J-NfidRpWXqq5744NfWWHalYADGS7eUWyuxPJCj9ykHYzaXFksJEXBw
私の質問:
このトークンはどのように生成/暗号化されますか?
誰かがトークンを台無しにして、カスタム クレームを追加しようとする可能性はありますか?
例:
トークン文字列がある場合、これを行うことができます:
これで、カスタム クレームを追加できます。たとえばrole
、値user
を持つクレームがある場合、そのクレームを変更して追加admin
し、チケットを再エンコードすると、管理者ロールを持つトークンを取得できます。
実際にいくつかのテストを行い、サーバーでトークンをエンコードしてから、別のシステムでそれを変更しようとしましたが、できませんでしUnprotect
た。したがって、チケットは、最初に作成されたマシンキーを使用して暗号化/復号化されている可能性があると考えています。Unprotect
ただし、同じマシンから実行しようとすると動作します。復号化して変更できます。
誰かがこのプロセスを説明できますか?
oauth-2.0 - GetAccessToken で不良データ例外が発生する
OAuth2 認証サーバーを作成し、DotNetOpenAuth を使用する必要があります。Access_Token を受け取ることはできますが、ResouceServer からリソースにアクセスしようとすると、不可解なエラー「Bad Data」が表示されます。データの何が悪いのかわかりません。(およびそれを修正する方法)正しいトークンを取得したようです。トークンを「破損」すると、別のメッセージが表示されます。次のコードでリソース サーバーを呼び出します (これは、Google OAuth2 サービスに接続するときに機能します)。
(トークンはテキストボックスにあるべきではありません...しかし、最初にそれを機能させましょう;-)
次に、userinfo.aspx のリソースにアクセスします。
私
c# - ベアラー認証と webapi2 を使用した最終ログイン時刻の設定
REST API に対して認証するために webapi2 でベアラー認証を使用しています。ユーザーが認証に成功してトークンを取得したときに、ユーザーが最後にログインした時刻をユーザー ストアに設定できるようにしたいと考えています。どうすればこれを行うことができますか?ログインが成功したときにコードを実行するためのフックはどこかにありますか?
これはこれまでの私のセットアップコードです。IPasswordHasher の独自の実装があります