• No results found

Apesar de não ser o objetivo do presente trabalho, faz-se necessária a modelagem das funcionalidades de autenticação e acesso federado de um serviço/aplicação, especial- mente para validar a proposta do autenticador apresentada.

Não se trata, contudo, de especificar e modelar os recursos providos por serviços ou aplicações, tendo em vista que estes podem ser os mais diversos possíveis. O que se busca é estabelecer um conjunto mínimo de requisitos suficientes para permitir a criação ou integração de aplicações com os mecanismos SAML de autenticação federada.

Tendo esse foco em mente, é estabelecido o conjunto de casos de uso voltados ao de- senvolvimento ou adaptação de aplicações e serviços ao contexto de identidade federada e deperimetrizada, conforme mostrado na figura 3.3b.

32 CAPÍTULO 3. MODELA GEM DO A UTENTICADOR ICP/SAML

(a) Provedor de Identidade (IdP). (b) Aplicação (SP).

3.2. IDENTIFICAÇÃO E MODELAGEM DOS CASOS DE USO 33 Tabela 3.1: Caso de Uso: Gerar Assertiva SAML.

Caso de Uso: Gerar Assertiva SAML

Atores: Navegador

Descrição: Entrega ao navegador a assertiva SAML após o logon. Pré-Condições: As mesmas do caso de uso extendido (Autenticar Usuário). Fluxo de Evento

Primário: As mesmas do caso de uso extendido (Autenticar Usuário). Fluxo de Evento

Secundário:

Caso o usuário já tenha efetuado logon com sucesso há me- nos de 6h, o sistema dispensará o processo de logon e en- tregará a assertiva SAML armazenada em cache.

Pós-Condições Redirecionamento do navegador ao provedor de serviço so- licitante, carregando a assertiva SAML.

Pontos de Extensão Casos de Uso Incluídos:

Tabela 3.2: Caso de Uso: Autenticar Usuário.

Caso de Uso: Autenticar Usuário

Atores: Navegador

Descrição: Realizar a autenticação do usuário

Pré-Condições: A solicitação de autenticação deve surgir a partir de um “re-direct” de uma aplicação (SP) compatível com SAML. Fluxo de Evento

Primário:

• Uma tela de apresentação do sistema é exibida. • Caso de uso Solicitar Certificado Digital e PIN.

• O navegador é notificado sobre o status da autenticação. Fluxo de Evento

Secundário:

Pós-Condições Resultado da autenticação. Pontos de Extensão Gerar Assertiva SAML. Casos de Uso

34 CAPÍTULO 3. MODELAGEM DO AUTENTICADOR ICP/SAML Tabela 3.3: Caso de Uso: Solicitar Certificado Digital e PIN.

Caso de Uso: Solicitar Certificado Digital e PIN

Atores: Usuário e Navegador Descrição:

Realiza as tarefas de ICP, solicitando e validando o certifi- cado do usuário e realizando a verificação da posse da chave privada do certificado.

Pré-Condições: Chamada a partir do caso de uso ’Autenticar Usuário’.

Fluxo de Evento Primário:

• O sistema solicita ao usuário a inserção do cartão inteli- gente.

• Após a inserção, é apresentada uma caixa de seleção onde são listados os certificados presentes na mídia.

• O sistema realiza a validação do certificado selecionado. • O sistema gera um desafio com base na chave pública do

certificado.

• O navegador solicita ao usuário que digite o PIN do cer- tificado para liberar o funcionamento da chave privada • O navegador solicita à API do cartão inteligente que re-

solva o desafio.

• O navegador retorna ao caso de uso Autenticar Usuário.

Fluxo de Evento Secundário:

Cartão sem certificados válidos:

• Solicita ao usuário que insira um cartão com certificados válidos.

PIN incorreto:

• Informa ao usuário que o PIN digitado está incorreto. • Solicita ao usuário que digite novamente o PIN do certi-

ficado selecionado.

Pós-Condições Retorna ao caso de uso Autenticar Usuário, com o certifi- cado digital e o PIN do usuário

Pontos de Extensão Casos de Uso Incluídos:

3.2. IDENTIFICAÇÃO E MODELAGEM DOS CASOS DE USO 35 Tabela 3.4: Caso de Uso: Acessar Aplicação.

Caso de Uso: Acessar Aplicação

Atores: Usuário

Descrição: Permite ao usuário acessar a aplicação Pré-Condições:

Fluxo de Evento Primário:

• A aplicação valida o Token SSO. • O acesso à aplicação é concedido. Fluxo de Evento

Secundário:

Caso o usuário não possua um Token SSO válido, o caso de uso Solicitar Assertiva SAML entra em ação.

Pós-Condições Acesso à aplicação ou acionamento do caso de uso Solicitar Assertiva SAML

Pontos de Extensão Solicitar Assertiva SAML Casos de Uso

Incluídos:

Tabela 3.5: Caso de Uso: Solicitar Assertiva SAML.

Caso de Uso: Solicitar Assertiva SAML

Atores: Navegador

Descrição: Carrega o navegador com os parâmetros do SP e redireciona para o IdP.

Pré-Condições: Tentativa de acesso à aplicação sem o Token SSO Fluxo de Evento

Primário:

Aplicação carrega o navegador com os parâmetros SAML e o redireciona para o IdP.

Fluxo de Evento Secundário:

Pós-Condições Redirecionamento do navegador para o IdP Pontos de Extensão

Casos de Uso Incluídos:

36 CAPÍTULO 3. MODELAGEM DO AUTENTICADOR ICP/SAML Tabela 3.6: Caso de Uso: Consumir Assertiva SAML.

Caso de Uso: Consumir Assertiva SAML

Atores: Navegador

Descrição: Processa a assertiva SAML carregada pelo navegador. Pré-Condições: Navegador com carga de assertiva SAML recebida pelo IdP. Fluxo de Evento

Primário:

• O sistema recebe a assertiva SAML e efetua a validação. • O sistema retorna a confirmação de assertiva consumida. Fluxo de Evento

Secundário:

Pós-Condições Assertiva consumida Pontos de Extensão

Casos de Uso Incluídos:

Tabela 3.7: Caso de Uso: Gerar Token SSO.

Caso de Uso: Gerar Token SSO

Atores: Navegador

Descrição: Entrega ao navegador o Token SSO para acesso à aplicação. Pré-Condições: Navegador retorna do IdP com assertiva SAML.

Fluxo de Evento Primário:

• Navegador entrega ao sistema a assertiva SAML.

• Sistema inicia o caso de uso Consumir Assertiva SAML para efetuar a validação.

• Sistema entrega ao navegador o Token SSO. Fluxo de Evento

Secundário:

Pós-Condições Navegador com Token SSO para acesso à aplicação Pontos de Extensão

Casos de Uso