Compartilhar via


Exemplos de autenticação (Windows SharePoint Services)

Atualizado em: 2009-04-16

Neste artigo:

  • Provedor de associação SQL

  • Provedor de associação do Active Directory

  • SSO da Web com AD FS

Este artigo inclui configurações de exemplo para vários provedores de autenticações de formulários comuns e de autenticação de logon único na Web (SSO).

Provedor de associação do SQL

A tabela a seguir exemplifica entradas do arquivo de configuração Web.config para o uso de autenticação de formulário ASP.NET para conexão a um provedor de associação do SQL.

Etapas de configuração Descrição e exemplos de entradas do arquivo Web.config

Ativar a autenticação de formulários ASP.NET.

Você pode definir o tipo de autenticação para uma zona específica como autenticação de formulários, na página Editar Autenticação no site da Administração Central do SharePoint.

Isso muda automaticamente o modo especificado no elemento de autenticação do arquivo Web.config para essa zona para formulários.

Por exemplo:

<authentication mode="Forms">

</authentication>

Registrar o provedor de associação.

Se você estiver usando o software de banco de dados Microsoft SQL Server no servidor local como banco de dados de provedor de associação e especificar AspNetSqlMembershipProvider como nome do provedor de associação, talvez não precise fazer outras alterações no arquivo Web.config. Neste cenário, se o arquivo machine.config tiver a configuração correta para o AspNetSqlMembershipProvider, você pode usá-la para o Windows SharePoint Services sem qualquer alteração.

Se a configuração padrão do arquivo machine.config não for aplicável (por exemplo, se você quiser usar um banco de dados do SQL Server em um servidor remoto), deve editar os arquivos Web.config para o aplicativo Web e para o site da Administração Central, para especificar as informações de conexão no elemento connectionStrings do banco de dados de provedor de associação.

Por exemplo:

<connectionStrings>

<add name="SqlProviderConnection" connectionString="server=SQLSERVERMACHINE;database=aspnetdb;Trusted_Connection=True" />

</connectionStrings>

Substitua SQLSERVERMACHINE pelo nome do computador servidor no qual você instalou o banco de dados de associação do SQL Server.

Em seguida, adicione os elementos membership e providers para registrar o provedor de associação no arquivo Web.config. Como um provedor padrão já está registrado no arquivo machine.config, você deve incluir um elemento <remove> antes do elemento <add>.

Por exemplo:

<membership defaultProvider="AspNetSqlMembershipProvider">

<providers>

<remove name="AspNetSqlMembershipProvider" />

<add connectionStringName="SqlProviderConnection" name="AspNetSqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</providers>

</membership>

O elemento membership deve ser incluído no elemento system.web do arquivo Web.config tanto para o aplicativo Web como para o site da Administração Central.

Registrar o gerenciador de função (opcional).

Você pode usar o provedor de funções padrão para o ASP.NET adicionando um elemento roleManager ao elemento system.web do arquivo Web.config file. Por exemplo:

<roleManager enabled="true" />

A sintaxe anterior usa o AspNetSqlRoleProvider, definido no arquivo machine.config. Esse gerenciador de função pode conectar-se ao banco de dados ASPNETDB na instância local ou remota do SQL Server. Se você quiser usar um banco de dados do SQL Server em um servidor remoto como seu banco de dados de provedor de funções, deve editar o arquivo Web.config para especificar as informações de conexão para o servidor do banco de dados remoto.

Por exemplo:

<connectionStrings>

  <add

    name="SqlProviderConnection"

    connectionString="server=SQLSERVERMACHINE; database=aspnetdb; Trusted_Connection=True"

    />

</connectionStrings>

Substitua SQLSERVERMACHINE pelo nome do servidor remoto que hospeda o banco de dados do SQL. Você pode especificar o mesmo valor do elemento connectionStringName para o provedor de associação e o gerenciador de função, logo, não precisa adicionar um novo elemento connectionStrings para o provedor de função. Entretanto, se você quiser usar outro banco de dados para o provedor de função, deve adicionar um elemento connectionStrings separado para esse provedor.

