1
私はweb apiプロジェクトと管理パネル(Webプロジェクト)を開発しました。asp.net web api documentation
管理者だけがWeb APIドキュメントにアクセスできるようにします。
web apiおよびadminプロジェクトは、IISの仮想ディレクトリとしてホストされます。
これを達成する方法はありますか?
私はすでに管理プロジェクトのgloabl.asax
でコードセット元本を書いて、以下のコードでいます
try
{
//let us take out the username now
string username = FormsAuthentication.Decrypt(Request.Cookies[FormsAuthentication.FormsCookieName].Value).Name;
string roles = "Admin";
//Let us set the Pricipal with our user specific details
HttpContext.Current.User = new System.Security.Principal.GenericPrincipal(
new System.Security.Principal.GenericIdentity(username, "Forms"), roles.Split(';'));
}
支援してください。
認証と認可のためにプリンシパルを設定する必要があります。詳細はこちらhttp://www.asp.net/web-api/overview/security/authentication-and-authorization-in-aspnet-web-api – Tushar
Apiのドキュメントは、htmlファイルからレンダリングするか、ログインウィンドウを使用しますか。ドキュメントがWeb APIコントローラからレンダリングする場合は、コントローラの[Authorize(Roles = "Admin")]オントップを使用してください。 –
APIプロジェクトはhttp:// localhost:1000/api /にあります。ヘルプと管理プロジェクトはhttp:// localhost:1000/adminでホストされています。 adminとapiの両方が別の仮想ディレクトリにホストされていますどのように2つのディレクトリ間でプリンシパルを共有できますか? – user3151766