5

asp.net WebAPIのセキュリティ保護に関する多くのページを見てきました-http: //weblogs.asp.net/jgalloway/archive/2012/03/23/asp-net-web-api-screencast-series -part-6-authorization.aspxおよびhttp://weblogs.asp.net/jgalloway/archive/2012/05/04/asp-net-mvc-authentication-customizing-authentication-and-authorization-the-right-way .aspx-ただし、KISSタイプの例はまだ見ていません。

たとえば、車のリストを返すWeb APIを使用していて、サードパーティ(つまり、自分のWebサイトやサーバー/ドメインではない)と連携して、車の種類別、データベースへの認証方法(https経由)

彼らは単に(JSON GET / Postに)次のようなものを追加しますか?

[
{"username":"someusername","password":"somepassword",
{
"carTypeID":12345,
"carTypeID":9876}
"carTypeID":2468}
}
}
]

次に、ユーザー名とパスワードを取得し、.netのメンバーシップデータベースと照合して、「IfUserAuthenticated」で残りのJSONを処理しますか?

それとも、これを行うためのより良い方法はありますか?ヘッダーなどに詳細を追加することを聞いたことがありますが、それが理由なのか、それとも複雑すぎるのかはわかりません。サードパーティに返送されるトークンの設定についても聞いたことがあります。それが最善の方法である場合、APIを使用するアプリの側面を構築するためにどのような指示を与えるのでしょうか。

アドバイス/ポインタをありがとう、

マーク

4

3 に答える 3

4

シンプルに保ちたい場合は、基本認証を使用できます。SSLを介して非常に安全です。リクエストにヘッダーを追加するだけです。

Authorization: Basic <username:password encoded as base64>

ここで実装する方法を見つけることができます。

于 2012-06-11T21:10:19.060 に答える
3

SSL とともに HTTP 基本認証を使用できます。メッセージハンドラーを使用して実装するのは非常に簡単で、多くのプラットフォームですぐにサポートされます。例については私のブログを参照してください (選択したメンバーシップ プロバイダーとの統合は非常に簡単です)

http://www.piotrwalat.net/basic-http-authentication-in-asp-net-web-api-using-message-handlers/

于 2012-08-24T09:09:22.180 に答える
0

Web API について同様のことを書きました:
http://remy.supertext.ch/2012/04/basic-http-authorization-for-web-api-in-mvc-4-beta/

現在、いくつかの場所で使用されており、製造開始から約 2 か月間使用しています。うまくいくようです。

于 2012-07-30T21:54:13.503 に答える