Em seguida, você deve adicionar os elementos roleManager e providers para registrar o provedor roleManager no Web.config. Como um provedor padrão já está registrado no arquivo machine.config você deve incluir um elemento <remove> antes do elemento <add>.

Por exemplo:

<roleManager enabled="true" defaultProvider="AspNetSqlRoleProvider">

<providers>

<remove name="AspNetSqlRoleProvider" />

<add connectionStringName="SqlProviderConnection" applicationName="/" description="Stores and retrieves roles data from the local Microsoft SQL Server database" name="AspNetSqlRoleProvider" type="System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />

</providers>

</roleManager>

O elemento roleManager deve ser incluído no elemento system.web do arquivo Web.config para o aplicativo Web e para o site da Administração Central.

Registrar o módulo HTTP.

Não aplicável

Provedor de associação do Active Directory

A tabela a seguir exemplifica entradas do arquivo Web.config para uso de autenticação de formulários ASP.NET para uso em um provedor de associação de serviço de diretório do Active Directory.

Dica

Esses exemplos funcionam apenas em cenários com um único domínio.

Etapas de configuração Descrição e exemplos de entradas do arquivo Web.config

Ativar a autenticação de formulários ASP.NET.

Você pode definir o tipo de autenticação para uma zona específica como autenticação de formulários na página Editar Autenticação na Administração Central.

Isso muda automaticamente o modo especificado no elemento de autenticação do arquivo Web.config para essa zona para formulários.

Por exemplo:

<authentication mode="Forms">

</authentication>

Pode também especificar a URL da página de logon no elemento dos formulários, por exemplo:

<authentication mode="Forms">

    <forms loginUrl="/_layouts/login.aspx"></forms>

</authentication>

Registrar o provedor de associação.

Se você quiser usar um servidor Active Directory para um provedor de associação, deve editar o arquivo Web.config para registrar o provedor de associação. Para isso, você deve especificar as informações de conexão do servidor Active Directory no elemento connectionStrings.

Por exemplo:

<connectionStrings>

  <add name="ADConnectionString"

   connectionString=

    "LDAP://DirectoryServer/CN=Users,DC=DirectoryServer " />

</connectionStrings>

Substitua DirectoryServer pelo nome do servidor do diretório de associação.

<membership defaultProvider="MembershipADProvider">

    <providers>

        <add name="MembershipADProvider" type="System.Web.Security.ActiveDirectoryMembershipProvider, System.Web, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"

                connectionStringName="ADConnectionString"/>

    </providers>

</membership>

ObservaçãoObservação:
O exemplo anterior não especifica credenciais de conta. Se você não especificar credenciais de conta, a identidade de processo do seu aplicativo será usada para acessar o Active Directory.

Se for necessária outra conta para acessar o Active Directory, você pode especificar outras credenciais de conta nos atributos connectionUsername e connectionPassword, o que significa que você está fornecendo o nome do usuário e a senha em texto sem formatação. Como resultado, recomendamos que você criptografe esta seção de configuração. Para obter mais informações, consulte os seguintes artigos:

Registrar o gerenciador de função (opcional).

Registrar o módulo HTTP.

Não aplicável

SSO da Web com AD FS

O sistema operacional Microsoft Windows Server 2003 R2 apresenta os Serviços de Federação do Active Directory (AD FS), que permitem que as organizações compartilhem com segurança informações sobre a identidade de um usuário. O AD FS fornece tecnologias de logon único na Web (SSO) para autenticar um usuário em vários aplicativos Web durante uma única sessão online.

Os dois pares de provedores de associação e função a seguir estão incluídos no AD FS:

  • SingleSignOnMembershipProvider/SingleSignOnRoleProvider   Os provedores padrão de associação e de função incluídos no Windows Server 2003 R2.

  • SingleSignOnMembershipProvider2/SingleSignOnRoleProvider2   Os provedores de associação e de função que operam em ambientes parcialmente confiáveis. Esses provedores estão incluídos no Service Pack 2 do Windows Server 2003 R2.

