DBAuthorization – Parte 8 – Configuração do arquivo Web.config


No post anterior acoplamos o módulo DBAuthorizationModule e removemos o módulo UrlAuthorizationModule da execução da aplicação. Isso fará com que a avaliação das políticas seja feita utilizando o provider, que tem o papel de disponibilizar as informações para o módulo e para a aplicação.

Mas as configurações no arquivo Web.config não se resumem a isso. Além das configurações do Membership e Roles, ainda precisamos registrar o provider responsável pela autorização no Web.config. A criação da classe que representa essa seção já foi discutida no artigo em que demonstro como criar um provider customizado. Esse artigo pode ser acessado a partir deste endereço e vou assumir que você tenha o devido conhecimento nisso.

No código abaixo limitei as configurações relevantes do provider, como o registro da seção, a conexão com o banco de dados e a configuração do provider em si. Note que o escolhido foi o “SqlAuthorizationProvider”:

<?xml version=”1.0″?>
<configuration>
    <configSections>
        <section
            name=”dbAuthorization”
            type=”ProjetandoNET.Web.Configuration.DBAuthorizationSection, ProjetandoNET”
            requirePermission=”false” />
    </configSections>
    <connectionStrings>
        <clear/>
        <add
            name=”SqlConnectionString”
            connectionString=”Data Source=.;Initial Catalog=DB;Integrated Security=SSPI;”
            providerName=”System.Data.SqlClient” />
    </connectionStrings>
    <dbAuthorization defaultProvider=”SqlAuthorizationProvider”>
        <providers>
            <add
                name=”SqlAuthorizationProvider”
                type=”ProjetandoNET.Web.Security.SqlAuthorizationProvider, ProjetandoNET”
                applicationName=”WebTeste”
                connectionStringName=”SqlConnectionString”
                storeRulesInCache=”true”
                commandTimeout=”40″ />
        </providers>
    </dbAuthorization>
</configuration>

Assim como na configuração do módulo, o registro da seção que criamos e também os tipos dos providers referentes à autorização também devem contemplar o nome completo (namespace + Assembly). Você pode utilizar cada elemento add para adicionar quantos providers forem necessários mas, em runtime, o ASP.NET utilizará o provider especificado no atributo defaultProvider.

Anúncios

Deixe uma resposta

Preencha os seus dados abaixo ou clique em um ícone para log in:

Logotipo do WordPress.com

Você está comentando utilizando sua conta WordPress.com. Sair / Alterar )

Imagem do Twitter

Você está comentando utilizando sua conta Twitter. Sair / Alterar )

Foto do Facebook

Você está comentando utilizando sua conta Facebook. Sair / Alterar )

Foto do Google+

Você está comentando utilizando sua conta Google+. Sair / Alterar )

Conectando a %s