Consulte la referencia en BOL para roles de nivel de base de datos :
db_owner
Los miembros del rol fijo de base de datos db_owner pueden realizar todas las actividades de configuración y mantenimiento en la base de datos, y también pueden descartar la base de datos .
La forma más fácil de ver todos los permisos es usar la sys.fn_my_permissions()
función. Primero verifique que es miembro de db_owner
:
select
rol.name
from sys.database_principals mem
inner join sys.database_role_members drm
on drm.member_principal_id = mem.principal_id
inner join sys.database_principals rol
on drm.role_principal_id = rol.principal_id
where mem.principal_id = user_id();
Ahora enumere todos los permisos efectivos de la base de datos:
select *
from sys.fn_my_permissions(null, 'database');
Eso debería ser lo suficientemente granular para sus propósitos. Algo a tener en cuenta, sys.fn_my_permissions()
devuelve los permisos efectivos , así que piense en ello como una agregación.
db_owner
membresía tiene por defecto los mismos permisos quedb_reader
ydb_writer
?