RolePrincipal.IsInRole メソッドとは? わかりやすく解説

Weblio 辞書 > コンピュータ > .NET Framework クラス ライブラリ リファレンス > RolePrincipal.IsInRole メソッドの意味・解説 

RolePrincipal.IsInRole メソッド

メモ : このメソッドは、.NET Framework version 2.0新しく追加されたものです。

RolePrincipal が示すユーザーが、指定したロール存在するかどうかを示す値を取得します

名前空間: System.Web.Security
アセンブリ: System.Web (system.web.dll 内)
構文構文

解説解説

IsInRole はまず IsRoleListCached をチェックして現在のユーザーロール名のキャッシュされた一覧があるかどうか確認しますIsRoleListCached プロパティtrue場合指定されrole に対してキャッシュされた一覧があるかどうかチェックしますロール名が Cookieキャッシュされる場合ユーザー許可されているロール名と拒否されているロール名の両方キャッシュされます指定されrole許可されロール名のキャッシュされた一覧に見つかると、IsInRole メソッドtrue返します指定されrole拒否されロール名のキャッシュされた一覧に見つかると、IsInRole メソッドfalse返しますIsInRole が、指定されroleロール名の許可および拒否された一覧で見つけることができない場合は、既定ロール Provider の IsUserInRole メソッド呼び出し構成された ApplicationName のデータ ソースロールユーザー名関連付けられているかどうか確認します

使用例使用例

ログオンしているユーザーユーザー ロール参照許可する前にユーザーが Administrators ロール属しているかどうかチェックするコード例次に示します

<%@ Page Language="VB" %>
<%@ Import Namespace="System.Web.Security"
 %>
<script runat="server">

Dim rolesArray() As String
Dim users As MembershipUserCollection

Public Sub Page_Load()

  Msg.Text = ""

  If Not User.IsInRole("Administrators")
 Then
    Msg.Text = "You are not authorized to view user roles."
    UsersListBox.Visible = False
    Return
  End If

  If Not IsPostBack Then
    ' Bind users to ListBox.

    users = Membership.GetAllUsers()
    UsersListBox.DataSource = users
    UsersListBox.DataBind()
  End If


  ' If a user is selected, show the roles for the selected user.

  If Not UsersListBox.SelectedItem Is
 Nothing Then
    ' Bind roles to GridView.

    rolesArray = Roles.GetRolesForUser(UsersListBox.SelectedItem.Value)
    UserRolesGrid.DataSource = rolesArray
    UserRolesGrid.DataBind()

    UserRolesGrid.Columns(0).HeaderText = "Roles for "
 & UsersListBox.SelectedItem.Value
  End If

End Sub

</script>
<html>
<head>
<title>Sample: View User Roles</title>
</head>
<body>

<form runat="server" id="PageForm">

  <h3>View User Roles</h3>

  <asp:Label id="Msg" ForeColor="maroon"
 runat="server" /><BR>

  <table border="0" cellspacing="4">
    <tr>
      <td valign="top"><asp:ListBox id="UsersListBox"
 DataTextField="Username" 
                                    Rows="8" AutoPostBack="true"
 runat="server" /></td>
      <td valign="top"><asp:GridView runat="server"
 CellPadding="4" id="UserRolesGrid"
 
                                     AutoGenerateColumns="false"
 Gridlines="None" 
                                     CellSpacing="0"
 >
                         <HeaderStyle BackColor="navy"
 ForeColor="white" />
                         <Columns>
                           <asp:TemplateField HeaderText="Roles"
 runat="server" >
                             <ItemTemplate>
                               <%# Container.DataItem.ToString() %>
                             </ItemTemplate>
                           </asp:TemplateField>
                         </Columns>
                       </asp:GridView></td>
    </tr>
  </table>

</form>

</body>
</html>
<%@ Page Language="C#" %>
<%@ Import Namespace="System.Web.Security" %>
<script runat="server">

string[] rolesArray;
MembershipUserCollection users;

public void Page_Load()
{
  Msg.Text = "";

  if (!User.IsInRole("Administrators"))
  {
    Msg.Text = "You are not authorized to view user roles.";
    UsersListBox.Visible = false;
    return;
  }

  if (!IsPostBack)
  {
    // Bind users to ListBox.

    users = Membership.GetAllUsers();
    UsersListBox.DataSource = users;
    UsersListBox.DataBind();
  }


  // If a user is selected, show the roles for the selected user.

  if (UsersListBox.SelectedItem != null)
  {
    // Bind roles to GridView.

    rolesArray = Roles.GetRolesForUser(UsersListBox.SelectedItem.Value);
    UserRolesGrid.DataSource = rolesArray;
    UserRolesGrid.DataBind();

    UserRolesGrid.Columns[0].HeaderText = "Roles for "
 + UsersListBox.SelectedItem.Value;
  }
}

</script>
<html>
<head>
<title>Sample: View User Roles</title>
</head>
<body>

<form runat="server" id="PageForm">

  <h3>View User Roles</h3>

  <asp:Label id="Msg" ForeColor="maroon" runat="server"
 /><BR>

  <table border="0" cellspacing="4">
    <tr>
      <td valign="top"><asp:ListBox id="UsersListBox"
 DataTextField="Username" 
                                    Rows="8" AutoPostBack="true"
 runat="server" /></td>
      <td valign="top"><asp:GridView runat="server"
 CellPadding="4" id="UserRolesGrid" 
                                     AutoGenerateColumns="false"
 Gridlines="None" 
                                     CellSpacing="0" >
                         <HeaderStyle BackColor="navy" ForeColor="white"
 />
                         <Columns>
                           <asp:TemplateField HeaderText="Roles" runat="server"
 >
                             <ItemTemplate>
                               <%# Container.DataItem.ToString() %>
                             </ItemTemplate>
                           </asp:TemplateField>
                         </Columns>
                       </asp:GridView></td>
    </tr>
  </table>

</form>

</body>
</html>
プラットフォームプラットフォーム
バージョン情報バージョン情報
参照参照



英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

RolePrincipal.IsInRole メソッドのお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



RolePrincipal.IsInRole メソッドのページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
日本マイクロソフト株式会社日本マイクロソフト株式会社
© 2025 Microsoft.All rights reserved.

©2025 GRAS Group, Inc.RSS