4D v16Single Sign On (SSO) em Windows |
||||||||||||||||||||
|
4D v16
Single Sign On (SSO) em Windows
Single Sign On (SSO) em Windows
4D Server oferece uma nova funcionalidade que lhe permite implementar funcionalidades SSO (Single Sign On) em soluções cliente-servidor em Windows. A implementação de SSO em suas soluções 4D permitirá aos usuários acessar a aplicação 4D em Windows sem ter que voltar a introduzir sua senha quando já estiverem registrados no dominio Windows de sua empresa (utilizando Active Directory). Atrás, a aplicação 4D Server pode ter acesso a autenticação de início de sessão de Windows, que pode ser utilizada para iniciar a sessão do usuário 4D no banco de dados utilizando o método de início de sessão normal. Nota: Para aprender outras propriedades de segurança, veja 4D Security guide. A propriedade SSO está disponível:
Normalmente, a funcionalidade SSO não está habilitada em 4D Server. Para se beneficiar destas funcionalidades, é necessário estabelecer a nova opção Autenticação de usuário com servidor de dominio na página cliente-servidor do quadro de diálogo Propriedades do banco de dados de 4D Server: Quando selecionar esta opção, 4D se conecta de forma transparente ao diretório Active do servidor dominio de Windows e obtém os tokens de autenticação disponíveis. Esta opção oferece autenticação padrão através do protocolo NTLM. 4D suporta os protocolos NTLM e Kerberos. O protocolo utilizado é selecionado automaticamente por 4D em função da configuração atual (ver Exigências para SSO). Se desejar utilizar o protocolo Kerberos, é necessário preencher o campo SPN adicional (ver mais adiante). Se desejar utilizar Kerberos como protocolo de autenticação, também é necessário preencher a opção Nome principal do serviço na página cliente-servidor/Opções do quadro de diálogo Propriedades do banco de dados: Esta opção declara o SPN tal como se estabelece na configuração Active Directory. Um nome principal de serviço é um identificador único de uma instância de serviço. Os SPNs são utilizados pela autenticação Kerberos para associar uma instância de serviço com uma conta de serviço de início de sessão. Isto permite que uma aplicação cliente solicite que o serviço autentique uma conta mesmo se o cliente não tiver o nome da conta. Para mais informação, por favor consulte a página SPN no site web de msdn.O O identificador SPN deve respeitar este padrão:
onde:
Quando as funcionalidades SSO estão ativas (ver acima), pode confiar na autenticação de usuário baseada nas credenciais de sessão de Windows para abrir uma sessão de usuário em 4D Server. Lembre que a funcionalidade SSO só oferece um início de sessão autenticado, deve passar esta informação de acesso a seu método de início de sessão 4D padrão. Quando uma aplicação remota 4D tenta se conectar ao servidor, deve chamar ao novo comando 4D [#cmd id="1355"/, que devolverá o inicio de sessão do usuário, tal como se define no Active Directory. Depois, pode passar esta informação de acesso a seu proprio sistema de identificação (utilizando o usuário e grupos integrados, os comandos LDAP, ou qualquer mecanismo personalizado) para abrir a sessão apropriada para o usuário remoto em seu aplicativo 4D. Este principio se desceve no seguinte gráfico: O comando [#cmd id="1355"/ deve ser chamado no método base On Server Open Connection Database Method, que se chama cada vez que um 4D remoto abre uma nova conexão ao banco 4D Server. Se a autenticação falhar pode devolver um valor não nulo em $0 para recusar a conexão. Para chamar o comando Current client authentication , (autenticação de cliente atual) use a sintaxe abaixo: login:=Current client authentication(domain;protocol) onde:
Para saber mais sobre este comando, veja a descrição do comando Current client authentication . 4D Server maneja diversas configurações SSO, dependendo da arquitetura atual e configurações. O protocolo usado apra autenticação (NTLM ou Kerberos) assim como a informação retornada pelo comando Current client authentication dependem da configuração atual, se todas as exigências forem respeitadas (abaixo). O protocolo atualmente usado para autenticação é retornado no parâmetro protocolo do comandoCurrent client authentication. A tabela abaixo oferece as exigências da autenticaçao NTLM ou Kerberos:
(*) Esta configuração específica é suportada: o usuário 4D remoto é uma conta local em uma máquina que pertence ao mesmo AD que 4D Server. Neste caso, o parâmetro dominio é preenchido com o nome da máquina 4D Server. Note que o suporte depende das configurações atuais do usuário: se não estiver disponível, strings vazias são retornadas. (**) se todas as exigências Kerberos forem respeitadas mas o comando Current client authentication retornar "NTLM" em protocolo, signfica que enfrenta uma das situaçoes abaixo:
Nota: uma sintaxe válida não significa que a declaração SPN seja coreta, em particular, se o SPN não existir em AD, Current client authentication retorna uma string vazia.
Ver também
|
PROPRIEDADES
Produto: 4D
HISTÓRIA
Criado por: 4D v15 R5 ARTICLE USAGE
Manual de 4D Server ( 4D v16) |
||||||||||||||||||