Árvore de páginas

Obtém a credencial do usuário, no sistema operacional, no qual está autenticado.

Importante

Esta função suporta apenas o Active Directory, não possui suporte ao Active Directory Federation Services.

🚨 Para uso de outros IDP (Identity provider) é necessário o Identity.

Abaixo mais detalhes sobre estes serviços:

O Active Directory ou AD é uma implementação da Microsoft de serviço de diretório no protocolo LDAP que armazena informações sobre objetos em rede de computadores e disponibiliza essas informações a usuários e administradores desta rede.

O Active Directory Federation Services ou ADFS é um provedor de identidade (IDP) fornecido pela Microsoft que funciona como um intermediário a um serviço ou domínio externo e permite a consulta e uso das credenciais existentes do Active Directory.

Sintaxe

GetCredential()

Retorno

Nome

Tipo

Descrição

cCredentialId

caractere

Retorna uma string que corresponde a credencial do usuário.

Observações

  • O retorno será um valor único por usuário e máquina.
  • A credencial retornada é da estação em que o Smart Client está sendo executado.
  • Em builds iguais ou superiores a 7.00.131227A - 13.2.3.35 e builds iguais ou superiores a 7.00.170117A - 17.3.0.3 (Lobo Guará), a fonte de dados que representa o identificador único do host foi modificado para os sistemas operacionais Linux e Mac OS, provocando uma string maior no retorno.
  • Para os Sistemas Operacionais Linux e Mac OS a composição da string de retorno segue a seguinte sequência:
  1. S
  2. ID de usuário real do processo (real user ID)
  3. ID de usuário efetivo (effective user ID)
  4. ID do grupo real do processo (real group ID)
  5. ID do grupo efetivo (effective group ID)
  6. Identificador único do host: Corresponde ao "machine-id" em Linux e ao "Hardware UUID" em Mac OS
  7. Os valores acima são separados por hífen. O identificador de host do Mac OS possui hifens em sua composição original.
  8. Falhas na obtenção de qualquer um desses valores podem indicar má configuração do Sistema Operacional e devem ser analisadas pelo administrador da estação.
  • Exemplo de ClassID
  1. Windows : "S-1-5-21-776561741-725345543-682003330-1003"
  2. Linux : "S-1000-1000-1000-1000-fde197e419c64c7ea3d5ce1307cd2999"
  3. Mac OS: "S-505-505-20-20-510FA5E1-5FF4-5D47-8D34-97A7ECB4D774"

Exemplos

User Function tstClassID()
  Local cCredential := NIL
  cCredential := GetCredential()
    
  if valtype(cCredential) == 'C'
    conout("Ok")
    conout(cCredential)
  else
    conout("Try Again!!!")
  endif
return

Abrangência

Microsiga Protheus 8.11 , Protheus 10 , TOTVS Application Server 10 , ByYou Application Server

  • Sem rótulos