Saltar al contenido
XID

Primeros pasos

Regístrate en XID Cloud, crea una aplicación y verifica sus tokens.

Empieza en XID Cloud

XID Cloud funciona en https://xid.dev y es gratis. Necesitas una organización, una aplicación y unas pocas líneas de código.

  • Elige Empezar gratis en la parte superior de esta página. Regístrate y ponle nombre a tu organización; XID la crea y abre la consola.
  • En la consola, abre Aplicaciones y crea una aplicación. Registra el URI de redirección exacto de tu aplicación y copia su ID de cliente.
  • Envuelve tu aplicación en XidProvider con el issuer https://xid.dev y tu ID de cliente, y verifica los tokens de acceso en tu backend con authenticateRequest.
import { XidProvider } from '@xid-kit/react'

export function App() {
  return (
    <XidProvider
      mode="oidc"
      issuer="https://xid.dev"
      clientId="client_abc123"
      redirectUri="https://app.example.com/auth/callback"
    >
      <Layout />
    </XidProvider>
  )
}
import { authenticateRequest } from '@xid-kit/backend'

const state = await authenticateRequest(request, {
  jwtKey: env.XID_JWKS_PUBLIC_KEY,
  issuer: 'https://xid.dev',
})
if (!state.isSignedIn) return new Response('Unauthorized', { status: 401 })

Los SDK se distribuyen como código fuente en el repositorio de XID. Cualquier biblioteca OIDC estándar también funciona con los endpoints de abajo.

En una instancia autoalojada, usa el dominio de tu propia instancia en lugar de https://xid.dev. Autoalojamiento explica la implementación.

URL base

XID es un proveedor de identidad. El dominio de la instancia es el emisor OIDC, la URL base de API, la URL base de Hosted Auth y la URL base de la consola. Las organizaciones aportan política, marca, membresía y aislamiento de recursos.

Empieza leyendo /.well-known/openid-configuration desde el dominio de la instancia. El documento de descubrimiento entrega a tu app los puntos de conexión authorization, token, userinfo, logout y JWKS para ese emisor.

Superficie Ruta Uso previsto
Descubrimiento OIDC /.well-known/openid-configuration Leer los metadatos del emisor antes de configurar una parte de confianza.
Autorización /authorize Redirigir usuarios al flujo unificado de Hosted Auth.
Token /token Intercambiar un código de autorización o token de actualización.
Userinfo /userinfo Leer declaraciones de un token de acceso válido.
API de administración /v1/* Gestiona recursos de organización desde tu servidor.

Integración mínima

  • Crea una aplicación OIDC y registra valores exactos de URI de redirección.
  • Usa el flujo de código de autorización con PKCE S256 para clientes de navegador y nativos.
  • Validar tokens de ID y tokens de acceso contra el emisor y la URI JWKS.
  • Almacena tokens de actualización en el servidor o en un almacén nativo seguro de credenciales.

Solicitud de autorización

sequenceDiagram
  participant Browser
  participant RP
  participant XID
  RP->>Browser: /authorize + PKCE S256
  Browser->>XID: /authorize + PKCE S256
  XID->>Browser: /sign-in
  Browser->>XID: WebAuthn / SSO
  XID->>Browser: code
  Browser->>RP: code
  RP->>XID: /token + PKCE S256
  XID->>RP: ID token + access token
const authorizeUrl = new URL('https://xid.dev/authorize')
authorizeUrl.searchParams.set('client_id', clientId)
authorizeUrl.searchParams.set('redirect_uri', redirectUri)
authorizeUrl.searchParams.set('response_type', 'code')
authorizeUrl.searchParams.set('scope', 'openid profile email')
authorizeUrl.searchParams.set('code_challenge', codeChallenge)
authorizeUrl.searchParams.set('code_challenge_method', 'S256')

Escribe para buscar

Usa las flechas para navegarPulsa Intro para seleccionarPulsa Escape para cerrar