Guias por provedor
Os passos em cada provedor de identidade que os presets cobrem: Google Workspace, Microsoft Entra ID, Okta, Keycloak, authentik, Auth0 e qualquer outro provedor OpenID Connect.
Descreve o Ronne AI Marketplace 0.4.0. Traduzida do inglês.
Google Workspace
- No console do Google Cloud, em APIs & Services › Credentials, crie um OAuth client ID do tipo Web application e adicione a URI de redirecionamento (
https://ronne.example.com/api/auth/sso/callback/<id>) em Authorized redirect URIs. - Defina a tela de consentimento OAuth como Internal, para que só o seu Workspace possa usá-la.
- Traga de volta o client ID e o client secret. O issuer é
https://accounts.google.com. - Liste o domínio do seu Workspace em Who may sign in para criar contas no primeiro login.
O Google não põe grupos no ID token dele, então os mapeamentos de grupos não podem ser usados com ele.
O Ronne lê sub, email, email_verified (precisa ser true), name e a claim de grupos, se você mapear grupos. O Test sign-in mostra o que chegou. Os erros comuns estão em Adicionar um provedor.
Microsoft Entra ID
- No centro de administração do Entra, em App registrations › New registration, single tenant, com a URI de redirecionamento (
https://ronne.example.com/api/auth/sso/callback/<id>) como URI da plataforma Web. Depois, Certificates & secrets › New client secret. - Traga de volta o Directory (tenant) ID (o preset monta o issuer,
https://login.microsoftonline.com/<tenant>/v2.0), o Application (client) ID e o Value do secret (não o ID dele). - Token configuration › Add optional claim › ID:
emailexms_edov. O Entra nunca enviaemail_verified; para este preset, o Ronne aceitaxms_edov(o domínio do e-mail está verificado no seu tenant) no lugar dele. Sem ele, os logins são recusados. - Grupos (opcional): Token configuration › Add groups claim › Security groups. O Entra envia os object IDs dos grupos: mapeie esses. Acima de 200 grupos a claim é omitida, então atribua ao aplicativo só os grupos que o Ronne mapeia.
O Ronne lê sub, email, email_verified (precisa ser true), name e a claim de grupos, se você mapear grupos. O Test sign-in mostra o que chegou. Os erros comuns estão em Adicionar um provedor.
Okta
- Applications › Create App Integration › OIDC, Web Application, com a URI de redirecionamento (
https://ronne.example.com/api/auth/sso/callback/<id>) como sign-in redirect URI. Atribua as pessoas ou os grupos que podem usar o Ronne. - Traga de volta o client ID e o client secret da aba General do aplicativo. O issuer é o seu domínio Okta,
https://<your-org>.okta.com(o org authorization server). - Grupos (opcional): na aba Sign On do aplicativo, defina a claim de grupos: nome
groups, filtro Matches regex.*(ou só os grupos que o Ronne mapeia). Adicione o scopegroups.
O Ronne lê sub, email, email_verified (precisa ser true), name e a claim de grupos, se você mapear grupos. O Test sign-in mostra o que chegou. Os erros comuns estão em Adicionar um provedor.
Keycloak
- No realm, Clients › Create client: OpenID Connect, Client authentication ativado, só Standard flow, e a URI de redirecionamento (
https://ronne.example.com/api/auth/sso/callback/<id>) em Valid redirect URIs. - Traga de volta o client ID e o client secret da aba Credentials do client. O issuer é o endereço do realm,
https://<host>/realms/<realm>. Um Keycloak em um endereço privado funciona: só o root pode digitar um issuer. - Grupos (opcional): Client scopes › o scope dedicado do client › Add mapper › Group Membership, token claim name
groups, Full group path desativado.
O Ronne lê sub, email, email_verified (precisa ser true), name e a claim de grupos, se você mapear grupos. O Test sign-in mostra o que chegou. Os erros comuns estão em Adicionar um provedor.
authentik
- Applications › Providers › Create › OAuth2/OpenID Provider, confidential, com a URI de redirecionamento (
https://ronne.example.com/api/auth/sso/callback/<id>) como strict redirect URI. Depois, um aplicativo que o use; o slug dele faz parte do issuer. - Traga de volta o client ID e o client secret da página do provider. O issuer é
https://<host>/application/o/<slug>/, com a barra final. - Grupos: o scope
profilejá os envia (os nomes dos grupos) na claimgroups.
O Ronne lê sub, email, email_verified (precisa ser true), name e a claim de grupos, se você mapear grupos. O Test sign-in mostra o que chegou. Os erros comuns estão em Adicionar um provedor.
Auth0
- Applications › Create Application › Regular Web Application, e a URI de redirecionamento (
https://ronne.example.com/api/auth/sso/callback/<id>) em Allowed Callback URLs. - Traga de volta o domain (o issuer é
https://<domain>/, com a barra final), o client ID e o client secret da aba Settings do aplicativo. - Grupos (opcional): o Auth0 não tem uma claim de grupos própria. Adicione uma Action post-login que defina a claim personalizada
https://ronne.ai/groupsno ID token (a partir de roles ou de app metadata); o preset lê essa claim.
O Ronne lê sub, email, email_verified (precisa ser true), name e a claim de grupos, se você mapear grupos. O Test sign-in mostra o que chegou. Os erros comuns estão em Adicionar um provedor.
Outro OpenID Connect
- Registre um aplicativo web confidencial que use o fluxo de authorization code com PKCE, e a URI de redirecionamento (
https://ronne.example.com/api/auth/sso/callback/<id>) exatamente como aparece. - Traga de volta o issuer (o endereço cujo
/.well-known/openid-configurationo provedor publica, exatamente como o issuer desse documento o escreve), o client ID e o client secret. Ele precisa serhttps://. - Grupos (opcional): a claim que os lista, normalmente
groups.
O Ronne lê sub, email, email_verified (precisa ser true), name e a claim de grupos, se você mapear grupos. O Test sign-in mostra o que chegou. Os erros comuns estão em Adicionar um provedor.