Configurar Autenticação Baseada em Formulários (FBA) com o SharePoint 2010
Obtido a Partir de http://blogs.technet.com/b/mahesm/
SharePoint 2010 oferece suporte a FBA, Como o WSS 3.0, MOSS 2007. É um recurso do ASP.NET que usamos com o SharePoint. SharePoint 2010 você pode criar aplicativos da web usando autenticação baseada em clássico ou autenticação baseada em reivindicações. No entanto, o FBA só pode ser configurado com aplicativos da web criados usando autenticação baseada em reivindicações.
quais são as diferenças entre autenticação de modo clássico e autenticação baseada em reivindicações?
autenticação de modo clássico: refere-se à autenticação integrada do windows. Você não pode configurar a autenticação baseada em formulários se seu aplicativo da web estiver usando a autenticação do modo clássico. Você pode converter um aplicativo da web da autenticação do modo clássico para Autenticação Baseada em reivindicações. No entanto, isso só pode ser feito usando comandos do PowerShell e é um processo irreversível. Tenho etapas detalhadas para converter o aplicativo da web da autenticação do modo clássico para Autenticação Baseada em reivindicações.
autenticação baseada em reclamações: o SharePoint 2010 é construído no Windows Identity Foundation. Ele permite a autenticação do windows, bem como sistemas não baseados no windows. Isso também fornece a capacidade de ter autenticação múltipla em um único URL.
a configuração do FBA com o SharePoint 2010 envolve 4 etapas principais. As etapas para configurar o FBA com o provedor de associação SQL estão abaixo:
I > Crie ou converta aplicativos da web existentes para Usar autenticação baseada em reivindicações
II> crie IDs de usuário no banco de dados SQL
III> modificar web.arquivo de configuração
IV > dê permissões aos usuários presentes no banco de dados SQL
Nota: Se você deseja configurar o FBA com o provedor de associação LDAP, consulte o artigo TechNet.
encontre as etapas detalhadas abaixo:
I > Crie ou converta aplicativos da web existentes para Usar autenticação baseada em reivindicações
Nota: – O aplicativo da Web deve ser criado a partir do console central de Administração ou PowerShell, no entanto, ele deve estar usando autenticação baseada em reivindicações.
A. Criando um aplicativo da web usando a Administração Central
-
-
- Console de Administração Central aberto.
- clique em Gerenciar aplicativo da Web em Gerenciamento de aplicativos.
- clique em novo na faixa de opções.
- escolheu autenticação baseada em reivindicações no topo da página.
- escolha a porta não para o aplicativo da web.
- clique em Ativar autenticação baseada em formulários (FBA) em tipos de autenticação de reivindicações. A autenticação do Windows está ativada por padrão e, se você não precisar da autenticação do windows, precisará remover a caixa de seleção.
- adicione o Provedor de associação & nome do Gerenciador de funções
- assim que o aplicativo da web for criado, verifique as configurações do provedor de autenticação para o aplicativo da web. Eu tenho a imagem abaixo:
-
Nota:- Se você deseja usar autenticação do Windows e autenticação baseada em formulários em URL único, selecione Ativar autenticação do Windows e Ativar autenticação baseada em formulários.
Nota: – Apenas para entender, estou usando o Provedor de associação como “SQL-MembershipProvider” e o Gerenciador de funções como “SQL-RoleManager”. Você pode usar nomes diferentes, no entanto, você precisa se lembrar do nome para que você possa encaminhá-los em web.arquivos de configuração. Esses nomes diferenciam maiúsculas de minúsculas.
B. E se você já tiver um aplicativo da Web criado usando a autenticação do Modo Clássico ou como converter o aplicativo da Web da autenticação do modo clássico para a autenticação baseada em reivindicações?
você não precisa excluir esse aplicativo da web. Você pode converter esse aplicativo da web da autenticação do modo clássico para autenticação baseada em reivindicações. No entanto, isso só pode ser feito usando o PowerShell e é um processo irreversível. Siga os comandos do PowerShell para converter o aplicativo da web da autenticação do modo clássico para Autenticação Baseada em reivindicações: Como baixar e instalar Minecraft no minecraft 1.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.2.useclaimsauthentication = “True”
$app.Update()
Exemplo:-
$App = get-spwebapplication “http://sp1:8000”
$app.useclaimsauthentication = “True”
$app.Atualizar ()
depois de ter o aplicativo da web usando autenticação baseada em reivindicações, você pode criar um conjunto de sites. Agora, se você acessar o aplicativo da web, poderá acessar o site escolhendo autenticação do Windows ou autenticação baseada em formulários, conforme mostrado na imagem abaixo.
escolha autenticação do windows e faça login no site. Quando você faz login, suas credenciais atualmente logadas serão usadas. Certifique-se de que a conta com a qual você está logado tenha acesso ao site do SharePoint; caso contrário, você receberá o erro de acesso negado.
II > Configure o Provedor de associação e o Gerenciador de funções.
- no SharePoint 2010 server, abra o prompt de comando.
- navegue até C: WindowsMicrsooft .NetFramework64v2.0.50727
- execute ” aspnet_regsql.exe”. Isso abrirá o Assistente de configuração do ASP. net SQL Server. Neste clique em Avançar.
- clique em”Configurar o SQL Server para Serviços de aplicativos”.
- especifique o nome do banco de dados. Se você não especificar o nome do banco de dados, ele criará uma chamada de banco de dados aspnetdb.
- Use a ferramenta membershipseeder para criar os usuários no banco de dados SQL. Você pode encontrar a ferramenta e informações sobre isso no codeplex.
nota: – eu especificei o nome do banco de dados como “SQL-Auth”.
III > modificar a web.arquivo de configuração para provedor de associação e Gerenciador de funções.
precisamos modificar 3 web diferentes.arquivos de configuração para o FBA funcionar. Site.configuração do aplicativo da web FBA, web.configuração do site de Administração Central & Web.configuração do STS.
A. modificar web.configuração do aplicativo da web FBA.
- Adicionar Seqüência de caracteres de conexão:
<connectionStrings>
<adicionar nome=”SQLConnectionString” connectionString=”data source=SQL;Integrated Security=SSPI;Catálogo inicial = SQL-Auth” />
</connectionStrings >
a String de conexão deve ser adicionada após </SharePoint> e antes do sistema <.web>
- Adicionar Provedor de associação e o Gerenciador de funções:
<roleManager defaultProvider=”c” enabled=”true” cacheRolesInCookie=”false”>
<provedores de>
<adicionar nome=”c” tipo=”Microsoft.topologia.Administracao.Credito.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Versão = 14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />
<add connectionStringName=”SQLConnectionString” applicationName=”/” description=”Stores and retrieves roles from SQL Server” name=”SQL-RoleManager” type=”System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</providers>
</roleManager>
<membership defaultProvider=”i”>
<providers>
<add name=”i” type=”Microsoft.SharePoint.Administration.Credito.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Versão=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />
<adicionar connectionstringname com=”SQLConnectionString” passwordAttemptWindow=”5″ enablePasswordRetrieval=”false” enablePasswordReset=”false” requiresQuestionAndAnswer=”true” applicationName=”/” requiresUniqueEmail=”true” passwordFormat=”Hash” descrição=”Armazena e Recupera dados de associação do SQL Server” name=”SQL-MembershipProvider” tipo=”do Sistema.Site.Seguranca.SqlMembershipProvider, Sistema.Web, Versão = 2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</provedores de>
</associação>
</do sistema.web >
B. modificar web.configuração do aplicativo da Web de Administração Central.
- Adicionar Seqüência de caracteres de conexão:
<connectionStrings>
<adicionar nome=”SQLConnectionString” connectionString=”data source=SQL;Integrated Security=SSPI;Catálogo inicial = SQL-Auth” />
</connectionStrings >
a String de conexão deve ser adicionada após </SharePoint> e antes do sistema <.web>
- Adicionar Provedor de associação e o Gerenciador de funções:
<roleManager defaultProvider=”AspNetWindowsTokenRoleProvider” enabled=”true” cacheRolesInCookie=”false”>
<provedores de>
<adicionar connectionstringname com=”SQLConnectionString” applicationName=”/” descrição=”Armazena e recupera funções do SQL Server” name=”SQL-RoleManager” tipo=”do Sistema.Site.Seguranca.SqlRoleProvider, Sistema.Web, Versão = 2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</provedores de>
</roleManager>
<a associação defaultProvider=”SQL-MembershipProvider”>
<provedores de>
<adicionar connectionstringname com=”SQLConnectionString” passwordAttemptWindow=”5″ enablePasswordRetrieval=”false” enablePasswordReset=”false” requiresQuestionAndAnswer=”true” applicationName=”/” requiresUniqueEmail=”true” passwordFormat=”Hash” descrição=”Armazena e Recupera dados de associação do SQL Server” nome = “SQL-MembershipProvider” Tipo = ” Sistema.Site.Seguranca.SqlMembershipProvider, Sistema.Web, Versão=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</provedores de>
</a associação>
C. Modificar web.configuração do STS. Você pode localizar o STS web.a configuração de %programfiles%comum filesMicrosoft Sharedweb servidor extensions14WebServicesSecurityToken
<connectionStrings>
<adicionar nome=”SQLConnectionString” connectionString=”data source=SQL;Integrated Security=SSPI;Initial Catalog=SQL-Auth” />
</connectionStrings>
<system.web>
<roleManager defaultProvider=”c” enabled=”true” cacheRolesInCookie=”false”>
<providers>
<add name=”c” type=”Microsoft.SharePoint.Administration.Claims.SPClaimsAuthRoleProvider, Microsoft.SharePoint, Version=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />
<add connectionStringName=”SQLConnectionString” applicationName=”/” description=”Stores and retrieves roles from SQL Server” name=”SQL-RoleManager” type=”System.Web.Security.SqlRoleProvider, System.Web, Version=2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</providers>
</roleManager>
<membership defaultProvider=”i”>
<providers>
<add name=”i” type=”Microsoft.SharePoint.Administration.Credito.SPClaimsAuthMembershipProvider, Microsoft.SharePoint, Versão=14.0.0.0, Culture=neutral, PublicKeyToken=71e9bce111e9429c” />
<adicionar connectionstringname com=”SQLConnectionString” passwordAttemptWindow=”5″ enablePasswordRetrieval=”false” enablePasswordReset=”false” requiresQuestionAndAnswer=”true” applicationName=”/” requiresUniqueEmail=”true” passwordFormat=”Hash” descrição=”Armazena e Recupera dados de associação do SQL Server” name=”SQL-MembershipProvider” tipo=”do Sistema.Site.Seguranca.SqlMembershipProvider, Sistema.Web, Versão = 2.0.3600.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</provedores de>
</associação>
</do sistema.web >
acima deve ser adicionado antes< / configuração>
IV> dar permissões aos usuários no banco de dados SQL.
- acesse o console de Administração Central e clique em Gerenciar Aplicativos da web em Gerenciamento de aplicativos.
- selecione o aplicativo da web e clique em política do usuário na faixa de opções.
- clique em Adicionar Usuário e selecione zona padrão.
- Agora digite o nome de usuário, adicione o usuário ao aplicativo da web definindo a permissão apropriada.
Problemas Comuns:
Se você estiver usando várias contas de serviço, conforme o artigo da TechNet contas Administrativas e de serviços necessárias para a implantação inicial (SharePoint Server 2010), em seguida, você pode não conseguir resolver o nome de usuário ou adicionar usuários para o aplicativo web. Se você estiver usando 3 contas diferentes (Farm Administrator account, Application pool account for web application and service application account), então você precisa ter certeza de que você tem acesso ao SQL membership database (SQL-Auth).
importante:
o que acontece com o FBA quando atualizamos o WSS 3.0 / MOSS 2007 para o SharePoint 2010?
antes de atualizar para o SharePoint 2010, você precisa remover as alterações feitas na web.arquivo de configuração. Assim que o processo de atualização terminar, todos os aplicativos da web serão atualizados; no entanto, eles usarão a autenticação do modo clássico. Você pode converter esses aplicativos da web da autenticação do modo clássico para Autenticação Baseada em reivindicações.
ferramentas de terceiros: FBA Manager SP2010 (autenticação baseada em formulários) Dev-IT