SqlRoleProvider Classe

Definição

Gerencia o armazenamento de informações de associação de função para um aplicativo ASP.NET em um banco de dados SQL Server.

public ref class SqlRoleProvider : System::Web::Security::RoleProvider
public class SqlRoleProvider : System.Web.Security.RoleProvider
type SqlRoleProvider = class
    inherit RoleProvider
Public Class SqlRoleProvider
Inherits RoleProvider
Herança
SqlRoleProvider

Exemplos

O exemplo a seguir mostra o arquivo Web.config de um aplicativo ASP.NET configurado para usar um objeto SqlRoleProvider e o SqlMembershipProvider. O authorization elemento é configurado para permitir apenas o acesso a usuários autenticados na função Administradores.

<configuration>
  <connectionStrings>
    <add name="SqlServices" connectionString="Data Source=localhost;Integrated Security=SSPI;Initial Catalog=aspnetdb;" />
  </connectionStrings>
  <system.web>
    <authentication mode="Forms" >
      <forms loginUrl="logincs.aspx"
      name=".ASPXFORMSAUTH" />
    </authentication>
    <authorization>
      <deny users="?" />
      <allow roles="Administrators" />
      <deny users="*" />
    </authorization>
    <membership defaultProvider="SqlProvider" userIsOnlineTimeWindow="15">
      <providers>
        <add
          name="SqlProvider"
          type="System.Web.Security.SqlMembershipProvider"
          connectionStringName="SqlServices"
          enablePasswordRetrieval="false"
          enablePasswordReset="false"
          requiresQuestionAndAnswer="false"
          passwordFormat="Hashed"
          applicationName="SampleApplication" />
      </providers>
    </membership>
    <roleManager defaultProvider="SqlProvider"
      enabled="true"
      cacheRolesInCookie="true"
      cookieName=".ASPROLES"
      cookieTimeout="30"
      cookiePath="/"
      cookieRequireSSL="true"
      cookieSlidingExpiration="true"
      cookieProtection="All" >
      <providers>
        <add
          name="SqlProvider"
          type="System.Web.Security.SqlRoleProvider"
          connectionStringName="SqlServices"
          applicationName="SampleApplication" />
      </providers>
    </roleManager>
  </system.web>
</configuration>

Comentários

Essa classe é usada pelas classes Roles e RolePrincipal para fornecer serviços de gerenciamento de função para um aplicativo ASP.NET usando um banco de dados SQL Server. Você pode usar o gerenciamento de funções para especificar diferentes níveis de autorização para seu aplicativo.

Para usar a classe SqlRoleProvider, primeiro você deve criar o banco de dados SQL Server usado pelo SqlRoleProvider. Para criar o banco de dados usado pela classe SqlRoleProvider, execute o executável aspnet_regsql.exe encontrado na pasta C:\WINDOWS\Microsoft.NET\Framework\ versionNumber e especifique a opção -Ar (por exemplo, aspnet_regsql.exe -Ar). O banco de dados criado é chamado de Aspnetdb. Como alternativa, execute aspnet_regsql.exe para efetuar pull do modo de configuração de GUI e optar por configurar todos os recursos ASP.NET.

Se o provedor de função estiver configurado com um cadeia de conexão que usa segurança integrada, a conta de processo do aplicativo ASP.NET deverá ter direitos para se conectar ao banco de dados SQL Server.

O arquivo Machine.config é configurado com uma instância de SqlRoleProvider chamada AspNetSqlProvider que se conecta ao SQL Server no computador local. Você pode usar essa instância do provedor ou especificar sua própria no arquivo Web.config para seu aplicativo ASP.NET. Para usar a instância aspNetSqlProvider, especifique AspNetSqlProvider como o defaultProvider da configuração.

Você pode configurar as SqlRoleProvider mesmas informações SqlMembershipProvider de banco de dados e de usuário para usar um banco de dados individual para obter informações de autenticação e autorização. Para usar o mesmo banco de dados para informações de associação e função, execute o aspnet_regsql.exe executável e instale o recurso de associação. Em seguida, especifique o mesmo cadeia de conexão em sua configuração para as instâncias SqlRoleProvider e SqlMembershipProvider. Verifique também se ambas as instâncias de provedor estão configuradas com o mesmo ApplicationName.

Construtores

Nome Description
SqlRoleProvider()

Cria uma instância de SqlRoleProvider classe.

Propriedades

Nome Description
ApplicationName

Obtém ou define o nome do aplicativo para o qual armazenar e recuperar informações de função.

Description

Obtém uma descrição breve e amigável adequada para exibição em ferramentas administrativas ou em outras interfaces de usuário (UIs).

(Herdado de ProviderBase)
Name

Obtém o nome amigável usado para se referir ao provedor durante a configuração.

(Herdado de ProviderBase)

Métodos

Nome Description
AddUsersToRoles(String[], String[])

Adiciona os nomes de usuário especificados a cada uma das funções especificadas.

CreateRole(String)

Adiciona uma nova função ao banco de dados de função.

DeleteRole(String, Boolean)

Remove uma função do banco de dados de função.

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
FindUsersInRole(String, String)

Obtém uma matriz de nomes de usuário em uma função em que o nome de usuário contém o nome de usuário especificado para corresponder.

GetAllRoles()

Obtém uma lista de todas as funções do aplicativo.

GetHashCode()

Serve como a função hash predefinida.

(Herdado de Object)
GetRolesForUser(String)

Obtém uma lista das funções em que um usuário está.

GetType()

Obtém o Type da instância atual.

(Herdado de Object)
GetUsersInRole(String)

Obtém uma lista de usuários na função especificada.

Initialize(String, NameValueCollection)

Inicializa o provedor de função SQL Server com os valores de propriedade especificados no arquivo de configuração do aplicativo ASP.NET. Esse método não se destina a ser usado diretamente do seu código.

IsUserInRole(String, String)

Obtém um valor que indica se o usuário especificado está na função especificada.

MemberwiseClone()

Cria uma cópia superficial do Objectatual.

(Herdado de Object)
RemoveUsersFromRoles(String[], String[])

Remove os nomes de usuário especificados das funções especificadas.

RoleExists(String)

Obtém um valor que indica se o nome da função especificado já existe no banco de dados de função.

ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também