O que é o OAuth?
Saiba o que é o OAuth e como é utilizado para autorizar o acesso entre aplicações e serviços sem comprometer informações sensíveis.
OAuth explicado
O OAuth é um padrão tecnológico que permite autorizar uma aplicação ou serviço a iniciar sessão noutro sem divulgar informações privadas, como palavras-passe. Se alguma vez recebeu uma mensagem do tipo "Iniciar sessão com o Facebook?" ou "Permitir que esta aplicação aceda à sua conta?" já viu o OAuth em ação.
OAuth significa Open Authorization - não autenticação, como por vezes se supõe. A autenticação é um processo que verifica a sua identidade. O OAuth envolve a sua identidade, mas o seu objetivo é conceder permissão para se ligar a si com diferentes aplicações e serviços sem exigir a criação de uma nova conta. O OAuth proporciona essa simplicidade de experiência, dando-lhe a opção de autorizar duas aplicações a partilhar alguns dos seus dados sem revelar as suas credenciais. Consegue um equilíbrio entre comodidade e segurança.
O OAuth foi concebido para funcionar com o Protocolo Hypertext Transfer Protocol (HTTP). Utiliza tokens de acesso para provar a sua identidade e permitir-lhe interagir com outro serviço em seu nome. Na eventualidade de este segundo serviço sofrer uma violação de dados, as suas credenciais no primeiro serviço permanecerão seguras. O OAuth é um protocolo de padrão aberto amplamente adotado e a maioria dos programadores de sítios Web e aplicações utiliza-o.
É importante salientar que o OAuth não concede a uma aplicação ou serviço de terceiros acesso ilimitado aos seus dados. Parte do protocolo consiste em especificar quais os dados a que o terceiro está autorizado a aceder e o que pode fazer com esses dados. A definição de tais limitações e a proteção das identidades em geral são especialmente importantes em cenários empresariais em que muitas pessoas têm acesso a uma grande quantidade de informações sensíveis e exclusivas.
Como é que o OAuth funciona?
Os tokens de acesso são o que torna a utilização do OAuth segura. Um token de acesso é um dado que contém informações sobre o utilizador e o recurso a que o token se destina. Um token também incluirá regras específicas para a partilha de dados.
Por exemplo, pode querer partilhar fotografias do seu perfil de redes sociais com uma aplicação de edição de fotografias, mas só quer que esta tenha acesso a algumas das suas fotografias. Também não precisa de aceder às suas mensagens directas ou lista de amigos. O token apenas autoriza o acesso aos dados aprovados pelo utilizador. Também pode haver regras que regem quando a aplicação pode utilizar esse token - pode ser para uma única utilização ou para utilizações recorrentes - e uma data de expiração.
O processo OAuth é sobretudo uma interação máquina-a-máquina com apenas alguns pontos de contacto para o utilizador. Em alguns cenários, poderá não ser necessário dar a sua aprovação, uma vez que esta é tratada silenciosamente em segundo plano pelo software. Dois exemplos de OAuth seriam num cenário de trabalho empresarial, em que uma plataforma de identidade trata das ligações entre recursos para reduzir o atrito informático para um grande número de utilizadores, ou nas interações entre alguns dispositivos inteligentes.
Exemplos de tecnologia OAuth
Como muitas tecnologias que simplificam algo fastidioso - neste caso, a criação manual de contas em várias aplicações - o OAuth foi adotado quase universalmente pelos criadores de aplicações. Tem uma grande variedade de casos de utilização para pessoas e empresas.
Para dar um exemplo do OAuth, suponha que está a utilizar o Microsoft Teams como uma ferramenta de colaboração e pretende aceder a mais informações sobre as pessoas com quem está a trabalhar, tanto dentro como fora da sua organização. Decida ativar a integração do LinkedIn para poder saber mais sobre as pessoas à medida que interage com elas, sem sair do Teams. A Microsoft e o LinkedIn utilizariam então o OAuth para autorizar a ligação das suas contas à sua identidade Microsoft.
Outro cenário de utilização do OAuth seria se descarregasse uma aplicação de orçamento para o ajudar a controlar as suas despesas com alertas e recursos visuais, como gráficos. Para fazer o seu trabalho, a aplicação precisaria de aceder a alguns dos seus dados bancários. Pode iniciar um pedido para associar a sua conta bancária à aplicação, autorizando apenas o acesso ao saldo e às transações da sua conta. A aplicação e o seu banco utilizariam o OAuth para efetuar esta troca de informações em seu nome, sem revelar as suas credenciais de início de sessão do banco à aplicação.
Outro exemplo de OAuth seria se fosse um programador a utilizar o GitHub e ficasse a saber que existe uma aplicação de terceiros disponível que se pode integrar na sua conta para efetuar revisões de código automatizadas. Vai ao GitHub Marketplace e descarrega a aplicação. Pedir-lhe-ia então que autorizasse uma ligação com a aplicação utilizando a sua identidade GitHub—um processo que seria tratado utilizando o OAuth. A aplicação de revisão poderia então aceder ao seu código sem que tivesse de iniciar sessão em ambos os serviços de cada vez.
Qual é a diferença entre o OAuth 1.0 e o OAuth 2.0?
O OAuth 1.0 original foi desenvolvido apenas para sítios Web. Atualmente, não é muito utilizado porque o OAuth 2.0 foi concebido para aplicações e sítios Web, além de ser mais rápido e fácil de implementar. O OAuth 1.0 não é escalável como o OAuth 2.0 e tem apenas três fluxos de autorização possíveis, em comparação com os seis do OAuth 2.0.
Se está a planear utilizar o OAuth, é melhor utilizar a versão 2.0 desde o início. Infelizmente, o OAuth 1.0 não pode ser atualizado para o OAuth 2.0. O OAuth 2.0 foi concebido para ser uma reformulação radical do OAuth 1.0 e várias empresas tecnológicas importantes contribuíram com comentários sobre a sua conceção. Um sítio Web pode suportar tanto o OAuth 1.0 como o OAuth 2.0, mas os criadores pretendiam que o 2.0 substituísse completamente o 1.0.
OAuth vs. OIDC
O OAuth e o Open ID Connect (OIDC) são protocolos estreitamente relacionados. São semelhantes na medida em que ambos desempenham um papel na concessão de acesso de uma aplicação aos recursos de outra aplicação em nome de um utilizador. A diferença é que enquanto o OAuth é utilizado para autorização de acesso a recursos, o OIDC é utilizado para autenticação da identidade de uma pessoa. Ambos têm um papel a desempenhar para permitir que duas aplicações não relacionadas partilhem informações sem comprometer os dados do utilizador.
Os fornecedores de identidade utilizam normalmente o OAuth 2.0 e o OIDC em conjunto. O OIDC foi desenvolvido especificamente para melhorar as capacidades do OAuth 2.0, acrescentando-lhe uma camada de identidade. Por ter sido criado com base no OAuth 2.0, o OIDC não é compatível com as versões anteriores do OAuth 1.0.
Começar a trabalhar com o OAuth
A utilização do OAuth 2.0 nos seus sítios Web e aplicações pode melhorar drasticamente a experiência dos seus utilizadores ou funcionários, simplificando o processo de autenticação de identidade. Para começar, invista numa solução de fornecedor de identidade, como o Microsoft Entra, que protege os utilizadores e os dados com segurança incorporada
O Microsoft Entra ID (anteriormente Azure Active Directory) suporta todos os fluxos OAuth 2.0. Os programadores de aplicações podem utilizar o ID como um fornecedor de autenticação baseado em normas para os ajudar a integrar capacidades de identidade modernas e à escala da empresa nas aplicações. Os administradores de TI podem utilizá-lo para controlar o acesso.
Saiba mais sobre o Microsoft Security
-
Explore o Microsoft Entra
Proteja as identidades e o acesso seguro em todas as nuvens com uma família holística de soluções.
-
Microsoft Entra ID (anteriormente, Azure Active Directory)
Proteja o acesso a recursos e dados através de autenticação forte e de acesso adaptável baseado em risco.
-
Crie confiança nas suas aplicações
Implemente o SSO para que os funcionários possam aceder a todos os recursos de que necessitam com uma única credencial.
-
Simplificar as experiências de início de sessão
Implemente o SSO para que os funcionários possam aceder a todos os recursos de que necessitam com uma única credencial.
-
Proteger-se contra ataques
Utilize a autenticação multifator para melhorar a proteção dos recursos da sua organização.
-
Utilizar o OAuth para simplificar o acesso aos dados de correio eletrónico
Saiba como autenticar ligações a aplicações que utilizam protocolos antigos.
Perguntas Mais Frequentes
-
OAuth significa Autorização Aberta e é um padrão tecnológico que permite autorizar uma aplicação ou serviço a iniciar sessão noutra sem divulgar informações privadas, como palavras-passe. Quando uma aplicação lhe pede autorização para ver as informações do seu perfil, está a utilizar o OAuth.
-
O OAuth funciona através da troca de tokens de acesso - pedaços de dados que contêm informações sobre o utilizador e o recurso a que o token se destina. Uma aplicação ou um sítio Web troca informações encriptadas com outro sobre um utilizador e inclui regras específicas para a partilha de dados. Também pode haver regras que regem quando a aplicação pode utilizar esse token e uma data de expiração. O processo OAuth é sobretudo uma interação máquina-a-máquina com apenas alguns pontos de contacto para o utilizador, se houver
-
Muitas empresas utilizam o OAuth para simplificar o acesso a aplicações e sítios Web de terceiros sem divulgar as palavras-passe ou os dados sensíveis dos seus utilizadores. A Google, a Amazon, a Microsoft, o Facebook e o Twitter utilizam-no para partilhar informações sobre as suas contas para uma grande variedade de fins, incluindo a simplificação das compras. A plataforma de identidade da Microsoft utiliza o OAuth para autorizar permissões para contas profissionais e escolares, contas pessoais, contas sociais e contas de jogos.
-
O OAuth e o Open ID Connect (OIDC) são protocolos estreitamente relacionados. São semelhantes na medida em que ambos desempenham um papel na concessão de acesso de uma aplicação aos recursos de outra aplicação em nome de um utilizador. No entanto, a diferença é que o OAuth é utilizado para autorizar o acesso a recursos, enquanto o OIDC é utilizado para autenticar a identidade de uma pessoa. Ambos desempenham um papel importante ao permitir que duas aplicações não relacionadas partilhem informações sem comprometer os dados do utilizador.
-
Existem muitas diferenças entre o OAuth 1.0 e o OAuth 2.0 porque o OAuth 2.0 foi concebido para ser uma reformulação radical do OAuth 1.0, tornando-o quase obsoleto. O OAuth 1.0 foi desenvolvido apenas para sítios Web, enquanto o OAuth 2.0 foi concebido tanto para aplicações como para sítios Web. O OAuth 2.0 é mais rápido e mais fácil de implementar, pode ser escalado e tem seis fluxos de autorização possíveis em comparação com os três que o OAuth 1.0 tem.
Siga o Microsoft 365