Stored Procedures [dbo].[UpdatePolicyPrincipal]
Properties
PropertyValue
ANSI Nulls OnYes
Quoted Identifier OnYes
Parameters
NameData TypeMax Length (Bytes)Direction
@PolicyIDuniqueidentifier16
@PrincipalSidvarbinary(85)85
@PrincipalNamenvarchar(260)520
@PrincipalAuthTypeint4
@RoleNamenvarchar(260)520
@PrincipalIDuniqueidentifier16Out
@RoleIDuniqueidentifier16Out
Permissions
TypeActionOwning Principal
GrantExecuteRSExecRole
SQL Script
CREATE PROCEDURE [dbo].[UpdatePolicyPrincipal]
@PolicyID uniqueidentifier,
@PrincipalSid varbinary(85) = NULL,
@PrincipalName nvarchar(260),
@PrincipalAuthType int,
@RoleName nvarchar(260),
@PrincipalID uniqueidentifier OUTPUT,
@RoleID uniqueidentifier OUTPUT
AS
EXEC GetPrincipalID @PrincipalSid , @PrincipalName, @PrincipalAuthType, @PrincipalID  OUTPUT
SELECT @RoleID = (SELECT RoleID FROM Roles WHERE RoleName = @RoleName)
INSERT INTO PolicyUserRole
(ID, RoleID, UserID, PolicyID)
VALUES (newid(), @RoleID, @PrincipalID, @PolicyID)

GO
GRANT EXECUTE ON  [dbo].[UpdatePolicyPrincipal] TO [RSExecRole]
GO
Uses