ユーザー名/パスワードが必要なログイン画面があります。
ユーザーが最初に登録したときに情報を保存するために、ASP.NET の一部である ASP.NET のメンバーシップおよびロール テーブルを使用しています。
ユーザーが適切な役割でログインしたら、別のページに誘導します。
これは、他のページの web.config ファイルです。SomeRole のロールのみを許可することに注意してください。
<configuration>
<system.web>
<authorization>
<allow roles="SomeRole" />
<deny users="*" />
</authorization>
</system.web>
</configuration>
ログイン画面で、ユーザー名とパスワードを取得します。以下をユーザーの役割にする方法はわかりません。
次のコードがあります。
protected void btnLogin_Click(object sender, EventArgs e)
{
// not sure what code to put here so user logged in that has a Role of SomeRole works with code just below
if (User.IsInRole("SomeRole"))
私が見ると、ユーザーの役割は空白として表示されます。私の質問は、ログインしている現在のロールに SomeRole の役割を持たせるにはどうすればよいかということです。
<allow roles="SomeRole" />
動作します。ログイン画面には、SomeRole に属するユーザー名とパスワードがありますが、作成方法がわかりません。
if (User.IsInRole("SomeRole")) は、そのユーザーのロールを継承するように機能します。これが理にかなっていることを願っています。
私のweb.configは次のようになります。
<roleManager enabled="true" cacheRolesInCookie="true"
defaultProvider="SiRoleProvider"
createPersistentCookie="false"
cookieProtection="All">
<providers>
<clear/>
<add connectionStringName="SiiSQL1" applicationName="SiGen" name=" r" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
</providers>
</roleManager>
ありがとう