クライアントをOAuth風の方法で承認するにはどうすればよいですか?

StackOverflow https://stackoverflow.com/questions/5307350

  •  24-10-2019
  •  | 
  •  

質問

2つのサーバー(サーバーと認証器)があり、クライアントがいるとしましょう。ここでの私の最終目標は、サーバー上のクライアントを識別できることです。私の解決策は、Oauthのようなトークン/秘密のシステムを思いつくことでした。クライアントにはトークンと秘密があります。サーバーに渡します。サーバーはそれをAuthenticatorに渡します。有効な場合、サーバーはリクエストを許可します。

明らかに、これはリクエストの数だけではないものです。 AuthenticatorとServerが分離されている理由は、これが分散型サービスのためであるためです - 任意の数のサーバーを使用することができ、クライアントライブラリに各サーバーに登録するように依頼することは実用的ではありません。

それで、疑問が残っています、これを行うための最良の/正しい方法は何ですか?目標は、分散型のシステムを作成することですが、クライアントにサーバーに対して比較的安全な方法で自分自身を識別することができます。

役に立ちましたか?

解決 2

解決策は、私の問題をもう少し良く定義することでした。アプリケーションをブロックする方法を作成しようとしているため、サーバーを要求するときに名前とキーを保存するだけです。その後、それらがブロックされておらず、キーがデータストアのものと一致する限り、それらが識別されます。だから私は識別ほど認証しようとはしていません。入力をありがとう!

他のヒント

免責事項:私はセキュリティの専門家ではないので、ここでは外れている可能性があります。実際の実装では、解決する必要がある多くのセキュリティ問題があるようです。

最も広い意味では、クライアントに認証者に資格情報を提供してから、検証すると、クライアントとサーバーにセキュリティトークンの一致し、クライアントとサーバーの両方が直接通信できますか?

OAuthを実装して独自のOAuthサーバーを実行したくない理由があることに興味があります。

追加の参照: http://groups.google.com/group/37signals-api/msg/aeb0c8bf67a224cc

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top