UFN_SECURITY_APPUSER_GRANTED_DATALIST_IN_NONRACROLE

Return

Return Type
bit

Parameters

Parameter Parameter Type Mode Description
@APPUSERID uniqueidentifier IN
@DATALISTCATALOGID uniqueidentifier IN

Definition

Copy

create function BBDW.[UFN_SECURITY_APPUSER_GRANTED_DATALIST_IN_NONRACROLE]
(
@APPUSERID uniqueidentifier,
@DATALISTCATALOGID uniqueidentifier
)
returns bit as

/*
Returns true if the given user has permissions to the given data list
in a role whose security group is blank

This function is optimized for use from the Blackbaud.AppFx.Security.Catalog.ConstitRecordSecurityService
class which implements the RecordSecurity service for Constituent record security.

As such, it assumes that a check for DENY occurs outside this function
and also assumes that a check for if the user is ISSYSADMIN occurs outside 
this function.  
*/


begin
--If user granted permission to the feature in a role with no ringfence then 
--the user has permission regardless of the record in question.
if exists
(
select 
1 
from 
BBDW.[v_SECURITY_SYSTEMROLEASSIGNMENT_USER_DATALIST] as SV
where
SV.[APPUSERID] = @APPUSERID AND 
SV.[DATALISTCATALOGID] = @DATALISTCATALOGID AND 
SV.[GRANTORDENY] = 1 AND 
SV.[RECORDSECURITYMODE] = 0
)
return 1;

return  0;

end