Como configurar a Autenticação Baseada em Formulários (FBA)

Este post é uma adaptação de um blog, que eu considero a autoridade suprema para FBA configuração, escrito por Chris Coulson,

Leia a autoridade suprema aqui para 2016 e aqui para 2013

2010 – Veja as etapas de 2013, certifique-se de que o 2010 do aplicativo web usa autenticação baseada em declarações, em seguida, depois que tudo é o mesmo, você não pode usar um clássico de aplicação web.

nota: com este método, você não precisa modificar a web.configuração do administrador central ou de qualquer um dos aplicativos da web, presente ou futuro. Você só precisa modificar a máquina.config e a web.configuração dos serviços da Web SecurityTokenServiceApplication.

então; este é o método preferido. Existem outros métodos por aí que você modifica a web do administrador central.config, a web.configuração de cada aplicativo da web e do aplicativo de serviço de token de segurança web.config; mas, quem quer ir a todo esse problema. E tem que repetir para cada novo aplicativo da web, não menos. Sou preguiçoso e prefiro que o FBA seja uma possibilidade em todos os aplicativos da web futuros e atuais. Eu também fico muito esboçado quando penso em Modificar a web do administrador central.config; então, é por isso que o método que é explicado em detalhes, no blog de Chris Coulson, é ideal.

etapas de alto nível

  • Crie o banco de dados executando aspnet_regsql.exe encontrado em c:\windows\Microsoft.NET\Framework64\v4.0.30319 \
  • faça backups de todos os arquivos que você está prestes a modificar, por exemplo, a máquina.config, a web.configuração do SecurityTokenServiceApplication
  • faça as edições, prestando muita atenção às seções em que você está. Certifique-se de que, ao modificar o provedor de associação, secção, e o papel de provedor de seção, que você não modifique o fornecedor de perfis de seção
  • Atualizar o Provedor de Autenticação do aplicativo web
  • Instalar o apropriado FBAPack solução para facilitar o gerenciamento de usuários
    • 2016 – https://www.visigo.com/products/sharepoint-fba-pack/download/
    • 2013 – ir para o visigo site para a versão estável mais recente deste download grátis
    • 2010 – vá para o visigo site para a versão estável mais recente deste download grátis
  • início de sessão com o windows creds e adicionar um usuário FBA, em seguida, teste a que os vários e que você pode fazer o login com o usuário FBA

etapas mais detalhadas

Crie o banco de dados executando aspnet_regsql.exe

  • faça Login no seu servidor SharePoint
  • navegue até c:\windows\Microsoft.NET\Framework64\v4.0.30319\
  • execute aspnet_reqsql.exe como administrador

  • após o ASP.NET o Assistente de configuração do SQL é aberto, leia as informações e clique em Avançar, como um chefe!

  • na tela Selecionar uma opção de configuração, use a seleção padrão de “configurar SQL Server para serviços de aplicativos” e clique em Avançar, clique novamente como um chefe!

  • Em “Selecione o Servidor e o Banco de dados” de tela, digite o Alias para o SQL server, ou o nome do SQL Server, se deus me livre de você não usar um alias quando você configurar o farm, e
  • aceitar o <por omissão> nome do banco de dados. Se você alterar o nome do banco de dados, certifique-se de atualizar o nome na entrada para a máquina.Config connection string nas próximas etapas. Este post assume que você deixou o nome < padrão > como mostrado na próxima captura de tela. Deixar o nome padrão cria um banco de dados chamado aspnetdb.
  • Clique em Avançar

Aviso: O exemplo acima, à esquerda o nome e o padrão utilizado o SQL Alias <- essa última frase foi falado em “SharePoint ” Nerd” e traduzido significa “eu usei um Alias SQL e banco de dados portátil”

Após clicar em avançar, será exibida a seguinte tela e você deve clicar em avançar, se você estiver OK com a informação. Não faz mal lê-lo, pois se houver um erro de Digitação, esta é a sua chance de alterá-lo.

em seguida, na próxima tela, clique em Concluir.

  • faça Login no seu SQL server
  • abra o SQL Server Management Studio (SSMS.exe) e forneça sua conta do SharePoint Farm, a conta de serviço que executa os Serviços Compartilhados e o pool de aplicativos de pesquisa e a(s) Conta (s) de serviço do pool de aplicativos do conteúdo da web ou do site db_owner no aspnetdb.

