Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

    [Netid] [varchar](30) NULL

) ON [PRIMARY]

Image Added

CREATE TABLE [dbo].[Orders](

...

    [ACCT_NBR] [varchar](10) NULL

) ON [PRIMARY]

Image Added


Create Function fn_securitypredicate (@ACCT_NBR sysname)

returns table with Schemabinding

as

return select 1 as [fn_securityPredicate_result]

...

where (Netid = user_name() and @ACCT_NBR = ACCT_NBR)

union all

select 1 as [fn_securityPredicate_result]

where OR IS_SRVROLEMEMBER(N'sysadmin') = 1

...

Create security Policy dbo.fn_security

add Filter Predicate dbo.fn_securitypredicate(ACCT_NBR)on dbo.orders) on dbo.orders

WITH (STATE = ON, SCHEMABINDING = ON)

Testing Result

EXECUTE AS USER = 'bb57';

select * from dbo.predicate_tab order by netid asc

select * from dbo.orders

REVERT;

Image Added