複雑な答えを指摘するかもしれない簡単な質問があります:(
私は正常に動作するWeb APIを持っています。しかし、今は認証/承認を設定したいと思っています。すべてのプラットフォームで動作する必要がありますが、主に jQuery からです。当然のことながら、次のようなプレーン テキストでパイプラインに沿ってユーザー名とパスワードを送信したくありません。
function GetAllCategories() {
var credentials = $.base64.encode('r3plica:mypassword');
var authType = "Basic " + credentials;
$.ajax({
url: "http://localhost:18904/api/Categories",
type: "GET",
beforeSend: function (xhr) {
xhr.setRequestHeader("Authorization", authType);
},
success: function (data) {
alert('Success!');
},
error: function () {
alert('error');
}
});
}
だから私は他の選択肢を見てきました。3 レッグ OAuth を使用する唯一の代替手段はありますか? クエリ文字列のキー/値を API に渡してすべてを処理させたいと思っていましたが、それを行うための段階的なプロセスが見つかりません。すべてがとても複雑に見えます。
それで、誰か私ができることを知っていますか?私は負荷を読み、負荷を実装しようとしました。
私はこれを機能させることができました:http://codebetter.com/johnvpetersen/2012/04/04/moving-from-action-filters-to-message-handlers/ ただし、私が知る限り、文字列を暗号化する必要があります(username) を API に送信する前に公開鍵を使用すると、API は秘密鍵を使用して復号化し、認証します。
だから私の2つの質問は簡単です:)
- 上記のリンクを使用して、jQuery から簡単に呼び出すことができますか (つまり、サードパーティのライブラリを使用していません)。
- そうでない場合、jQuery.ajax 呼び出しから直接呼び出すことができるように API を保護する最善の方法は何ですか?
明確にするために、APIにSSLを使用しています
事前に乾杯、
/r3plica