SingleSignOnMembershipProvider/SingleSignOnRoleProvider

A tabela a seguir exemplifica entradas do arquivo Web.config para um ambiente de SSO da Web com AD FS que usa o provedor padrão.

Etapas de configuração Descrição e exemplos de entradas do arquivo Web.config

Ativar a autenticação de formulários ASP.NET.

<system.web>

 <!-mode=[Windows|Forms|Passport|None]>

 <authentication mode="Forms" />

</system.web>

Registrar o provedor de associação.

<membership defaultProvider="SingleSignOnMembershipProvider">

  <providers>

    <add

      name="SingleSignOnMembershipProvider"

      type="System.Web.Security.SingleSignOn.SingleSignOnMembershipProvider, System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"

      fs="https://FEDERATIONSERVER/adfs/fs/federationserverservice.asmx"

      />

  </providers>

</membership>

Para o atributo fs, substitua FEDERATIONSERVER pelo nome real do servidor.

O elemento membership deve ser incluído no elemento system.web do arquivo Web.config.

Registrar o gerenciador de função (opcional).

<roleManager enabled="true" defaultProvider="SingleSignOnRoleProvider">

  <providers>

    <add

      name="SingleSignOnRoleProvider"

      type="System.Web.Security.SingleSignOn.SingleSignOnRoleProvider, System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"

      fs="https://FEDERATIONSERVER/adfs/fs/federationserverservice.asmx"

      />

  </providers>

</roleManager>

Para o atributofs, você deverá substituir FEDERATIONSERVER pelo nome real do servidor.

Registrar o módulo HTTP.

 <httpModules>

  <add name="Identity Federation Services Application Authentication Module" type="System.Web.Security.SingleSignOn.WebSsoAuthenticationModule, System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null" />

</httpModules>

SingleSignOnMembershipProvider2/SingleSignOnRoleProvider2

Se você estiver implementando o segundo conjunto de provedores de AD FS, as configurações para registro do gerenciador de provedor de associação e de função são diferentes. A tabela a seguir exemplifica entradas do arquivo Web.config para um ambiente de SSO da Web com AD FS que usa o provedor que opera em ambientes parcialmente confiáveis.

Etapas de configuração Descrição e exemplos de entradas do arquivo Web.config

Ativar a autenticação de formulários ASP.NET.

<system.web>

 <!-mode=[Windows|Forms|Passport|None]>

 <authentication mode="Forms" />

</system.web>

Registrar o provedor de associação.

<membership defaultProvider="SingleSignOnMembershipProvider2">

  <providers>

    <add

       name="SingleSignOnMembershipProvider2"

       type="System.Web.Security.SingleSignOn.SingleSignOnMembershipProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"

      fs=https://FEDERATIONSERVER/adfs/fs/federationserverservice.asmx

/>

</providers>

</membership>

Para o atributo fs, substitua FEDERATIONSERVER pelo nome real do servidor.

O elemento membership deve ser incluído no elemento system.web do arquivo Web.config.

Registrar o gerenciador de função (opcional).

<roleManager enabled="true" defaultProvider="SingleSignOnRoleProvider2">

  <providers>

    <add

      name="SingleSignOnRoleProvider2"

      type="System.Web.Security.SingleSignOn.SingleSignOnRoleProvider2, System.Web.Security.SingleSignOn.PartialTrust, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"

      fs="https://FEDERATIONSERVER/adfs/fs/federationserverservice.asmx"

      />

  </providers>

</roleManager>

Para o atributo fs, você deverá substituir FEDERATIONSERVER pelo nome real do servidor.

Registrar o módulo HTTP.

 <httpModules>

  <add name="Identity Federation Services Application Authentication Module" type="System.Web.Security.SingleSignOn.WebSsoAuthenticationModule, System.Web.Security.SingleSignOn, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, Custom=null" />

</httpModules>

Baixar este manual

Este tópico está incluído no seguinte manual baixável para facilitar a leitura e a impressão:

Consulte a lista completa de manuais disponíveis na página de download de manuais do Windows SharePoint Services (em inglês).