私はクライアント(iphone、android、mac os、web、windows、...)にapisを提供するためにAsp.net Web APIを使用します。私はいくつかの他のリンク(リンクをハッキングする場合)のパラメータを理解するのを防ぐいくつかのAPIを実装したいと思います。十分安全ですか?はいの場合は、実装するためにクライアント側にインストールする必要がありますか?Asp.Net Web APIでHttps/SSL接続を実装するにはどうすればよいですか?
ありがとうございます。
私はクライアント(iphone、android、mac os、web、windows、...)にapisを提供するためにAsp.net Web APIを使用します。私はいくつかの他のリンク(リンクをハッキングする場合)のパラメータを理解するのを防ぐいくつかのAPIを実装したいと思います。十分安全ですか?はいの場合は、実装するためにクライアント側にインストールする必要がありますか?Asp.Net Web APIでHttps/SSL接続を実装するにはどうすればよいですか?
ありがとうございます。
これは、ASP.NET Web APIアプリケーションをどこにホストするかによって異なります。 IISでホストする場合は、IIS経由でSSLを構成する以外に特別な操作を行う必要はありません。
IMOを行う必要があることは、アプリケーションでHTTPSを強制することです。あなたは(などIIS URLリダイレクトモジュール、など)さまざまな方法でこれを実装することができますが、あなたはまた、メッセージハンドラを使用してアプリケーション・レベルでこれを行うことができます。
public class RequireHttpsMessageHandler : DelegatingHandler {
protected override Task<HttpResponseMessage> SendAsync(HttpRequestMessage request, CancellationToken cancellationToken) {
if (request.RequestUri.Scheme != Uri.UriSchemeHttps) {
var forbiddenResponse = request.CreateResponse(HttpStatusCode.Forbidden);
forbiddenResponse.ReasonPhrase = "SSL Required";
return Task.FromResult<HttpResponseMessage>(forbiddenResponse);
}
return base.SendAsync(request, cancellationToken);
}
}
HttpClient
また、単に他の.NETなどのSSLをサポートしていますウェブクライアント。この記事をご覧ください:http://blogs.msdn.com/b/henrikn/archive/2012/08/07/httpclient-httpclienthandler-and-httpwebrequesthandler.aspx
AWSでWeb APIアプリケーションをホストします。私はそれをインストールして設定することができると思います。 –
@NguyenMinhBinh AWSがIISに関してどのようなアクセス権を提供しているのかわからないが、あなたがあなたのVMを完全に制御できるなら、確かに。 – tugberk
私はそれを持っています。 –