De esta manera, si una de sus aplicaciones es hackeada, teóricamente
No pierdas ninguna credencial de inicio de sesión. Pero ¿es eso todo lo que hay?
No, un beneficio adicional (o posiblemente el beneficio principal) es que el propietario de un recurso puede dar acceso temporal a un subconjunto de sus recursos a un cliente sin entregar sus credenciales. Del documento que has vinculado:
Por ejemplo, un usuario final (propietario del recurso) puede otorgar una impresión
Servicio (cliente) acceso a sus fotos protegidas almacenadas en una foto-
servicio para compartir (servidor de recursos), sin compartir su nombre de usuario y
Contraseña con el servicio de impresión. En cambio, ella se autentica
directamente con un servidor de confianza para el servicio de intercambio de fotos
(servidor de autorizaciones), que emite la delegación de servicios de impresión-
credenciales específicas (token de acceso).
La Guía para principiantes de OAuth explica esto un poco más a fondo.
¿Qué pasa si el servidor de autenticación es hackeado?
Eso sería malo, pero no es más probable que su servidor de recursos sea hackeado.
De hecho, probablemente sea menos probable, ya que un servidor de autenticación es menos complejo que un servidor de recursos y, por lo tanto, menos abierto a las vulnerabilidades comunes de la web (solo consultas de bases de datos muy limitadas, por lo que solo hay pocas posibilidades de inyección SQL; no o cerca a ninguna salida del usuario, por lo que hay menos peligro de XSS; no se carga ningún archivo; probablemente no hay peligro de LFI / RFI; etc.). Por supuesto, todavía hay problemas .
Entonces, el segundo beneficio de OAuth es que separa los datos confidenciales que son relativamente fáciles de manejar de los menos sensibles, que son bastante complejos de manejar y, por lo tanto, menos protegidos.
¿No estás poniendo todos tus huevos en una canasta usando esta arquitectura?
Tú también estabas haciendo eso antes. Ahora al menos tienes dos canastas.
Y el protocolo no parece sugerir que solo debas tener un solo servidor de autenticación para todos tus servidores de aplicaciones. Por lo tanto, si antes tenía varios servidores de aplicaciones separados, ahora puede tener un servidor de autenticación para cada uno de ellos (si los costos valen la ganancia de seguridad para usted).