La seguridad con la que se encuentren depende totalmente de contra qué quiere defenderse y de qué quiere defender. La defensa contra un empleado interno que desea ver los registros de ventas de sus colegas es diferente de un atacante externo que quiere robar la información del cliente, que es diferente a la defensa contra un gobierno que quiere robar sus diseños patentados.
en términos generales, estos proveedores no son inseguros ya que siguen las recomendaciones básicas, como contraseñas de salazón, lo que le permite cambiar el algoritmo de hash, etc. (incluso cosas no criptográficas también). Sin embargo, luego se meten en problemas de configuración, como asegurarse de que la conexión a SQL sea segura, la página en la que PUBLICÓ sus credenciales es sobre SSL, o que las cookies de sesión estén protegidas a través de SSL, el acceso a la base de datos sea seguro, etc. / p>
Comparativamente, Windows Auth tiene problemas similares, y luego te metes en problemas de límites de seguridad, ya que se convierte en una molestia de usar Windows Auth a través de Internet.
En teoría , es probable que un almacén de Active Directory sea más seguro que una base de datos de SQL Server promedio, pero en realidad si todo lo que usa es la autenticación de usuario en un sitio web público, es probable MUY inseguro porque probablemente no sea tratado tan bien como el AD corporativo. Por otra parte, es probable que la AD corporativa tampoco sea bien tratada (en general, no necesariamente en su caso).
Las bases de datos SQL son propensas a ataques de inyección SQL, las tiendas de Active Directory son propensas a ataques específicos de Windows. Las bases de datos SQL tienden a llevar a la expansión de la identidad ... múltiples cuentas de usuario para múltiples aplicaciones distribuidas en múltiples bases de datos. Active Directory lleva cuentas centralizadas. Cualquiera puede ser bueno o malo, depende de lo que estés tratando de lograr.
Por lo general, no se recomienda escribir a sus propios proveedores, ya que no han pasado por un escrutinio público, mientras que los proveedores integrados en .NET sí lo han hecho. Los proveedores de terceros se encuentran con el mismo problema básico. ¿Cómo se han probado?
Y, a continuación, aparece una pregunta sobre por qué dejas que la aplicación maneje la autenticación. Tal vez sea mejor dejar que alguien más lo haga a través de la autenticación basada en reclamaciones. Esto empuja el riesgo a otro sistema como Google, Facebook o Windows Live.