Instituto Superior Técnico

Serviços de Informática

Sistema de autenticação unificado

O sistema mais utilizado no Técnico é baseado no Centralized Authentication System, ou CAS, da Universidade de Yale. O CAS é uma solução de autenticação unificada ou single sing-on (SSO) de índole empresarial para serviços web, nomeadamente websites e aplicações web.

Este sistema permite a utilização de múltiplos canais de comunicação de uma mesma plataforma que usem diferentes mecanismos de autenticação e que pretendam usufruir da mesma fonte oficial de confiança (authorative source of trust), na qual o utilizador se autentica univocamente, não precisando de repetir o processo para cada canal ou serviço específico da mesma plataforma.

Existem diversas soluções para permitir a utilização e acesso a serviços web escritos em diferentes linguagens ou em determinadas frameworks que usam CAS, o que se traduz numa rápida implementação de soluções específicas de SSO por programadores. Motivos estes que culminaram na adoção e suporte na infraestrutura do Técnico deste sistema.

Autorização

A utilização do sistema CAS só é permitida a servidores previamente autorizados. Está-se em processo de substituir este sistema por SAML ou OAuth2, dependendo das circustâncias, pelo que não se prevê autorizar o uso do serviço CAS em web sites. Para esse propósito recomenda-se autenticação através do Fenix, como descrito nesta página.

Em casos em que já esteja em uso CAS os pedidos de autorização ou modificação deverão ser enviados para si@tecnico.ulisboa.pt com os seguintes dados:

  • Designação do serviço, que aparecerá na página de logout central
  • URL de login, ou seja o url que será enviado para o servidor CAS no parâmetro “service
  • URL de logout, o url que é chamado para invalidar a sessão da aplicação. Este url apenas deverá destruir a sessão e não deve chamar a função de logout da biblioteca de CAS.

Funcionamento

O sistema CAS permite que qualquer servidor no domínio tecnico.ulisboa.pt possa autenticar os utilizadores do Técnico sem que conheça ou tenha que solicitar diretamente as credenciais de acesso (o que se traduziria numa quebra de segurança).

Resumidamente, o mecanismo funciona da seguinte forma:

  1. Existe uma máquina central de autenticação no endereço id.tecnico.ulisboa.pt, onde estão definidas as políticas de segurança e que assegura a integridade das credenciais de acesso, para o qual são redirecionados todos os pedidos de autenticação.
  2. A mesma máquina central, em caso da autenticação ser bem sucedida, fornece ao browser um ticket de autenticação para a sessão.
  3. Por fim, este ticket tem uma validade temporal durante a qual garante a autenticidade do acesso, permitindo o acesso ao serviço de autenticação sem que seja necessária a circulação das credenciais de autenticação por servidores externos ao SI.
O utilizador deverá abster-se de utilizar as  credenciais em qualquer outro endereço que não em https://id.tecnico.ulisboa.pt/, dado que se poderá tratar de uma provável tentativa de usurpação de credenciais ou phishing. Se tal acontecer, deverá contactar o SI.

Sugere-se a consulta de informação específica sobre o projeto CAS: