問題タブ [oauth]

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 投票する
1 に答える
5539 参照

c# - oAuth トークンの使用方法

ライブラリを使用して「oAuth_token」と「oAuth_token_secret」を取得しています。

REST Web サービスにリクエストを送信した場合、これら 2 つのキーをどのように利用して認証を確認しますか?

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

asp.net - OAuth で保護された API にアクセスする ASP.Net アプリケーションをどのようにデバッグしますか?

この問題には明らかな解決策が必要であることを知っていますが、それを見逃しているので、車輪を回転させないように誰かが私を啓発してくれることを非常に感謝しています...

サービス API (具体的には Evernote) と対話する ASP.Net アプリケーションを作成しています。Evernote ではセキュリティのために OAuth が必要であり、実際にオブジェクトを操作する前にトークンを取得する必要があります。

ワークフローは次のようになります (他の人と同じように自分自身に説明します!):

  1. 開発 API キーと秘密鍵、およびその他の OAuth 要素を使用して URL を作成し、それを Evernote に送信してアクセス トークンを要求します。
  2. URL をリクエストとして Evernote に送信し、レスポンスから新しいアクセス トークンを取得します。
  3. アクセス トークンを使用して別の URL を作成し、ユーザーの認証トークンを要求します。この URL は、ユーザーがログインするために対話する必要があるページに移動し (まだログインしていない場合)、アプリケーションが自分のアカウントにアクセスすることを承認します。私が作成した URL の最後のパラメーターは、Evernote のサーバーから呼び出されるコールバック URL です。
  4. すべてがうまくいけば、Evernote はコールバック URL を要求し、新しい認証トークンをパラメーターとして含めます。
  5. サーバーがトークンが埋め込まれたコールバックを受信したら、それを使用して、アプリが後続のリクエストでユーザーのメモとやり取りできるようにします。

問題は、パブリック ドメインの ISP ではなく、ローカル ボックスでこのアプリを作成していることです。したがって、私のコールバックは localhost サーバーに対するものです。もちろん、localhost は相対的なので、Evernote はコールバックを解決できません...認証トークンの受信とデバッグを同時に行うことはできません。

この認証モデルは Evernote に固有のものではないため、この問題を回避する方法が必要です (ロングショットで... Flickr は他の多くのサービスと同様に使用しています)。認証トークンを取得し、ローカル ボックスでデバッグできるように設定する方法を教えてもらえますか?

助けていただければ幸いです。

0 投票する
12 に答える
149844 参照

web-services - Google 認証 API アクセス トークンを確認するにはどうすればよいですか?

Google 認証アクセス トークンを確認するにはどうすればよいですか?

何らかの方法で Google にクエリを実行し、「[与えられたアクセス トークン] は [example@example.com] Google アカウントに対して有効ですか?」と尋ねる必要があります。

短縮版

Google Authentication Api :: OAuth Authentication for Web Applicationsを通じて提供されるアクセス トークンを使用して、さまざまな Google サービスからデータをリクエストする方法は明らかです。特定のアクセス トークンが特定の Google アカウントに対して有効かどうかを確認する方法が明確ではありません。方法を知りたいです。

ロングバージョン

トークンベースの認証を使用する API を開発しています。有効なユーザー名とパスワードが提供されるか、 N 個の検証可能なサービスのいずれかからサードパーティのトークンが提供されると、トークンが返されます。

サードパーティ サービスの 1 つが Google であり、ユーザーは Google アカウントを使用して私のサービスに対して認証を行うことができます。これは、後で Yahoo アカウント、信頼できる OpenID プロバイダーなどを含むように拡張されます。

Google ベースのアクセスの概略例:

代替テキスト

「API」エンティティは私の完全な管理下にあります。「パブリック インターフェイス」エンティティは、Web ベースまたはデスクトップ ベースのアプリです。一部の公開インターフェースは私の管理下にあり、他のものは制御できず、まだ私が知ることさえないものもあります。

したがって、ステップ 3 で API に提供されたトークンを信頼できません。これは、対応する Google アカウントのメール アドレスと共に提供されます。

どうにかして Google にクエリを実行し、「このアクセス トークンは example@example.com に対して有効ですか? 」と尋ねる必要があります。

この場合、example@example.com は Google アカウントの一意の識別子であり、ユーザーが Google アカウントにログインするために使用するメール アドレスです。これを Gmail アドレスと見なすことはできません。Gmail アカウントを持っていなくても Google アカウントを持つことができます。

Google のドキュメントには、アクセス トークンを使用して、さまざまな Google サービスからデータを取得する方法が明確に記載されています。そもそも、特定のアクセストークンが有効かどうかを確認する方法については何も述べていないようです。

更新 トークンは N 個の Google サービスに対して有効です。特定のユーザーが実際に使用しているすべての Google のサービスのサブセットがわからないため、検証の手段として Google サービスに対してトークンを試すことはできません。

