2

この質問は何度も聞かれていると思います。

しかし、私の疑問を再確認し、いくつかのヒントを得たいと思いました。

私はbuddy.comのバックエンドをサービスとして試すことを計画していました。また、JavaScriptを使用している場合、ほとんどのRESTAPIではアプリ名とパスワードを埋め込む必要があることがわかりました。彼らはまだjavascriptのドキュメントを持っていません。しかし、通常のhtmlまたはHTML5Webアプリを使用してJavascriptから今すぐ使用を開始する必要があるかどうか疑問に思っていました。どうやって使うの?

誰でもブラウザのソースを表示したり、フィドラーを実行して何が呼び出されているかを確認したりできるため、アプリのパスワードをクリアテキストで渡したくありません。私はかつて言うだろう、ちょっと、なぜあなたは特定の時間に有効なトークンシステムを使用しないのか知っています。

しかし、私はここの消費者です。Webページ/アプリのJavaスクリプトを介してAPIを呼び出すため、ブラウザーのビューソースに表示されているパスワードを保護するにはどうすればよいですか。

buddy.comAPIの典型的な例

http://webservice.buddyplatform.com/Service/v1/BuddyService.ashx?Pictures_ProfilePhoto_Add&BuddyApplicationName=&BuddyApplicationPassword =&UserToken =&bytesFullPhotoData =&ApplicationTag =&RESERVED =

ヒントをいただければ幸いです。ありがとう

4

1 に答える 1

1

クライアントが実行しているJavaScriptは、GreaseMonkeyでいつでも変更できます。 すべての変数は、 FirebugのようなJavaScriptデバッガーで読み取ることができます。 すべてのリクエストは、 tamperdataでインターセプトおよび変更できます。

その結果、JavaScriptはクライアント側のコードであるため、信頼できなくなります。攻撃者から秘密を守るためには、JavaScriptから秘密を守る必要があります。これは、シークレットを認識し、クライアントに代わってリクエストを実行する中間APIを使用して行うことができます。このAPIは、認証、または特定のリソースにアクセスできるユーザーを強制する必要があります。

于 2012-07-10T23:00:09.940 に答える