Aprenda como as Solicitações de Origem Relacionada do WebAuthn permitem o uso de passkeys em múltiplos domínios. Um guia completo de implementação com exemplos do mundo real.

Vincent
Created: October 31, 2025
Updated: October 31, 2025

See the original blog version in English here.
As Passkeys são o novo padrão para autenticação segura e fácil de usar. Construídas sobre os padrões FIDO/WebAuthn, elas utilizam criptografia de chave pública para oferecer resistência inerente a phishing e credential stuffing, melhorando drasticamente a postura de segurança e, ao mesmo tempo, simplificando a experiência de login para os usuários. Para as organizações, isso se traduz em benefícios comerciais tangíveis: redução de custos operacionais com redefinições de senha e OTPs por SMS, mitigação de riscos financeiros de fraudes de apropriação de contas e aumento de receita por meio de maiores taxas de conversão.
No entanto, uma das maiores forças de segurança do WebAuthn — sua natureza estrita e vinculada à origem — cria um desafio significativo no mundo real para marcas globais e empresas com diversas presenças digitais. Por design, uma passkey criada para um domínio web específico é criptograficamente bloqueada para esse domínio, um princípio fundamental que previne ataques de phishing. Embora seja um recurso de segurança poderoso, isso leva a uma experiência de usuário fragmentada e confusa quando uma única marca opera em múltiplos domínios.
Um exemplo proeminente desse desafio é a mudança de marca do Twitter para X. Um usuário que criou uma passkey em twitter.com a acharia inutilizável em x.com, forçando a empresa a implementar redirecionamentos complicados ou exigir que os usuários se registrem novamente, criando um atrito que dificulta diretamente a adoção. Este não é um problema isolado. Grandes empresas como a Amazon operam em vários domínios de topo de código de país (ccTLDs), como amazon.com, amazon.de e amazon.co.uk, todos compartilhando um sistema de contas de usuário comum. Em um mundo pré-passkeys, os gerenciadores de senhas lidam habilmente com essa complexidade, mas o comportamento padrão do WebAuthn exigiria uma passkey separada para cada domínio, frustrando os usuários e minando a promessa de um login contínuo.
Para resolver esse bloqueador crítico de adoção, o W3C introduziu um novo recurso no padrão WebAuthn: as Solicitações de Origem Relacionada (ROR). Este poderoso mecanismo fornece uma maneira padronizada e segura para um conjunto de domínios confiáveis compartilhar uma única passkey, criando uma experiência de autenticação unificada e contínua em todo o ecossistema digital de uma marca. Esta análise aprofundada explora os fundamentos técnicos do ROR, fornece um guia prático para sua implementação e analisa suas implicações estratégicas para a arquitetura de autenticação moderna.
A introdução do ROR marca um amadurecimento significativo do padrão WebAuthn. As especificações iniciais priorizaram o estabelecimento de princípios criptográficos e de segurança fundamentais, com a vinculação estrita de uma credencial a um ID de Parte Confiável (rpID) sendo um pilar de seu design anti-phishing. À medida que implantações empresariais de grande escala por empresas como Amazon e Google se tornaram realidade, o atrito prático causado por essa rigidez ficou aparente. Esse atrito é um impedimento direto para alcançar uma alta adoção pelos usuários, que é a medida final de sucesso para qualquer projeto de passkeys. O desenvolvimento do ROR é uma resposta direta a esse feedback empresarial, demonstrando uma evolução pragmática do padrão. Ele reconhece que, para um protocolo de segurança alcançar sucesso generalizado, sua usabilidade deve ser dimensionada para acomodar as complexas realidades de negócios e estratégias de marca das organizações que o implementam.
Este guia abrangente responde a cinco perguntas críticas para a implementação de Solicitações de Origem Relacionada do WebAuthn:
Para mais detalhes técnicos, consulte o Explicador Oficial de Solicitações de Origem Relacionada do WebAuthn.
Para apreciar plenamente a elegância da solução de Solicitações de Origem Relacionada, é essencial primeiro entender os conceitos técnicos subjacentes que necessitam de sua existência: a Política de Mesma Origem da web e as regras de escopo do Relying Party ID (rpID) do WebAuthn. Esses mecanismos são fundamentais para a segurança da web, mas criam o próprio atrito que o ROR foi projetado para aliviar.
Uma "origem" da web é um conceito de segurança crítico definido pela combinação única do protocolo (ex: https), domínio (ex: app.example.com) e porta (ex: 443) de onde o conteúdo é servido. A Política de Mesma Origem é um mecanismo de segurança aplicado pelos navegadores que restringe como um script carregado de uma origem pode interagir com um recurso de outra. É um elemento importante da segurança da web, isolando efetivamente documentos potencialmente maliciosos e impedindo que um site fraudulento, por exemplo, leia dados sensíveis da sessão de webmail autenticada de um usuário em outra aba.
No ecossistema WebAuthn, a "Parte Confiável" (RP) é o site ou aplicativo com o qual um usuário está tentando se autenticar. Cada passkey é criptograficamente vinculada a um Relying Party ID (rpID) no momento de sua criação. O rpID é um nome de domínio que define o escopo e o limite para essa credencial.
Por padrão, o rpID é o domínio efetivo da origem onde a passkey está sendo
criada. As regras de escopo do WebAuthn permitem que uma origem defina um rpID que seja igual ao
seu próprio domínio ou a um sufixo de domínio registrável. Por exemplo, um script em execução em
https://www.accounts.example.co.uk pode
criar uma passkey com um rpID de:
www.accounts.example.co.uk (o domínio completo)accounts.example.co.ukexample.co.ukEssa flexibilidade permite que uma passkey criada em um subdomínio seja usada em outros
subdomínios do mesmo domínio pai, o que é um padrão comum e necessário. No entanto,
as regras proíbem estritamente a definição de um rpID que não seja um sufixo. O mesmo script em
www.accounts.example.co.uk não poderia
criar uma passkey com um rpID de example.com,
porque .com é um domínio de topo diferente.
Essa vinculação estrita serve a um propósito importante: separar as credenciais por escopo de domínio. Uma
passkey criada para mybank.com não pode ser exercida em phishing-site.com porque o
site malicioso não pode reivindicar o rpID legítimo de mybank.com. O navegador nem sequer
apresentará a passkey como uma opção.
No entanto, o rpID em si não é o principal controle anti-phishing. A proteção anti-phishing do WebAuthn, na verdade, vem da verificação de origem no objeto clientDataJSON. Durante cada cerimônia WebAuthn, o navegador cria um objeto JSON contendo contexto crítico, incluindo a origem exata que iniciou a solicitação. Este objeto inteiro é então criptograficamente assinado pela chave privada do autenticador. O servidor (Parte Confiável) DEVE verificar essa assinatura e, crucialmente, validar que o campo de origem no clientDataJSON assinado corresponde a um valor esperado e confiável. Essa verificação de origem é o que previne ataques de phishing.
Com as Solicitações de Origem Relacionada, o escopo do rpID é relaxado — permitindo que bar.com
reivindique legitimamente o rpID de foo.com após o navegador validar o
arquivo .well-known/webauthn — mas o requisito de verificação de origem permanece inalterado. O
clientDataJSON ainda informará veridicamente a origem como
bar.com. O servidor em foo.com recebe esses dados assinados, verifica-os e vê que
a solicitação veio de bar.com. O servidor deve então verificar se bar.com é uma
origem relacionada esperada antes de aceitar a autenticação. Isso demonstra uma abordagem multicamadas
que permite maior flexibilidade sem sacrificar o princípio central da
verificação de origem.
O mecanismo de Solicitações de Origem Relacionada introduz uma maneira elegante e padronizada para
que os domínios declarem publicamente uma relação de confiança com o propósito de compartilhar passkeys. Ele
aproveita um padrão web bem estabelecido — o URI /.well-known/ — para criar uma "lista de permissões" verificável
e legível por máquina que os navegadores podem consultar.
O conceito central é simples: um domínio que serve como o rpID primário e canônico
para um conjunto de sites relacionados pode hospedar um arquivo JSON especial em uma URL padronizada e "bem conhecida":
https://{rpID}/.well-known/webauthn. Este arquivo atua como um manifesto público,
listando explicitamente todas as outras origens que estão oficialmente autorizadas a criar e usar
passkeys sob esse rpID primário.
O fluxo de validação do navegador é acionado sempre que encontra uma incompatibilidade entre a origem atual e o rpID solicitado:
https://example.co.uk, inicia uma operação de passkey
(criação ou autenticação) onde o código do lado do cliente especifica um domínio diferente
como rpID, por exemplo, example.com.https://example.com/.well-known/webauthn. Esta
solicitação é feita sem credenciais de usuário (como cookies) e sem um cabeçalho de referenciador
para proteger a privacidade do usuário e
evitar rastreamento.https://example.co.uk) está presente no array origins dentro
do objeto JSON.example.com como o rpID válido. Se a origem não for encontrada, ou se o arquivo
estiver ausente ou malformado, a operação falha como teria falhado anteriormente.A escolha de usar um URI /.well-known/ é deliberada e alinha o ROR com padrões web estabelecidos
para descoberta de serviços e validação de controle de domínio. Este caminho de URI, definido pela
RFC 8615, já é usado por vários protocolos críticos, incluindo o acme-challenge para
a emissão de certificados SSL da Let's Encrypt e assetlinks.json para vincular sites a
aplicativos Android. Ao adotar essa convenção,
o W3C aproveita um padrão que implica inerentemente a propriedade do domínio. Para colocar um arquivo neste
caminho específico e padronizado, é preciso ter controle administrativo sobre o servidor web
para esse domínio. Isso fornece uma prova de controle simples, mas eficaz, tornando a
declaração de confiança verificável. Quando o proprietário de example.com serve um arquivo listando
example.co.uk como uma origem relacionada, é uma reivindicação verificável. Esta abordagem nativa da web é
muito mais simples e robusta do que alternativas que foram consideradas e rejeitadas durante o
processo de padronização, como o uso de chaves criptográficas para assinar autorizações (RP Keys)
ou identificadores aleatórios não baseados em domínio (RP UUIDs). O ROR baseia a relação de confiança no
modelo de controle de domínio existente e bem compreendido da web.
A implementação de Solicitações de Origem Relacionada requer mudanças coordenadas tanto no lado do servidor, para autorizar as origens, quanto no lado do cliente, para invocar o rpID compartilhado. Esta seção fornece o código prático e os detalhes de configuração necessários para habilitar uma experiência de passkey unificada em todos os seus domínios.
O servidor que hospeda o rpID primário é responsável por publicar a lista de permissões de origens relacionadas.
O arquivo de autorização deve ser colocado no caminho exato /.well-known/webauthn em relação
à raiz do domínio do rpID primário. É crucial que este arquivo seja servido sob as
seguintes condições:
application/json..json. O caminho correto é
/webauthn, não /webauthn.json.O arquivo deve conter um único objeto JSON com uma chave, origins, cujo valor é um
array de strings. Cada string no array é a origem completa (protocolo, domínio e
porta opcional) que está sendo autorizada.
{ "origins": ["https://example.co.uk", "https://example.de", "https://example.fr"] }
Exemplo: Para um rpID de example.com, o arquivo deve ser servido em
https://example.com/.well-known/webauthn (nota: sem extensão .json).
Uma vez que o servidor esteja configurado com o arquivo .well-known/webauthn, todos os domínios relacionados
devem usar consistentemente o mesmo rpID compartilhado em suas chamadas de API WebAuthn. Essa coordenação
é crítica para que o ROR funcione corretamente.
Requisitos chave de coordenação:
example.com, example.co.uk,
example.de) devem passar o mesmo rpID compartilhado para a API navigator.credentials
do navegador.Uma configuração incorreta em apenas um site — onde ele usa sua própria origem como rpID em vez do valor compartilhado — quebrará a experiência de passkey unificada para os usuários nesse domínio.
Importante: O servidor DEVE verificar o campo origin no
clientDataJSON para cada solicitação, garantindo que ele corresponda a uma das
origens relacionadas autorizadas. Essa verificação de origem é o principal mecanismo de proteção
contra phishing.
As Solicitações de Origem Relacionada (ROR) e os protocolos de identidade federada (OIDC/SAML) resolvem problemas diferentes. O ROR não é um substituto para o Single Sign-On — é um complemento que aborda um caso de uso específico e restrito.
O ROR é apropriado para uma única aplicação lógica distribuída em múltiplos domínios relacionados que compartilham o mesmo banco de dados de usuários:
amazon.com, amazon.de,
amazon.co.uk)O que o ROR oferece: A mesma passkey funciona em todos os domínios relacionados, eliminando a necessidade de os usuários criarem passkeys separadas para cada site regional.
Use protocolos de identidade federada para Single Sign-On verdadeiro entre aplicações distintas:
O que OIDC/SAML oferecem: Autenticação centralizada onde os usuários fazem login uma vez em um Provedor de Identidade (IdP) e obtêm acesso a múltiplos Provedores de Serviço (SPs) por meio de tokens seguros.
Importante: As passkeys podem ser usadas com ambas as abordagens. Você pode implementar passkeys em um IdP centralizado para SSO federado, ou usar ROR para uma aplicação única multidomínio. Escolha com base na sua arquitetura, não no seu método de autenticação.
Embora o ROR seja uma solução técnica poderosa, sua implementação deve ser uma decisão estratégica deliberada. Arquitetos e gerentes de produto devem ponderar seus benefícios em relação a padrões alternativos e entender suas limitações para construir um sistema de autenticação robusto e à prova de futuro.
Uma restrição chave do ROR é o "limite de rótulos". Um "rótulo" neste contexto se refere ao domínio de topo efetivo mais um nível (eTLD+1), que é a parte registrável de um nome de domínio. Por exemplo:
shopping.com, shopping.co.uk e shopping.ca todos compartilham o único rótulo
"shopping"myshoppingrewards.com introduz um novo e distinto rótulo: "myshoppingrewards"travel.shopping.com ainda se enquadra no rótulo "shopping"A especificação WebAuthn Nível 3 exige que as implementações de navegadores suportem um mínimo
de cinco rótulos únicos na lista origins. Em 2025, nenhum navegador conhecido suporta
mais do que este mínimo de cinco rótulos. Portanto, as organizações devem projetar suas
implantações de ROR com este limite rígido em mente — trate cinco como o máximo efetivo.
Este limite é um mecanismo antiabuso deliberado, projetado para prevenir o uso indevido. Ele impede
entidades como provedores de hospedagem compartilhada (ex: wordpress.com) de criar uma
passkey universal que poderia funcionar em milhares de subdomínios de clientes não relacionados, o que
minaria o modelo de segurança.
Para a maioria das organizações, mesmo grandes marcas multinacionais, este limite de cinco rótulos é
suficiente. Por exemplo, os vários TLDs de código de país da Amazon (amazon.com, amazon.de,
amazon.co.uk, etc.) todos compartilham o rótulo "amazon", deixando quatro espaços de rótulo adicionais
disponíveis para outras marcas em seu portfólio, como "audible" ou "zappos".
A complexidade de implementar o ROR depende muito de se ele está sendo introduzido em um sistema novo ou adaptado a um existente.
.com primário). Este rpID deve então ser usado consistentemente na configuração de todos
os sites e aplicativos relacionados desde o primeiro dia.Entender como empresas estabelecidas implementam Solicitações de Origem Relacionada fornece insights valiosos para sua própria estratégia de implantação. Abaixo estão exemplos baseados em implementações reais (dados de outubro de 2025):
A Microsoft usa ROR para sua
infraestrutura de autenticação. A configuração real em
login.microsoftonline.com inclui:
// https://login.microsoftonline.com/.well-known/webauthn { "origins": ["https://login.microsoftonline.com", "https://login.live.com"] }
Esta abordagem conservadora permite o compartilhamento de passkeys entre os portais de login empresarial e de consumidor da Microsoft, mantendo um perímetro de segurança focado.
A Shopify implementa ROR para unificar a autenticação em domínios selecionados:
// https://shopify.com/.well-known/webauthn { "origins": ["https://shopify.com", "https://shop.app"] }
Esta configuração permite que a Shopify conecte sua plataforma principal com seu aplicativo Shop, demonstrando uma abordagem focada em origens relacionadas.
A Amazon tem um arquivo bem grande:
// https://amazon.com/.well-known/webauthn { "origins": [ "https://www.amazon.com", "https://www.amazon.com.br", "https://www.amazon.com.mx", "https://www.amazon.ca", "https://www.amazon.co.uk", "https://www.amazon.de", "https://www.amazon.it", "https://www.amazon.es", "https://www.amazon.nl", "https://www.amazon.se", "https://www.amazon.sa", "https://www.amazon.pl", "https://www.amazon.com.tr", "https://www.amazon.fr", "https://www.amazon.com.au", "https://www.amazon.sg", "https://www.amazon.ae", "https://www.amazon.eg", "https://www.amazon.co.za", "https://www.amazon.in", "https://brandregistry.amazon.com", "https://sellercentral.amazon.com", "https://sellercentral.amazon.com.br", "https://sellercentral.amazon.com.mx", "https://sellercentral.amazon.ca", "https://sellercentral.amazon.co.uk", "https://sellercentral.amazon.de", "https://sellercentral.amazon.it", "https://sellercentral.amazon.es", "https://sellercentral.amazon.nl", "https://sellercentral.amazon.se", "https://sellercentral.amazon.sa", "https://sellercentral.amazon.pl", "https://sellercentral.amazon.com.tr", "https://sellercentral.amazon.fr", "https://sellercentral.amazon.com.au", "https://sellercentral.amazon.sg", "https://sellercentral.amazon.ae", "https://sellercentral.amazon.eg", "https://sellercentral.amazon.co.za", "https://sellercentral.amazon.in", "https://na.account.amazon.com", "https://vendorcentral.amazon.com", "https://vendorcentral.amazon.com.br", "https://vendorcentral.amazon.com.mx", "https://vendorcentral.amazon.ca", "https://vendorcentral.amazon.co.uk", "https://vendorcentral.amazon.de", "https://vendorcentral.amazon.it", "https://vendorcentral.amazon.es", "https://vendorcentral.amazon.nl", "https://vendorcentral.amazon.se", "https://vendorcentral.amazon.pl", "https://vendorcentral.amazon.com.tr", "https://vendorcentral.amazon.fr", "https://vendorcentral.amazon.com.au", "https://vendorcentral.amazon.co.za" ] }
Este padrão permitiria que uma marca fornecesse autenticação unificada de passkey em
domínios regionais, usando o domínio .com primário como o rpID.
Esses exemplos do mundo real revelam vários padrões chave:
Como um padrão web moderno, o ROR foi projetado com a segurança como consideração primária e está sendo ativamente adotado pelos principais navegadores.
As Solicitações de Origem Relacionada não comprometem as garantias anti-phishing centrais do WebAuthn. O mecanismo é cuidadosamente projetado para manter uma forte postura de segurança:
.well-known/webauthn é feita sobre
HTTPS. Além disso, a especificação exige que essa busca seja realizada sem
credenciais (ex: cookies) e sem um cabeçalho Referer. Isso impede que a solicitação
seja usada para vazar informações do usuário ou para fins de rastreamento entre sites..well-known/webauthn torna-se um ativo de segurança
crítico. Um invasor que obtenha controle do servidor web que hospeda o rpID primário poderia
potencialmente modificar este arquivo para adicionar seu próprio domínio malicioso à lista de permissões.
Portanto, proteger a infraestrutura que
serve este arquivo é de suma importância.As Solicitações de Origem Relacionada são um recurso da especificação WebAuthn Nível 3. O suporte dos navegadores começou a ser lançado no final de 2024:
| Sistema Operacional | Navegador / Plataforma | Versão Suportada | Status |
|---|---|---|---|
| Android | Chrome, Edge | 128+ | ✅ Suportado |
| Chrome OS | Chrome, Edge | 128+ | ✅ Suportado |
| iOS / iPadOS | Todos os Navegadores (Safari) | iOS 18+ | ✅ Suportado |
| macOS | Chrome, Edge | 128+ | ✅ Suportado |
| macOS | Safari | Safari 18 (macOS 15+) | ✅ Suportado |
| Ubuntu | Chrome, Edge | 128+ | ✅ Suportado |
| Windows | Chrome, Edge | 128+ | ✅ Suportado |
| Todas as Plataformas | Firefox | Não suportado | ⚠️ Usar fallback |
Fatos importantes:
Para aplicações que precisam suportar navegadores mais antigos ou o Firefox, implemente uma estratégia de fallback:
PublicKeyCredential.getClientCapabilities()Dados baseados nas matrizes de suporte atuais em outubro de 2025.
A implementação de Solicitações de Origem Relacionada requer uma coordenação cuidadosa entre múltiplas equipes técnicas e um profundo conhecimento dos protocolos WebAuthn. A plataforma de adoção de passkeys da Corbado elimina essa complexidade, fornecendo soluções prontas para empresas para implantações de passkeys multidomínio.
A Corbado lida com a complexidade técnica das Solicitações de Origem Relacionada através de:
.well-known/webauthn necessários com cabeçalhos de segurança adequados e formatação JSONAlém da implementação técnica, a Corbado fornece a estrutura de segurança que as empresas precisam:
Para organizações com implantações de passkeys existentes, a Corbado oferece:
Pronto para implementar Solicitações de Origem Relacionada para sua organização? A equipe de especialistas da Corbado pode ajudá-lo a projetar e implantar uma experiência de passkey unificada em todo o seu ecossistema digital. Entre em contato com nossa equipe de soluções para discutir seus requisitos e cronograma específicos.
A promessa das passkeys reside em sua capacidade de entregar um futuro que é ao mesmo tempo mais seguro e notavelmente mais simples para os usuários. No entanto, para que este futuro se torne realidade em escala global, o padrão deve acomodar as complexidades arquitetônicas das marcas digitais modernas. O atrito criado por passkeys estritamente vinculadas a domínios tem sido um bloqueador significativo para a adoção por organizações com presenças online multifacetadas.
As Solicitações de Origem Relacionada do WebAuthn fornecem a solução padronizada, segura e elegante para este problema. Ao permitir que uma única passkey funcione perfeitamente em um conjunto confiável de domínios relacionados, o ROR elimina um grande ponto de confusão e frustração para o usuário.
Este guia abordou cinco questões críticas para a implementação de Solicitações de Origem Relacionada do WebAuthn:
.well-known/webauthn padronizado para criar uma lista de permissões verificável de domínios relacionados,
permitindo que os navegadores validem o uso de passkeys entre domínios por meio de um processo de busca HTTPS seguro..well-known/webauthn e a coordenação no lado do cliente para usar um
rpID compartilhado de forma consistente em todas as origens relacionadas.Para equipes técnicas e líderes de produto, os pontos essenciais são:
.well-known/webauthn no lado do servidor
deve ser publicado no domínio do rpID primário, e todas as aplicações do lado do cliente devem ser
configuradas para usar esse mesmo rpID compartilhado.Recursos como as Solicitações de Origem Relacionada são vitais para o contínuo impulso do movimento sem senhas. Eles demonstram um compromisso dos órgãos de padronização em abordar desafios de implementação do mundo real, garantindo que os benefícios das passkeys — segurança incomparável e experiência de usuário sem esforço — sejam acessíveis até mesmo para as maiores e mais complexas organizações. À medida que este recurso ganha suporte universal nos navegadores, ele desempenhará um papel crucial em quebrar as últimas barreiras para uma internet verdadeiramente global e sem senhas.
Related Articles
Table of Contents