Nota: se você receber algum tipo de erro sobre não conseguir se conectar à instância do SQL server, verifique se os serviços do SQL server e do SQL server agent foram iniciados. Não se preocupe com o navegador SQL Server

  • clique na pasta de segurança para expandi-la
  • clique na pasta logins para expandi-la
  • clique com o botão direito do mouse na(s) Conta (s) de usuário executando o pool de aplicativos security token service (você pode determinar isso no inetmgr.exe no seu SharePoint server)
  • clique em propriedades
  • clique em Mapeamento de Usuário
  • Selecione o aspnetdb nos Usuários mapeados para este logon janela
  • Atribuir a dbo no Banco de dados de associação da função: o que conta em que você está trabalhando com
  • clique em Ok

Fazer backup dos arquivos que você está prestes a modificar, por exemplo, a máquina.config, a web.configuração do SecurityTokenServiceApplication

  • navegue até C:\Windows\Microsoft.Net\Framework64\v4.0.30319\Config
  • faça um backup da máquina.config e salve-o com um .extensão bak
  • edite a máquina.config
  • Role para a <ConnectionStrings>

As seqüências de conexão seção será parecido com a imagem acima

  • adicione o seguinte código para ele
a máquina.configuração de modificação de parte 1

1
<adicionar connectionString=”Server=SharePointSQL;Banco de dados=aspnetdb;Integrated Security=true” name=”FBADB” />

Nota: pode ser necessário modificar o nome do SQL Server a partir do Alias que eu estava usando. Você pode não ter um alias no lugar e você pode determinar isso olhando cliconfg.exe. Certifique – se de que a linha de código que diz ” Server=SharePointSQL….is atualizado para qualquer que seja o seu servername, ou de preferência o seu alias (por exemplo, “Server = SPAlias….ou ” Server = MDCP15SQL … ou qualquer outra coisa)

depois que as strings de conexão forem atualizadas, será algo assim:

Encontre a seção< associação > < provedores>, ficará assim

Nota: Você vai ser a adição de uma seção para a <associação> <provedores> e o <Papel> <Provedores> não é o perfil de fornecedores

certifique-se de atualizar as seções corretas

  • Adicionar este para os provedores de Associação
a máquina.config parte 2

1
2
3
4
5
6
7
8
9
10
11
12
13
14

<adicionar nome=”FBAMembershipProvider”
type=”do Sistema.Site.Seguranca.SqlMembershipProvider, Sistema.Web, Versão = 4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”
connectionstringname com=”FBADB”
enablePasswordRetrieval=”false”
enablePasswordReset=”true”
requiresQuestionAndAnswer=”false”
applicationName=”/”
requiresUniqueEmail=”true”
passwordFormat=”Hash”
maxInvalidPasswordAttempts=”5″
minRequiredPasswordLength=”7″
minRequiredNonalphanumericCharacters=”1″
passwordAttemptWindow=”10″
passwordStrengthRegularExpression=”” />

  • Agora adicione isso aos provedores de função
máquina.config p3

1
2

<adicionar nome=”FBARoleProvider” connectionstringname com=”FBADB” applicationName=”/”
type=”do Sistema.Site.Seguranca.SqlRoleProvider, Sistema.Web, Versão = 4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />

O produto acabado deve olhar como este

Observe como as edições não foram feitas para o Perfil de Fornecedores. Cuidado com isso, é fácil perder.

Agora abra o aplicativo de Serviço de Token de segurança web.config
  • open IIS manager (inetmgr.exe)
  • Expanda sites
  • Expandir os serviços web do SharePoint
  • botão direito do mouse no SecurityTokenServiceApplication
  • clique em Explorar
  • Tirar uma cópia da web.config como um backup e salve-o com um .bak extensão

  • Adicione o seguinte logo acima do último fechamento de configuração do tag </configuração>
securitytokenserviceapp web.config

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

