Diferencia entre esquemas propios y membresía de roles para Microsoft SQL Server


24

¿Hay diferencias entre Owned Schemasy Role Members?

Según tengo entendido, Role Membersson obligatorios: el usuario debe tener al menos una de las casillas de Role Membersverificación marcadas.

Sin embargo, el Owned Schemasno es obligatorio. Realmente me hace preguntarme por qué hay una necesidad de tener Owned Schemasallí.

ingrese la descripción de la imagen aquí

Respuestas:


17

Manzanas y naranjas. Los roles son roles y los esquemas son esquemas. El hecho de que haya un rol llamado db_accessadminy también un esquema llamado db_accessadminno significa que un rol sea un esquema ni que un esquema sea un rol. Los roles son contenedores de membresía de seguridad, un director es miembro de un rol. Los esquemas contienen objetos vinculados al esquema de la base de datos y son propiedad de un principal. Cuando crea un nuevo usuario, puede elegir su esquema predeterminado, agregarlo a ciertos roles y otorgarle la propiedad de los esquemas. Aunque las acciones son separadas, los diseñadores de este diálogo sienten que de alguna manera están relacionadas como para merecer todo ese UX real estate (eso es cuestionable, pero un tema completamente diferente).


Leyendo entre líneas , supongo que el punto de tener estos esquemas es que, por ejemplo, puede hacer que ciertos objetos puedan ser escritos por los usuarios con el db_datareaderrol y el esquema, que no son necesariamente legibles por nadie más. Funcionaría bien para una aplicación que solo necesita acceso de lectura dbo, pero necesita instalar algunos procs o disparadores almacenados. Por supuesto, eso aún requiere que agregue a cada usuario tanto al rol como al esquema manualmente.
jpaugh

-1

Bueno ... este es un hilo muy antiguo, pero aún me faltan 2 centavos para aquellos que aún lo visiten aquí. Este enlace tiene la mejor respuesta para la consulta anterior.

https://docs.microsoft.com/en-us/dotnet/framework/data/adonet/sql/ownership-and-user-schema-separation-in-sql-server

Un extracto de lo mismo:

SQL Server se entrega con diez esquemas predefinidos que tienen los mismos nombres que los usuarios y roles integrados de la base de datos. Estos existen principalmente por compatibilidad con versiones anteriores. Puede eliminar los esquemas que tienen los mismos nombres que los roles fijos de la base de datos si no los necesita.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.