Skip to content

Commit

Permalink
Merge pull request #320 from Sensedia/release-enrollments-2024-12-20
Browse files Browse the repository at this point in the history
feat(Enrollments): lançamento versão 2.1.0
  • Loading branch information
guilhermedecampo authored Dec 20, 2024
2 parents a6ddbf5 + 6256aa0 commit 375ecf6
Show file tree
Hide file tree
Showing 4 changed files with 2,761 additions and 5 deletions.
6 changes: 3 additions & 3 deletions dictionary/enrollmentCreateFidoRegistrationOptions_v2.csv
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,13 @@ Informações mais detalhadas sobre a construção de namespaces devem ser consu
";Texto;256;Obrigatório;"^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*'%\/?#]+$";;1;1;"";Não permitido;string;urn:bancoex:C1DD33123;
/data/rp;rp;;Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/rp/id;id;Identificador único da Relying Party. Esse campo deve ser preenchido com o valor que é enviado na requisição no campo /data/rp.;Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/rp/name;name;Nome amigável da Relying Party para exibição aos usuários. Pode ser obtido através do Software Statement Assertion, atributo software_client_name.;Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/rp/name;name;Nome amigável da Relying Party para exibição aos usuários. Deve ser obtido através do Software Statement Assertion, atributo software_client_name.;Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/user;user;;Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/user/id;id;"Identificador único do usuário sob registro em formato base64. A conversão deste valor para o formato original (BufferSource ou ArrayBuffer) não deve ultrapassar 64 bytes.
O identificador único deve ser opaco, ou seja, não deve carregar dados pessoais sobre o usuário, por exemplo (não exaustivo) um UUID RFC4122 cumpre com os requisitos desse campo
";Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/user/name;name;Identificador do usuário human-readable.;Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/user/displayName;displayName;Identificador do usuário para fins de apresentação.;Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/user/displayName;displayName;Identificador do usuário para fins de apresentação. Deve ser formado pelo nome social, se existente, ou nome e sobrenome do cadastro do cliente no detentor de contas.;Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/challenge;challenge;Sequência de bytes aleatórios gerados pelo servidor FIDO2. Deve ser o valor em formato base64url sem padding.;Texto;;Obrigatório;;;1;1;"";Não permitido;string;;
/data/pubKeyCredParams;pubKeyCredParams;;Lista;;Obrigatório;;;1;N;"";Não permitido;array;;
/data/pubKeyCredParams/alg;alg;Identificador do algoritmo (COSE);Inteiro;;Obrigatório;;;1;1;"";Não permitido;integer;-7;
Expand All @@ -33,4 +33,4 @@ O identificador único deve ser opaco, ou seja, não deve carregar dados pessoai
/data/authenticatorSelection/requireResidentKey;requireResidentKey;Indica o requisito de verificação do usuário.;Booleano;;Opcional;;;0;1;"";Não permitido;boolean;;
/data/authenticatorSelection/residentKey;residentKey;Indica o requisito de verificação do usuário.;Texto;;Opcional;;;0;1;"";Não permitido;string;;
/data/attestation;attestation;Indica o tipo de attestation que o autenticador pode utilizar.;Texto;;Opcional;;;0;1;"";Não permitido;string;none, indirect, direct, enterprise;
/data/attestationFormats;attestationFormats;Indica as preferências de formato sobre o campo attestation.;Lista;;Opcional;;;0;N;"";Não permitido;array;packed, tpm, android-key, android-safetynet, fido-u2f, apple, none;
/data/attestationFormats;attestationFormats;Indica as preferências de formato sobre o campo attestation.;Lista;;Opcional;;;0;N;"";Não permitido;array;packed, tpm, android-key, android-safetynet, fido-u2f, apple, none;
118 changes: 118 additions & 0 deletions dictionary/getEnrollment_v2.csv
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
Xpath;Nome;Definição;Tipo de Dado;Tamanho;Mandatoriedade;Formato;Domínio;Mínimo de Ocorrências;Máximo de Ocorrências;Restrições;Nulidade;Tipo de Dado Json;Exemplo;Tamanho mínimo
/data;data;Objeto que agrupa as informações de qual foi o usuário logado que solicitou o cancelamento do vínculo de conta.;Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/enrollmentId;enrollmentId;"Identificador único do vínculo de conta criado para a iniciação de pagamento solicitada. Deverá ser um URN - Uniform Resource Name.
Um URN, conforme definido na [RFC8141](https://tools.ietf.org/html/rfc8141) é um Uniform Resource
Identifier - URI - que é atribuído sob o URI scheme ""urn"" e um namespace URN específico, com a intenção de que o URN
seja um identificador de recurso persistente e independente da localização.
Considerando a string urn:bancoex:C1DD33123 como exemplo para consentId temos:
- o namespace(urn)
- o identificador associado ao namespace da instituição transnmissora (bancoex)
- o identificador específico dentro do namespace (C1DD33123).
Informações mais detalhadas sobre a construção de namespaces devem ser consultadas na [RFC8141](https://tools.ietf.org/html/rfc8141).
";Texto;256;Obrigatório;"^urn:[a-zA-Z0-9][a-zA-Z0-9\-]{0,31}:[a-zA-Z0-9()+,\-.:=@;$_!*'%\/?#]+$";;1;1;"";Não permitido;string;urn:bancoex:C1DD33123;
/data/creationDateTime;creationDateTime;O instante em que o vínculo de conta foi criado no ambiente da detentora.;Date Hora;20;Obrigatório;^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$;;1;1;"";Não permitido;string;2023-07-12T08:30:00Z;
/data/status;status;"Status do vínculo de conta:

• AWAITING_AUTHORISATION: Vínculo de conta criado e aguando autorização no ambiente da dentora de conta.

• AWAITING_ENROLLMENT: Vínculo de conta autorizado no ambiente da detentora e aguardando o vínculo de credenciais (FIDO2).

• AUTHORISED: Vínculo de conta pronto para uso.

• REVOKED: Vínculo de conta revogado.

• REJECTED: Vínculo de conta rejeitado.
";Texto;;Obrigatório;;"AWAITING_AUTHORISATION
AWAITING_ENROLLMENT
AUTHORISED
REVOKED
REJECTED";1;1;"";Não permitido;string;;
/data/statusUpdateDateTime;statusUpdateDateTime;O instante em que ocorreu a última alteração de status do vínculo de conta.;Date Hora;20;Obrigatório;^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$;;1;1;"";Não permitido;string;2023-07-12T08:30:00Z;
/data/permissions;permissions;;Lista;;Obrigatório;;PAYMENTS_INITIATE;1;N;"";Não permitido;array;PAYMENTS_INITIATE;
/data/expirationDateTime;expirationDateTime;O instante de expiração deste vínculo de conta, de acordo com a regulação vigente.;Date Hora;20;Obrigatório;^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$;;1;1;"";Não permitido;string;2023-07-12T08:30:00Z;
/data/loggedUser;loggedUser;Usuário (pessoa natural) que encontra-se logado na iniciadora.;Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/loggedUser/document;document;;Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/loggedUser/document/identification;identification;Número do documento de identificação oficial do usuário.;Texto;11;Obrigatório;^\d{11}$;;1;1;"";Não permitido;string;11111111111;
/data/loggedUser/document/rel;rel;Tipo do documento de identificação oficial do usuário.;Texto;3;Obrigatório;^[A-Z]{3}$;;1;1;"";Não permitido;string;CPF;
/data/businessEntity;businessEntity;Usuário (pessoa jurídica) que encontra-se logado na iniciadora. [Restrição] Preenchimento obrigatório se usuário logado na iniciadora for um CNPJ (pessoa jurídica).;Objeto;;Condicional;;;0;1; Preenchimento obrigatório se usuário logado na iniciadora for um CNPJ (pessoa jurídica).;Não permitido;object;;
/data/businessEntity/document;document;;Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/businessEntity/document/identification;identification;Número do documento de identificação oficial do titular pessoa jurídica.;Texto;14;Obrigatório;^\d{14}$;;1;1;"";Não permitido;string;11111111111111;
/data/businessEntity/document/rel;rel;Tipo do documento de identificação oficial do titular pessoa jurídica.;Texto;4;Obrigatório;^[A-Z]{4}$;;1;1;"";Não permitido;string;CNPJ;
/data/debtorAccount;debtorAccount;"Objeto que contém a identificação da conta de origem do pagador.
As informações quanto à conta de origem do pagador poderão ser trazidas no vínculo para a detentora, caso a iniciadora tenha coletado essas informações do cliente. Do contrário, será coletada na detentora e trazida para a iniciadora como resposta à criação do vínculo.
";Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/debtorAccount/ispb;ispb;"Deve ser preenchido com o ISPB (Identificador do Sistema de Pagamentos Brasileiros) do participante do SPI (Sistema de pagamentos instantâneos) somente com números.
";Texto;8;Obrigatório;^[0-9]{8}$;;1;1;"";Não permitido;string;12345678;8
/data/debtorAccount/issuer;issuer;"Código da Agência emissora da conta sem dígito.
(Agência é a dependência destinada ao atendimento aos clientes, ao público em geral e aos associados de cooperativas de crédito,
no exercício de atividades da instituição, não podendo ser móvel ou transitória).
[Restrição] Preenchimento obrigatório para os seguintes tipos de conta: CACC (CONTA_DEPOSITO_A_VISTA) e SVGS (CONTA_POUPANCA).
";Texto;4;Condicional;^[0-9]{1,4}$;;0;1;" Preenchimento obrigatório para os seguintes tipos de conta: CACC (CONTA_DEPOSITO_A_VISTA) e SVGS (CONTA_POUPANCA).
";Não permitido;string;1774;1
/data/debtorAccount/number;number;"Deve ser preenchido com o número da conta transacional do usuário pagador, com dígito verificador (se este existir),
se houver valor alfanumérico, este deve ser convertido para 0.
";Texto;20;Obrigatório;^[0-9]{1,20}$;;1;1;"";Não permitido;string;1234567890;1
/data/debtorAccount/accountType;accountType;"Tipos de contas usadas para pagamento via Pix.
Modalidades tradicionais previstas pela Resolução 4.753, não contemplando contas vinculadas,
conta de domiciliados no exterior, contas em moedas estrangeiras e conta correspondente moeda eletrônica.
Segue descrição de cada valor do ENUM para o escopo do Pix.
CACC - Current - Conta Corrente.
SVGS - Savings - Conta de Poupança.
TRAN - TransactingAccount - Conta de Pagamento pré-paga.
";Texto;;Obrigatório;;"CACC
SVGS
TRAN";1;1;"";Não permitido;string;CACC;
/data/cancellation;cancellation;;Objeto;;Opcional;;;0;1;"";Não permitido;object;;
/data/cancellation/cancelledBy;cancelledBy;"Informação relacionada ao usuário pagador que solicitou o cancelamento do vínculo de conta.
Pode estar ausente em cenários de processos automatizados realizarem o cancelamento do vínculo, por exemplo, por data de expiração.
";Objeto;;Opcional;;;0;1;"";Não permitido;object;;
/data/cancellation/cancelledBy/document;document;Objeto que consolida os dados do documento do usuário que solicitou o cancelamento.;Objeto;;Obrigatório;;;1;1;"";Não permitido;object;;
/data/cancellation/cancelledBy/document/identification;identification;Número do documento do usuário responsável pelo cancelamento do vínculo de conta.;Texto;11;Obrigatório;^\d{11}$;;1;1;"";Não permitido;string;11111111111;
/data/cancellation/cancelledBy/document/rel;rel;Tipo do documento do usuário responsável pelo cancelamento do vínculo de conta.;Texto;3;Obrigatório;^[A-Z]{3}$;;1;1;"";Não permitido;string;CPF;
/data/cancellation/reason;;Motivo da rejeição do vínculo de conta.;Objeto;;Opcional;;;0;1;"";Não permitido;object;;
/data/cancellation/reason/rejectionReason;rejectionReason;"Indica o motivo do cancelamento do vínculo de conta. Valores possíveis:

• REJEITADO_TEMPO_EXPIRADO_AUTHORISATION: Expiração automática devido a timeout no status ""AWAITING_AUTHORISATION"". O processo de redirecionamento não foi concluído com sucesso a tempo.

• REJEITADO_TEMPO_EXPIRADO_ENROLLMENT: Expiração automática devido a timeout no status ""AWAITING_ENROLLMENT"". O processo de criação e envio de credenciais FIDO2 não foi condluído com sucesso a tempo.

• REJEITADO_MAXIMO_CHALLENGES_ATINGIDO: Vínculo de conta rejeitado devido várias tentativas frustradas.

• REJEITADO_MANUALMENTE: Cancelamento manual, explicitamente a mando do usuário.

• REJEITADO_DISPOSITIVO_INCOMPATIVEL: Dispositivo não suporta o protocolo FIDO.

• REJEITADO_FALHA_INFRAESTRUTURA: Falha na infraestrutura na detentora na etapa anterior ao aceite de vínculo.

• REJEITADO_SEGURANCA_INTERNA: Vínculo de conta rejeitado devido à política de segurança de instituição detentora ou iniciadora considerando a análise dos sinais de risco.

• REJEITADO_FALHA_HYBRID_FLOW: Vínculo de conta rejeitado por falha técnica no processo de redirecionamento (por exemplo: troca de authorization code por access token no FAPI Hybrid flow)

• REJEITADO_FALHA_FIDO: Vínculo de conta rejeitado por falha técnica no processo de validação ou associação da credencial pública FIDO.

• REJEITADO_OUTRO: Outros motivos não descritos pelas demais. Indicar, neste caso, o motivo em ""additionalInformation"".
";Texto;;Obrigatório;;"REJEITADO_TEMPO_EXPIRADO_AUTHORISATION
REJEITADO_TEMPO_EXPIRADO_ENROLLMENT
REJEITADO_MAXIMO_CHALLENGES_ATINGIDO
REJEITADO_MANUALMENTE
REJEITADO_DISPOSITIVO_INCOMPATIVEL
REJEITADO_FALHA_INFRAESTRUTURA
REJEITADO_FALHA_HYBRID_FLOW
REJEITADO_FALHA_FIDO
REJEITADO_SEGURANCA_INTERNA
REJEITADO_OUTRO";1;1;"";Não permitido;string;;
/data/cancellation/additionalInformation;additionalInformation;;Texto;2048;Opcional;[\w\W\s]*;;0;1;"";Não permitido;string;Contrato entre iniciadora e detentora interrompido;
/data/cancellation/cancelledFrom;cancelledFrom;"Campo utilizado para informar o meio pelo qual foi realizado o cancelamento do vínculo de conta. Valores possíveis:

INICIADORA - Vínculo de conta nos canais da iniciadora.

DETENTORA - Vínculo de conta nos canais da detentora.
";Texto;;Obrigatório;;"INICIADORA
DETENTORA";1;1;"";Não permitido;string;;
/data/cancellation/rejectedAt;rejectedAt;Instante de rejeição do vínculo de conta no ambiente da detentora.;Date Hora;20;Opcional;^(\d{4})-(1[0-2]|0?[1-9])-(3[01]|[12][0-9]|0?[1-9])T(?:[01]\d|2[0123]):(?:[012345]\d):(?:[012345]\d)Z$;;0;1;"";Não permitido;string;2023-07-12T08:30:00Z;
/data/transactionLimit;transactionLimit;"Valor máximo, por transação, admitido para este vínculo de conta. Este limite não garante a autorização de iniciações de pagamento;
servindo como referência para a iniciadora evitar a criação de consentimentos de valores tais que, garantidamente, não serão autorizados.
";Texto;19;Obrigatório;^((\d{1,16}\.\d{2}))$;;1;1;"";Não permitido;string;100000.12;4
/data/dailyLimit;dailyLimit;"Limite diário cumulativo para este vínculo de conta. Este limite não garante a autorização de iniciações de pagamento;
servindo como referência para a iniciadora evitar a criação de consentimentos para valores tais que, garantidamente, não serão autorizados.
";Texto;19;Obrigatório;^((\d{1,16}\.\d{2}))$;;1;1;"";Não permitido;string;100000.12;4
Loading

0 comments on commit 375ecf6

Please sign in to comment.