2011-08-09 17 views
4

IISでホストされているHTTPS経由でカスタム基本認証を使用して.NET 4.0を使用してRESTfulサービスを実装するための完全なステップバイステップガイドまたはサンプルプロジェクトを探しています。REST WCF 4 IISでSSLによるカスタム基本認証を使用するサービス

私は3日間それを勉強していましたが、WCF 3.5の実装が非常に異なっているか、またはカスタム基本認証なしで、またはSSLなしでしか見つかりませんでした。

基本的にWCF 4でRESTサービスを実装してSSLを追加しましたが、カスタムユーザーデータベースを使用してカスタム認証を使用することはできません。

本当にありがとうございます。

+0

見つけた3.5実装とは何が違うのですか? 4.0で動作しない理由は何ですか? – carlosfigueira

+0

ここに例があります(手順は非常に詳細でソースは含まれています): http://www.codeproject.com/Articles/379636/WCF-Basic-Authentication-with-SQL-Membership-Provi – Alex

答えて

0

カスタムHTTP moduleでは、カスタムクレデンシャルストアに対する基本認証が可能です。 IISの組み込みモジュールはWindowsアカウントのみをサポートします。

1

利用可能なWCF拡張ポイントを使用することは現在できません。

0

私はしばらくこの問題に取り組み、私のサービスで基本認証を実装しました。 WebOperationContext.Current.IncomingRequest.Headersで「Authorization」ヘッダーを確認します。それが欠けているか、資格情報は、チャレンジヘッダーを設定し、401のステータスを返すと一致しない場合:

WebOperationContext.Current.OutgoingResponse.Headers.Add("WWW-Authenticate: Basic realm=\"myrealm\""); 
throw new WebFaultException<string>("Username and password needed", HttpStatus.Unauthorized); 

資格情報の入力をユーザーに求めるために、ブラウザを引き起こすのに十分です。基本的な認証の詳細については、http://ithoughthecamewithyou.com/post/Basic-HTTP-auth-for-an-IIS-hosted-WCF-4-RESTful-service.aspxhttp://tools.ietf.org/html/rfc2617を参照してください。

+0

BTW ...あなたの最後のパラメタは 'HttpStatusCode.Unauthorized'を読むべきだと思います – atconway

関連する問題