Capítulo 43. Configuração de regras de mapeamento de certificados na Gestão de Identidade
43.1. Regras de mapeamento de certificados para configuração de autenticação em Cartões Smart Card
As regras de mapeamento de certificados são uma forma conveniente de permitir aos usuários autenticar usando certificados em cenários em que o administrador de Gerenciamento de Identidade (IdM) não tem acesso a certos certificados dos usuários. Esta falta de acesso é normalmente causada pelo fato de os certificados terem sido emitidos por uma autoridade de certificados externa. Um caso de uso especial é representado por certificados emitidos pelo Sistema de Certificados de um Diretório Ativo (AD) com o qual o domínio IdM está em uma relação de confiança.
As regras de mapeamento de certificados também são convenientes se o ambiente IdM for grande com muitos usuários usando cartões inteligentes. Nesta situação, a adição de certificados completos pode ser complicada. O assunto e o emissor são previsíveis na maioria dos cenários e, portanto, mais fáceis de adicionar antes do que o certificado completo. Como administrador do sistema, você pode criar uma regra de mapeamento de certificados e adicionar dados de mapeamento de certificados a uma entrada de usuário mesmo antes de um certificado ser emitido para um determinado usuário. Uma vez emitido o certificado, o usuário pode entrar usando o certificado, mesmo que o certificado completo ainda não tenha sido carregado para a entrada do usuário.
Além disso, como os certificados têm que ser renovados a intervalos regulares, as regras de mapeamento de certificados reduzem as despesas administrativas. Quando um certificado de usuário é renovado, o administrador não tem que atualizar a entrada do usuário. Por exemplo, se o mapeamento for baseado nos valores Subject
e Issuer
, e se o novo certificado tiver o mesmo assunto e emissor que o antigo, o mapeamento ainda se aplica. Se, em contraste, o certificado completo fosse utilizado, então o administrador teria que carregar o novo certificado para a entrada do usuário para substituir o antigo.
Para estabelecer o mapeamento de certificados:
- Um administrador tem que carregar os dados de mapeamento do certificado (normalmente o emissor e o sujeito) ou o certificado completo em uma conta de usuário.
Um administrador tem que criar uma regra de mapeamento de certificados para permitir o login bem sucedido no IdM para um usuário
- cuja conta contém um certificado de mapeamento de entrada de dados
- cuja entrada de dados de mapeamento de certificado corresponda às informações do certificado
Para detalhes sobre os componentes individuais que compõem uma regra de mapeamento e como obtê-los e utilizá-los, consulte Componentes de uma regra de mapeamento de identidade em IdM e Obtenção do emissor de um certificado para uso em uma regra de correspondência.
Posteriormente, quando o usuário final apresenta o certificado, armazenado no sistema de arquivos ou em um cartão inteligente, a autenticação é bem sucedida.
43.1.1. Regras de mapeamento de certificados para trusts com domínios do Active Directory
Esta seção descreve os diferentes casos de uso de mapeamento de certificados que são possíveis se uma implantação de IdM estiver em uma relação de confiança com um domínio do Active Directory (AD).
As regras de mapeamento de certificados são uma forma conveniente de permitir o acesso aos recursos de IdM para usuários que possuem certificados de cartão inteligente que foram emitidos pelo confiável Sistema de Certificados AD. Dependendo da configuração do AD, os seguintes cenários são possíveis:
- Se o certificado é emitido pelo AD mas o usuário e o certificado são armazenados no IdM, o mapeamento e todo o processamento do pedido de autenticação ocorre no lado do IdM. Para detalhes de configuração deste cenário, veja Configurando o mapeamento de certificados para usuários armazenados no IdM
Se o usuário for armazenado no AD, o processamento do pedido de autenticação ocorrerá no AD. Existem três subcasos diferentes:
- A entrada do usuário AD contém o certificado completo. Para detalhes de como configurar o IdM neste cenário, veja Configurando o mapeamento de certificados para usuários cuja entrada do usuário AD contém o certificado completo.
-
O AD é configurado para mapear certificados de usuário para contas de usuário. Neste caso, a entrada do usuário do AD não contém o certificado completo, mas contém um atributo chamado
altSecurityIdentities
. Para detalhes de como configurar o IdM neste cenário, veja Configurando o mapeamento de certificados se o AD estiver configurado para mapear certificados de usuários para contas de usuários. -
A entrada do usuário AD não contém nem o certificado completo nem os dados de mapeamento. Neste caso, a única solução é usar o comando
ipa idoverrideuser-add
para adicionar o certificado inteiro à substituição do ID do usuário do AD no IdM. Para detalhes, veja Configurando o mapeamento do certificado se a entrada do usuário do AD não contiver certificado ou dados de mapeamento.
43.1.2. Componentes de uma regra de mapeamento de identidade na IdM
Esta seção descreve os componentes de um identity mapping rule em IdM e como configurá-los. Cada componente tem um valor padrão que você pode ignorar. Você pode definir os componentes tanto na interface web como na CLI. Na CLI, a regra de mapeamento de identidade é criada usando o comando ipa certmaprule-add
.
- Regra de mapeamento
O componente de regra de mapeamento associa (ou maps) um certificado com uma ou mais contas de usuário. A regra define um filtro de busca LDAP que associa um certificado com a conta de usuário pretendida.
Os certificados emitidos por diferentes autoridades certificadoras (CAs) podem ter propriedades diferentes e podem ser usados em domínios diferentes. Portanto, a IdM não aplica incondicionalmente as regras de mapeamento, mas somente aos certificados apropriados. Os certificados apropriados são definidos usando matching rules.
Observe que se você deixar a opção de regra de mapeamento vazia, os certificados são pesquisados no atributo
userCertificate
como um arquivo binário codificado com DER.Definir a regra de mapeamento na CLI usando a opção
--maprule
.- Regra de correspondência
O componente de regra de correspondência seleciona um certificado ao qual você deseja aplicar a regra de mapeamento. A regra de correspondência padrão corresponde aos certificados com o uso do
digitalSignature key
e o uso doclientAuth extended key
.Definir a regra de correspondência na CLI usando a opção
--matchrule
.- Lista de domínios
A lista de domínios especifica os domínios de identidade nos quais você quer que a IdM procure os usuários ao processar regras de mapeamento de identidade. Se você deixar a opção não especificada, a IdM busca os usuários somente no domínio local ao qual o cliente IdM pertence.
Defina o domínio na CLI usando a opção
--domain
.- Prioridade
Quando múltiplas regras são aplicáveis a um certificado, a regra com a maior prioridade tem precedência. Todas as outras regras são ignoradas.
- Quanto menor o valor numérico, maior será a prioridade da regra de mapeamento de identidade. Por exemplo, uma regra com prioridade 1 tem prioridade mais alta do que uma regra com prioridade 2.
- Se uma regra não tem um valor de prioridade definido, ela tem a prioridade mais baixa.
Definir a prioridade da regra de mapeamento na CLI usando a opção
--priority
.
Exemplo de regra de mapeamento de certificados
Para definir, usando a CLI, uma regra de mapeamento de certificados chamada simple_rule
que permite autenticação para um certificado emitido pelo Smart Card CA
da organização EXAMPLE.ORG
desde que o Subject
desse certificado corresponda a uma entrada certmapdata
em uma conta de usuário no IdM:
# ipa certmaprule-add simple_rule --matchrule '<ISSUER>CN=Smart Card CA,O=EXAMPLE.ORG' --maprule '(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})'
43.1.3. Obtenção do emissor de um certificado para uso em uma regra de correspondência
Este procedimento descreve como obter a informação do emissor de um certificado para que você possa copiá-lo e colá-lo na regra de correspondência de uma regra de mapeamento de certificado. Para obter o formato do emissor exigido por uma regra de correspondência, use o utilitário openssl x509
.
Pré-requisitos
-
Você tem o certificado de usuário em um formato
.pem
ou.crt
Procedimento
Obter as informações do usuário do certificado. Use o utilitário de exibição e assinatura do certificado
openssl x509
:-
a opção
-noout
para evitar a saída de uma versão codificada do pedido -
a opção
-issuer
para emitir o nome do emissor -
a opção
-in
para especificar o nome do arquivo de entrada para ler o certificado de a opção
-nameopt
com o valorRFC2253
para exibir primeiro a saída com o nome distinto relativo mais específico (RDN)Se o arquivo de entrada contiver um certificado de Gerenciamento de Identidade, a saída do comando mostra que o Emissor é definido usando as informações do
Organisation
:# openssl x509 -noout -issuer -in idm_user.crt -nameopt RFC2253 issuer=CN=Certificate Authority,O=REALM.EXAMPLE.COM
Se o arquivo de entrada contiver um certificado do Active Directory, a saída do comando mostra que o Emissor está definido usando as informações do
Domain Component
:# openssl x509 -noout -issuer -in ad_user.crt -nameopt RFC2253 issuer=CN=AD-WIN2012R2-CA,DC=AD,DC=EXAMPLE,DC=COM
-
a opção
Opcionalmente, para criar uma nova regra de mapeamento na CLI baseada em uma regra de correspondência que especifica que o emissor do certificado deve ser o
AD-WIN2012R2-CA
extraído do domínioad.example.com
e o assunto no certificado deve corresponder à entradacertmapdata
em uma conta de usuário no IdM:# ipa certmaprule-add simple_rule --matchrule '<ISSUER>CN=AD-WIN2012R2-CA,DC=AD,DC=EXAMPLE,DC=COM' --maprule '(ipacertmapdata=X509:<I>{issuer_dn!nss_x500}<S>{subject_dn!nss_x500})'
Informações adicionais
Para obter detalhes sobre os formatos suportados para a regra de correspondência e a regra de mapeamento, e uma explicação dos campos de prioridade e domínio, consulte a página de manual sss-certmap(5)
.