Introdução ao início de sessão único em dispositivos Apple
As organizações usam frequentemente o início de sessão único (SSO), que foi concebido para melhorar a experiência de início de sessão dos utilizadores em aplicações e sites. Com SSO, um processo de autenticação comum é usado para aceder a várias aplicações ou sistemas — sem que o utilizador afirme novamente a sua identidade. Em vez de guardar as credenciais de um utilizador (por exemplo, a palavra-passe) e reutilizá-las para cada aplicação ou sistema, o SSO está a utilizar o token fornecido pela autenticação inicial, o que dá aos utilizadores o aspeto de um conceito de palavra-passe única.
Por exemplo, o SSO ocorre quando inicia sessão no Active Directory na sua rede empresarial e, em seguida, acede indistintamente às suas aplicações e sites empresariais sem introduzir novamente a palavra-passe. Todas as aplicações e sistemas são configuradas para confiar no Active Directory para identificar utilizadores e fornecer adesões a grupos; juntas formam um domínio de segurança.
Kerberos
Kerberos é um protocolo de autenticação popular usado em redes grandes para SSO. É também o protocolo predefinido usado pelo Active Directory. Funciona entre plataformas, usa cifragem e protege contra ataques repetidos. Pode usar palavras-passe, identidades de certificado, smart cards, dispositivos NFC ou outros produtos de autenticação de hardware para autenticar o utilizador. O servidor que executa Kerberos é conhecido como o Centro de distribuição de chaves (KDC). Para autenticar os utilizadores, os dispositivos Apple têm de contactar o serviço KDC através de uma ligação à rede.
O Kerberos funciona corretamente na rede interna ou privada de uma organização, porque todos os clientes e servidores têm conectividade direta ao KDC. Os clientes que não estão na rede empresarial têm de usar uma rede privada virtual (VPN) para estabelecer ligação e proceder à autenticação. Kerberos não é a solução ideal para aplicações baseadas na internet ou na nuvem. É porque estas aplicações não têm conectividade direta à rede empresarial. Para as aplicações baseadas na nuvem ou internet, a autenticação moderna (descrita abaixo) é mais adequada.
O macOS dá prioridade a Kerberos para todas as atividades de autenticação quando integradas num ambiente do Active Directory. Quando um utilizador inicia sessão num Mac através de uma conta Active Directory, é solicitado um Kerberos TGT (Ticket Granting Ticket) ao controlador de domínio Active Directory. Quando um utilizador tenta usar qualquer serviço ou aplicação no domínio que suporte autenticação Kerberos, o TGT é usado para solicitar um bilhete para esse serviço sem solicitar novamente a autenticação do utilizador. Se estiver definida uma política para solicitar uma palavra-passe para ignorar a proteção de ecrã, o macOS tenta renovar o TGT após a autenticação bem sucedida.
Para que os servidores Kerberos funcionem adequadamente, os registos de DNS (Domain Name System) diretos e inversos devem ser exatos. A hora do relógio do sistema também é importante, porque o desalinhamento do relógio tem de ser inferior a 5 minutos para quaisquer servidores e clientes. A melhor prática é definir a data e hora automaticamente usando um serviço NTP (Network Time Protocol), como time.apple.com.
Autenticação moderna com SSO
Autenticação moderna faz referência a um conjunto de protocolos de autenticação baseados na web usados por aplicações na nuvem. Os exemplos incluem SAML 2.0, OAuth 2.0 (iOS 16, iPadOS 16.1, visionOS 1.1 ou posterior) e Open ID Connect (OIDC). Esses protocolos funcionam melhor através da internet e cifram as ligações com HTTPS. SAML2 é usada frequentemente para federar entre as redes e aplicações na nuvem da organização. A federação é usada ao cruzar domínios de confiança, por exemplo, ao aceder a um conjunto de aplicações na nuvem a partir do seu domínio nas instalações.
Nota: para beneficiar de OAuth 2.0, a solução MDM tem de implementar suporte no servidor para OAuth 2.0 com qualquer fornecedor de identidade (IdP) que pretendam que suporte a utilização com o registo do utilizador.
O início de sessão único com estes protocolos varia dependendo do fornecedor e do ambiente. Por exemplo, quando está a usar o AD FS (Active Directory Federation Services) na rede de uma organização, o AD FS funciona com o Kerberos para SSO e quando autentica clientes através da internet, o AD FS pode usar cookies do navegador. Os protocolos de autenticação modernos não ditam como o utilizador afirma a sua identidade. Muitos desses protocolos são usados em combinação com autenticação multifatores, tal como um código SMS durante a autenticação em clientes desconhecidos. Alguns fornecedores fornecem certificados no dispositivo para identificar dispositivos conhecidos para auxiliarem no processo de autenticação.
Os IdP podem suportar SSO no iOS, iPadOS, macOS e visionOS 1.1 através da utilização de extensões de início de sessão único. Essas extensões permitem que os IdP implementem protocolos de autenticação modernos para os seus utilizadores.
Aplicações suportadas
O iOS, iPadOS e visionOS 1.1 fornecem um suporte flexível para o SSO para qualquer aplicação que usa a classe NSURLSession
ou URLSession
para gerir as ligações da rede e autenticação. A Apple fornece a todos os programadores estas classes para integrar ligações à rede nas suas aplicações de forma estável.
Qualquer aplicação Mac que suporte a autenticação Kerberos funciona com SSO. Isto inclui muitas das aplicações integradas no macOS, como Safari, Mail e Calendário, assim como serviços como partilha de ficheiros, partilha de ecrã e shell segura (SSH). Muitas aplicações de terceiros, como o Microsoft Outlook, também suportam Kerberos.
Configurar Início de sessão único
Pode configurar o SSO usando perfis de configuração, que podem ser instalados manualmente ou geridos com MDM. A carga útil SSO permite uma configuração flexível. O SSO pode ser aberto para todas as aplicações ou restringido pelo identificador de aplicações, hiperligação do serviço ou ambos.
É utilizada uma simples correspondência do padrão da cadeia de caracteres ao comparar um padrão contra o prefixo de uma hiperligação solicitada. Os padrões devem começar assim com https:// ou http:// e não corresponderão a números de porta diferentes. Se um padrão de correspondência de uma hiperligação não terminar com uma barra (/), é anexada uma.
Por exemplo, https://www.betterbag.com/ corresponde a https://www.betterbag.com/index.html mas não corresponde a http://www.betterbag.com ou https://www.betterbag.com:443/.
Pode também ser utilizado um carácter universal único para especificar os subdomínios em falta. Por exemplo, https://*.betterbag.com/ corresponde a https://store.betterbag.com/.
Os utilizadores do Mac podem visualizar e gerir as suas informações de bilhete Kerberos usando a aplicação Visualizador de Tickets, situada em /Sistema/Biblioteca/CoreServices/. Pode ver informações adicionais clicando no menu Ticket e selecionando “Informação de diagnóstico”. Se for permitido pelo perfil de configuração, os utilizadores também podem solicitar, visualizar e destruir bilhetes Kerberos usando as ferramentas de linha de comandos kinit
, klist
e kdestroy
, respetivamente.