Connect to Nets eID Broker with OpenID Connect

O FoxIDs pode ser ligado ao Nets eID Broker com OpenID Connect e, assim, autenticar utilizadores finais com MitID e outras credenciais suportadas pelo Nets eID Broker.

Como configurar o Nets eID Broker em

É possível pedir o número CPR apenas uma vez no primeiro login e não nos logins seguintes.

Pode testar o login Nets eID Broker test com o sample web app online (documentação do sample) clicando em Log in e depois em Nets eID Broker TEST.
Veja a configuração sample Nets eID Broker no FoxIDs Control: https://control.foxids.com/test-corp
Obtenha acesso de leitura com o utilizador reader@foxids.com e a password gEh#V6kSw, depois selecione o ambiente Production e o separador Authentication.

Configuring Nets eID Broker test as OpenID Provider (OP)

Este guia descreve como ligar um método de autenticação FoxIDs ao Nets eID Broker test no ambiente de teste.
Todos os redirect URIs são aceites e, por isso, todos os clientes podem ligar-se sem registo prévio.

Esta ligação usa OpenID Connect Authorization Code flow com PKCE, que é o fluxo OpenID Connect recomendado.

Criar um método de autenticação OpenID Connect no FoxIDs Control Client

  1. Adicione o Name
  2. Adicione a authority Nets eID Broker test https://pp.netseidbroker.dk/op no campo Authority
  3. Na lista Scopes adicione mitid para usar MitID e opcionalmente o scope ssn para pedir o número CPR, veja pedir o número CPR apenas uma vez
  4. Selecione Show advanced
  5. Opcionalmente adicione um Additionally parameter com o nome idp_values e, por exemplo, o valor mitid para mostrar o IdP MitID ou, por exemplo, o valor mitid_erhverv para mostrar o IdP MitID Erhverv.
  6. Adicione o secret de teste Nets eID Broker rnlguc7CM/wmGSti4KCgCkWBQnfslYr0lMDZeIFsCJweROTROy2ajEigEaPQFl76Py6AVWnhYofl/0oiSAgdtg== no campo Client secret
  7. Adicione o client id de teste Nets eID Broker 0a775a87-878c-4b83-abe3-ee29c720c3e7 no campo Optional customer SP client ID
  8. Selecione Read claims from the UserInfo Endpoint instead of the access token or ID token
  9. Clique em Create

É isso, terminou.

O novo método de autenticação pode agora ser selecionado como método de autenticação permitido num registo de aplicação.
A aplicação pode ler os claims do método de autenticação. Opcionalmente pode adicionar * na lista Issue claims do registo de aplicação para emitir todos os claims para a sua aplicação. Ou definir um scope para emitir claims.

Configuring Nets eID Broker as OpenID Provider (OP)

Este guia descreve como ligar um método de autenticação FoxIDs ao Nets eID Broker no ambiente de produção.

É-lhe concedido acesso ao portal admin do Nets eID Broker pela Nets. Documentação do Nets eID Broker documentation.

Esta ligação usa OpenID Connect Authorization Code flow com PKCE, que é o fluxo OpenID Connect recomendado.

1 - Comece por criar um cliente API no portal admin do Nets eID Broker

  1. Navegue até Services & Clients
  2. Selecione o Service Provider
  3. Crie ou selecione um Service
  4. Clique em Add new client
  5. Adicione um nome ao cliente
  6. Selecione Web
  7. Clique em Create
  8. Copie o Client ID
  9. Clique em Create new Client Secret
  10. Selecione Based on password
  11. Adicione um nome para o novo client secret
  12. Clique em Generate on server
  13. Copie o Secret
  14. Clique no separador IDP
  15. Selecione MitID e clique em Add to pre-selected login options, opcionalmente selecione outros
  16. Clique no separador Advanced
  17. Defina PKCE como Active

2 - Depois crie um método de autenticação OpenID Connect no FoxIDs Control Client

  1. Adicione o Name
  2. Adicione a authority Nets eID Broker https://netseidbroker.dk/op no campo Authority
  3. Copie os dois URLs: Redirect URL e Post logout redirect URL
  4. Na lista Scopes adicione mitid para usar MitID e opcionalmente o scope ssn para pedir o número CPR, veja pedir o número CPR apenas uma vez
  5. Selecione Show advanced
  6. Opcionalmente adicione um Additionally parameter com o nome idp_values e, por exemplo, o valor mitid para mostrar o IdP MitID ou, por exemplo, o valor mitid_erhverv para mostrar o IdP MitID Erhverv.
  7. Adicione o secret Nets eID Broker no campo Client secret
  8. Adicione o client id Nets eID Broker no campo Optional customer SP client ID
  9. Selecione Read claims from the UserInfo Endpoint instead of the access token or ID token
  10. Clique em Create

3 - Volte ao portal admin do Nets eID Broker

  1. Clique no separador Endpoints
  2. Adicione os dois URLs do cliente do método de autenticação FoxIDs, Redirect URL e Post logout redirect URL, aos campos Login redirects e Logout redirects.

É isso, terminou.

O novo método de autenticação pode agora ser selecionado como método de autenticação permitido num registo de aplicação.
A aplicação pode ler os claims do método de autenticação. Opcionalmente pode adicionar * na lista Issue claims do registo de aplicação para emitir todos os claims para a sua aplicação. Ou definir um scope para emitir claims.

Only request CPR number once

É possível fazer com que o FoxIDs guarde o número CPR do utilizador em utilizadores externos. Assim, o CPR só é pedido ao utilizador na primeira vez que inicia sessão.

Para isso, vamos configurar o método de autenticação Nets eID Broker para iniciar sessão sem pedir um número CPR e criar um perfil que pede o número CPR. No primeiro login, o FoxIDs inicia subsequentemente autenticação com o perfil para obter o número CPR e guarda a relação entre o sub do utilizador e o número CPR num claim de um utilizador externo.

No método de autenticação Nets eID Broker.

A) Primeiro crie um perfil

  1. Inclua apenas o scope mitid na lista Scopes
  2. Selecione Show advanced
  3. Selecione o separador Profiles
  4. Clique em Add Profile
  5. Adicione um Name, por exemplo Request CPR
  6. Adicione ssn na lista Scopes
  7. Clique em Update - Importante antes de continuar!

Authentication method profile

b) Depois comece a criar utilizadores externos

  1. Selecione o separador Create External Users
  2. Adicione sub no campo Link claim type
  3. Selecione Yes em Optional create/provision external users automatically
  4. Selecione Yes em Overwrite received claims

Authentication method external user

c) Configure as claim transforms

  1. Na secção Create user claim transforms no separador Create External Users
  2. Adicione os claims mitid.has_cpr e dk.cpr em Include claims from authentication method
  3. Clique em Add claim transform e depois em Match claim
    1. Na claim transformation
    2. Adicione _local:cpr_exist no campo New claim
    3. Selecione Add claim, if not match em Action
    4. Adicione dk.cpr no campo Select claim
    5. Adicione false no campo New value
  4. Clique em Add claim transform e depois em Concatenate
    1. Na claim transformation
    2. Adicione _local:request_cpr no campo New claim
    3. Selecione Add claim em Action
    4. Adicione mitid.has_cpr e _local:cpr_exist na lista Concatenate claims
    5. Adicione [{0},{1}] no campo Concatenate format string
  5. Clique em Add claim task e depois em Match claim and value and start authentication
    1. Na claim transformation
    2. Selecione If match em Action
    3. Adicione _local:request_cpr no campo Select claim
    4. Adicione [true,false] no campo Match value
    5. Selecione o perfil Request CPR deste método de autenticação no campo Authentication method
  6. Clique em Add claim transform e depois em Match claim
    1. Na claim transformation
    2. Selecione Remove claim em Action
    3. Adicione mitid.has_cpr no campo Remove claim
  7. Clique em Update

Authentication method claim transform

Scope and claims

Opcionalmente pode criar um scope no registo da aplicação com os claims do Nets eID Broker como Voluntary claims. O scope pode então ser usado por um cliente OpenID Connect ou por outro método de autenticação FoxIDs a atuar como cliente OpenID Connect.

O nome do scope pode ser, por exemplo, nets_eid_broker

Os claims Nets eID Broker mais usados:

  • idp
  • idp_identity_id
  • loa
  • mitid.uuid
  • mitid.has_cpr
  • dk.cpr
  • mitid.age
  • mitid.date_of_birth
  • mitid.identity_name
  • mitid.transaction_id
A sua privacidade

A sua privacidade

Usamos cookies para melhorar a sua experiência nos nossos sites. Clique no botão 'Aceitar todos os cookies' para concordar com a utilização de cookies. Para recusar cookies não essenciais, clique em 'Apenas cookies necessários'.

Visite a nossa página de Política de Privacidade para saber mais