O objetivo geral desse trabalho é desenvolver uma solução que permita a Comunidade Acadêmica Federada (Federação CAFe) operar com múltiplos fatores de autenticação e transpor a autenticação na CAFe para dispositivos físicos da Internet das coisas (Internet of Things – IoT).
Esse projeto é financiado pela Rede Nacional de Ensino e Pesquisa (RNP) por meio de seu programa de Pesquisa & Desenvolvimento – Grupos de Trabalho. O projeto teve início em 2017 e foi encerrado em 2019.
O programa de GTs é dividido em duas fases de um ano:
Fase 1 – Cada grupo desenvolve e demonstra um protótipo de um novo serviço. Depois de avaliados, alguns deles são selecionados para a segunda fase.
Fase 2 – O grupo deve desenvolver o protótipo apresentado, visando à implantação de um piloto a ser testado por um número de instituições parceiras. Após essa etapa, o piloto pode ser transformado em um serviço experimental da RNP.
O GT-AMPTo iniciou a fase 1 do GT da RNP em 2017 e em 2018 foi selecionado para a fase 2. Fase 1
Para a fase 1 do projeto foram escolhidas duas opções para atuar como segundo fator de autenticação:
Após o usuário fornecer seu primeiro fator de autenticação (usuário e senha) na página do IdP, este receberá uma notificação no aplicativo GT-AMPTo em seu celular para que ele confirme que realmente está tentando se autenticar em seu IdP;
O usuário passa pelo processo de autenticação localmente em seu dispositivo móvel e o resultado dessa autenticação é transposta para o provedor de identidade, o qual encaminha o resultado da autenticação ao provedor de serviço. O protocolo FIDO UAF garante a transposição da autenticação, bem como garantias que o usuário foi autenticado corretamente por meio da biometria.
Essa abordagem é ideal para o cenário da Internet das Coisas, como por exemplo, para controle de acesso a ambientes físicos, pois o usuário não precisaria entrar com seu nome de usuário e senha. O cenário apresentado na figura abaixo mostra ainda a transposição da autenticação federada para o ambiente da IoT. O aplicativo para dispositivo móvel, desenvolvido dentro do contexto desse projeto, permite além da autenticação com FIDO UAF, encaminhar essas informações por meio do NFC. O provedor de serviço recebe os atributos do usuário, por meio do NFC, e seguindo um modelo de controle de acesso baseado em atributos, garante ou não o acesso ao ambiente.
O principal objetivo da fase 2 está em refinar o protótipo desenvolvido na fase 1 de forma que o mesmo pudesse ser implantado em algumas instituições usuárias da RNP na forma de um piloto.
Para essa fase ainda foram implementados outras tecnologias para atuarem como segundo fator de autenticação:
O usuário poderá fazer uso de aplicativos como Google Authenticator ou Authy, que implementam a Time–based One-Time Password (TOTP).
O usuário poderá fazer uso da proposta da W3C para tornar mais robusto o processo de autenticação na web e que está sendo implementado pelos principais navegadores web, como Google Chrome, Firefox, Microsoft Edge e Opera.
Sempre que o usuário ativar um segundo fator de autenticação, independente da tecnologia que escolher, serão gerados códigos de backup para que ele possa imprimir. Esses códigos poderão ser usados uma única vez e seriam uma salvaguarda caso o usuário perca o segundo fator de autenticação padrão, como por exemplo, caso o usuário perca seu telefone celular.
O código fonte, bem como a documentação técnica para instalação, podem ser obtidos em https://git.rnp.br/GT-AMPTo/mfap-installation-guide. Todo código fonte está sob a licença Apache License Version 2.