<system.web>
<associação>
<provedores de>
<adicionar nome=”FBAMembershipProvider”
type=”do Sistema.Site.Seguranca.SqlMembershipProvider, Sistema.Web, Versão = 4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”
connectionstringname com=”FBADB”
enablePasswordRetrieval=”false”
enablePasswordReset=”true”
requiresQuestionAndAnswer=”false”
applicationName=”/”
requiresUniqueEmail=”true”
passwordFormat=”Hash”
maxInvalidPasswordAttempts=”5″
minRequiredPasswordLength=”7″
minRequiredNonalphanumericCharacters=”1″
passwordAttemptWindow=”10″
passwordStrengthRegularExpression=”” />
</fornecedores>
</associação>
<roleManager>
<provedores de>
<adicionar nome=”FBARoleProvider” connectionstringname com=”FBADB” applicationName=”/”
type=”do Sistema.Site.Seguranca.SqlRoleProvider, Sistema.Web, Versão=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a” />
</provedores de>
</roleManager>
</do sistema.web>

quando terminar, deve ficar assim, só que não terá a mancha amarela.

Ok, Agora você está pronto para fazer o SharePoint trabalhar com essas alterações, certifique-se de torná-los em todos os servidores no farm se você tiver mais de um servidor SharePoint. Não é necessário no SQL. Abra a administração Central apenas para ter certeza de que você não aniquilou sua fazenda. Abra algumas coleções de sites que estão no aplicativo da web que aplicarão o FBA.

você pode redefinir o IIS para uma boa medida, mas realmente não deve ser necessário, pois as alterações nesses arquivos fazem com que isso aconteça automaticamente, ou pelo menos deveria.

Atualizar o Provedor de Autenticação do aplicativo web

  • Abra administração Central e navegue para gerenciar aplicativos web
  • Se não estender aplicativo web para outro horário, e usando de dupla autenticação, selecione o aplicativo web e clique em provedores de autenticação da faixa de opções. Caso contrário, estenda o aplicativo da web e, na zona estendida, defina o FBA.

para definir o FBA execute o seguinte:

  • Vá em Gerenciar Aplicativos Web
  • Selecione o aplicativo Web no qual você deseja configurar a Autenticação Baseada em Formulários
  • Clique em Provedores de Autenticação
  • Selecione a Zona que você deseja configurar, neste exemplo, estamos a configuração dual (autenticação Integrada do Windows e FBA)

uma Vez que a zona de configuração de tela abre,

  • role para baixo até a seção relacionada com a FBA e adicionar os nomes que você usou o provedor de associação e o papel de provedor de seções da .alterações no arquivo de configuração. Se você não modificou os nomes dos provedores de associação e função nas seções de código que lêem <add name= “FBAMembershipProvider”….e <Adicionar nome= ” FBARoleProvider….. então você pode usar esses nomes, senão use o que você os alterou também.

  • Você está indo para marque a caixa de seleção Habilitar Autenticação Baseada em Formulários (FBA) e, de seguida, introduza os nomes que você usou

  • Clique em salvar para Salvar as alterações

Agora se você tentar abrir um aplicativo web e um conjunto de sites, você está indo para obter o padrão de Sinal de linha de comandos para a FBA, que irá permitir que você escolha entre Integrada do Windows ou Autenticação Baseada em Formulários

Você ainda não posso usar a FBA, mesmo se você selecioná-lo e tentar usá-lo, porque não há qualquer FBA usuários no aspnetdb neste momento. O pacote FBA permitirá que você adicione usuários ao banco de dados. O post de 2013 no Blog de Chris Coulson para 2013 SharePoint explica outro método.

solução FBA Pack

a solução FBA Pack permitirá que você adicione e gerencie usuários

baixe a solução e implante-a em seu servidor SharePoint. Ele vem com um script de implantação realmente incrível que permite segmentar um aplicativo da web ou todo o farm.

depois de salvar a solução, em c:\deploy, por exemplo, abrir uma administrativas shell de gerenciamento do SharePoint e execute-o como mostrado abaixo, se você quiser implantadas em todo o farm

Se você quiser implementado para um aplicativo web específico, em seguida, em vez de escrever .\implantar.ps1 você digite .\implantar.ps1 http://urlToThatSpecificWebApplication.Domain.com onde domain.com é seu domínio e nível superior sufixo de domínio (e.g. sharepoint.local, springfield.local, bdbsa.org, ssa.gov, ou spt.local, ou whatevs)

Leave a Reply

O seu endereço de email não será publicado.