Seguridad y trabajo diario - SSO corporativo
Hay dos ámbitos, y nunca se mezclan
Una configuración a nivel de cuenta solo inicia sesión con usuarios de esa cuenta; una configuración de plataforma (sin cuenta asociada) solo inicia sesión con personal de Dock. El ámbito lo determina quién está conectado, nunca los parámetros de la petición - en concreto, si el identificador de organización de la dirección apunta a la configuración de plataforma o a la de una cuenta concreta. Un superadministrador que configura el propio SSO corporativo de Dock no activa nada para ningún suscriptor, y a la inversa también se cumple: la configuración de una cuenta nunca llega al personal de Dock. Una configuración por ámbito - un índice único en la base de datos lo garantiza, así que nunca se pueden crear dos configuraciones de plataforma por error.
Quién tiene acceso a la pantalla
Entre los roles de plataforma, la pantalla de SSO corporativo solo la ve el superadministrador - es una configuración de acceso al panel, no de proyectos ni de facturación, así que un superdesarrollador o un supercontable nunca la tocan. Del lado de la cuenta la configuran el propietario y el administrador de la cuenta.
Qué comprueba DockRay en cada inicio de sesión
Antes de dejar entrar a nadie, DockRay verifica en orden: el state y el nonce de un solo uso, la firma del token ID con las claves públicas del proveedor (JWKS), el emisor (iss), la audiencia (aud), la caducidad (exp) y el correo confirmado (email_verified). La falta o la discrepancia de cualquiera de estos valores termina el inicio de sesión con un error, en lugar de dejar entrar a alguien con una prueba de identidad incompleta.
Protección frente a SSRF
La dirección de discovery y cada endpoint que devuelva el proveedor deben ser una dirección HTTPS pública - las direcciones privadas y reservadas se rechazan, porque un issuer configurable sería, de lo contrario, una herramienta para sondear la red interna de DockRay con los permisos de un administrador de cuenta. El cliente HTTP usado para hablar con el proveedor nunca sigue redirecciones - la dirección se comprueba antes de enviar la petición, y una redirección ya apuntaría a una dirección que nadie ha verificado.
El SSO no crea cuentas
Solo puede iniciar sesión un usuario existente que pertenezca al ámbito de esa configuración - la integración nunca crea una cuenta ni traslada a un usuario entre cuentas. En el primer inicio de sesión, la coincidencia se hace por el correo confirmado; cada inicio de sesión posterior se apoya ya en el identificador sub guardado de forma permanente, no en el correo, que puede cambiar. Cambiar el issuer en la configuración elimina los vínculos existentes - una decisión deliberada, porque un issuer nuevo significa un proveedor de identidad distinto, y las pruebas de identidad antiguas no deberían trasladarse automáticamente a uno nuevo.
Qué ocurre al perder el acceso
El segundo factor de DockRay se aplica tras un inicio de sesión SSO correcto exactamente igual que tras uno con contraseña - el proveedor de identidad demuestra quién es alguien, pero el acceso al panel lo decide solo DockRay. Un usuario desactivado no puede iniciar sesión ni siquiera con un token correcto y totalmente verificado. Si una cuenta de suscriptor baja al plan gratuito, el inicio de sesión por esta vía se apaga por completo, no solo se oculta el botón en el panel - la integración es un componente de pago y deja de funcionar en cuanto se pierde ese componente.