さらに、Google 認証アクセス トークンを使用して Google サービスにアクセスすることは決してありません。単に、想定される Google ユーザーが実際に本人であることを確認する手段としてだけです。これを行う別の方法があれば、喜んで試します。

0 投票する
5 に答える
2034 参照

php - APIキーをどのように管理しますか

私はAPIの構築を検討しており、APIへのアクセスを管理するためのoauthを検討していましたが、私が行っているのは、企業がデータにアクセスしてサイトに組み込むことを可能にするb2bシステムです。最初はb2cはありません。

そのため、oauthは私にとって適切なツールではないようです。キーベースのシステムの構築に関する情報源を探していましたが、何も見つかりませんでした。

すでに何か利用できるものはありますか?ユーザーが送信したデータなどのハッシュを作成するのが最善ですか?

0 投票する
6 に答える
109642 参照

rest - REST認証スキームのセキュリティ

バックグラウンド:

RESTWebサービスの認証スキームを設計しています。これは「本当に」安全である必要はありません(それはより個人的なプロジェクトです)が、私はそれを運動/学習体験として可能な限り安全にしたいです。面倒なことや、ほとんどの場合、SSLを設定する費用がかからないので、SSLを使用したくありません。

これらのSOの質問は、私が始めるのに特に役立ちました。

私はAmazonS3の認証の簡略化されたバージョンを使用することを考えています(私はOAuthが好きですが、それは私のニーズには複雑すぎるようです)。リプレイ攻撃を防ぐために、サーバーから提供されたランダムに生成されたナンスをリクエストに追加しています。

質問に答えるには:

S3とOAuthはどちらも、いくつかの選択されたヘッダーとともにリクエストURLに署名することに依存しています。どちらも、 POSTまたはPUTリクエストのリクエスト本文に署名しません。これは、URLとヘッダーを保持し、リクエストの本文を攻撃者が必要とするデータに置き換える中間者攻撃に対して脆弱ではありませんか?

署名される文字列にリクエスト本文のハッシュを含めることで、これを防ぐことができるようです。これは安全ですか?

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

oauth - OAuth は携帯電話アプリケーションで動作しますか?

ブラウザーが利用できない携帯電話のアプリケーションから OAuth を機能させることはできますか?

ブラウザーがなくても、ユーザーがトークン要求を承認することは可能ですか?

0 投票する
7 に答える
19041 参照

python - OAuth に対してローカルで開発するにはどうすればよいですか?

OAuth サービス プロバイダーと通信する必要がある Python アプリケーションを構築しています。SP では、コールバック URL を指定する必要があります。localhost を指定しても、明らかに機能しません。公開サーバーをセットアップできません。サーバー/ホスティングの支払い以外にアイデアはありますか? これは可能ですか?

0 投票する
6 に答える
12775 参照

python - Twitter OAuth POST リクエストで 401 を取得する

Twitter OAuth を使用しようとしていますが、POSTリクエストが401( Invalid OAuth Request) エラーで失敗します。

たとえば、新しいステータスの更新を投稿したい場合は、次のパラメーターを使用して HTTPPOST要求をに送信https://twitter.com/statuses/update.jsonしています -

私のGETリクエストはすべて正常に機能しています。メーリング リストを見ると、多くの人が同じ問題を抱えていましたが、どこにも解決策が見つかりませんでした。

oauth.pyPython ライブラリを使用しています。

0 投票する
4 に答える
23411 参照

authentication - サーバー間認証にOAuthを使用していますか?

私は現在、リソース指向のRESTfulWebサービスとなる会社の新しいパートナー/パブリックAPIの指定に取り組んでいます。現時点で欠けているパズルのピースは、認証/承認です。

要件は次のとおりです。

  1. 最初は、サーバー間環境で機能する必要があります。たとえば、サーバーアプリケーションは、APIを呼び出しているユーザーを認識できるように、サーバーアプリケーション自体を識別できる必要があります。
  2. 将来的には、ユーザーアカウントになりすますことを許可したいと考えています。そのため、識別されるサーバーには、限られた期間のユーザーアカウントを表すトークンが含まれるようになります。

OAuthは、(2)トークンを取得し、ユーザーが資格情報を入力して認証するWebサイトにリダイレクトし、そのトークンを使用してアプリケーションとユーザーの両方を識別/認証するワークフローで理想的と思われます。

しかし、私が読んだことから、それが(1)に適しているかどうかはわかりません-つまり、有効なユーザー固有のトークンがなく、したがって必要のない呼び出し元のアプリケーションを識別するためだけにOAuthを使用できる方法はありますか?資格情報を入力するためにWebページにリダイレクトされますか?

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

binary - oauth ガイドの「8 ビット配列」とはどういう意味ですか?

oauth の初心者向けガイドには、次のように書かれています。

バイナリ データは OAuth 仕様では直接処理されませんが、UTF-8 でエンコードされていない 8 ビット配列に格納されることが想定されています。

これが何を意味するのか理解できませんか?バイナリを 8 ビット配列に格納するにはどうすればよいですか? ビット配列に関するウィキペディアの記事は役に立ちませんでした。