1

PHP 5.4 を使用して REST API を構築しており、独自のカスタム認証ライブラリを入れています。私は 2-legged OAUTH が使用する形式に厳密に従っています。(参照: http://www.thebuzzmedia.com/designing-a-secure-rest-api-without-oauth-authentication/ )

この仕様に従って、ユーザーを安全に認証できるように、リクエストごとに送信する必要があるいくつかのメタデータがあります。

  1. AppId -> これは、リクエストの送信者を確認するためのものです。また、サーバー側の HMAC チェックサムを生成するために使用する秘密鍵を知ること。
  2. タイムスタンプ -> これはリプレイ攻撃に対処するためのものです。
  3. チェックサム -> これは、リクエストが改ざんされていないことを確認するための HMAC ハッシュです。
  4. AccessToken -> 最初の認証後にすべてのリクエストで使用されます。

このすべてのメタデータを送信するためのベスト プラクティスは何でしょうか?

カスタムヘッダーを作成して、そこに送信することを考えていました。このようにして、関数が必要とする実際のパラメーターからこのデータを分離できましたが、それがベスト プラクティスであるかどうかはわかりません。

例: MY-API-APP-ID: 243242、MY-API-TIMESTAMP: 123123123 など...

または

これらすべてをすべてのリクエストでパラメーターとして渡す必要がありますか?

GET メソッドはどうですか? クエリ文字列に配置するだけでよいでしょうか? (?timestamp=12312312&appId=123123...)

ありがとう!

4

1 に答える 1