0

因此,当我注意到当我应用它时,我正在执行行级安全策略,它应该为用户工作。但是对于我作为系统管理员来说,我再也看不到表格内容了。因为政策也对我隐瞒了。

我如何添加自己也可以查看表格?

CREATE function [tst].[turva] (@yritys sysname, @username AS VARCHAR(50))
returns table
with Schemabinding
as
return select 1 as [turva_tulos]
from 
tst.Customer
where @yritys = user_name()
OR
@username = SUSER_NAME() --im still not getting the results.
4

1 回答 1

0

如果@username是数据库用户名,则@username = SUSER_NAME()sysadmin 的条件不能为真。

SUSER_NAME()是 sysadmin 的登录名,而在数据库中 sysadmin 始终映射为dbo

即系统管理员的条件应该是

OR
@username = 'dbo'
于 2017-08-25T08:11:02.533 回答