GRANT CONNECT TO [NT AUTHORITY\NETWORK SERVICE] GO GRANT SELECT ON [dbo].[vw_aspnet_Applications] TO [aspnet_Membership_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Applications] TO [aspnet_Profile_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Applications] TO [aspnet_Roles_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Applications] TO [aspnet_Personalization_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_MembershipUsers] TO [aspnet_Membership_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Profiles] TO [aspnet_Profile_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Roles] TO [aspnet_Roles_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Users] TO [aspnet_Membership_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Users] TO [aspnet_Profile_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Users] TO [aspnet_Roles_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_Users] TO [aspnet_Personalization_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_UsersInRoles] TO [aspnet_Roles_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_WebPartState_Paths] TO [aspnet_Personalization_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_WebPartState_Shared] TO [aspnet_Personalization_ReportingAccess] GO GRANT SELECT ON [dbo].[vw_aspnet_WebPartState_User] TO [aspnet_Personalization_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Roles_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Profile_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Profile_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_WebEvent_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_RegisterSchemaVersion] TO [aspnet_Personalization_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Roles_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Profile_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Profile_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_WebEvent_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_CheckSchemaVersion] TO [aspnet_Personalization_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Roles_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Profile_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Profile_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_WebEvent_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UnRegisterSchemaVersion] TO [aspnet_Personalization_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_CreateUser] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetUserByName] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetUserByName] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetUserByUserId] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetUserByUserId] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetUserByEmail] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetUserByEmail] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetPasswordWithFormat] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_UpdateUserInfo] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetPassword] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_SetPassword] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_ResetPassword] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_UnlockUser] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_UpdateUser] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_ChangePasswordQuestionAndAnswer] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetAllUsers] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetNumberOfUsersOnline] TO [aspnet_Membership_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_GetNumberOfUsersOnline] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_FindUsersByName] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Membership_FindUsersByEmail] TO [aspnet_Membership_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Users_CreateUser] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Users_DeleteUser] TO [aspnet_Membership_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Profile_GetProperties] TO [aspnet_Profile_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Profile_SetProperties] TO [aspnet_Profile_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Profile_DeleteProfiles] TO [aspnet_Profile_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Profile_DeleteInactiveProfiles] TO [aspnet_Profile_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Profile_GetNumberOfInactiveProfiles] TO [aspnet_Profile_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Profile_GetProfiles] TO [aspnet_Profile_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_IsUserInRole] TO [aspnet_Roles_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_IsUserInRole] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_GetRolesForUser] TO [aspnet_Roles_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_GetRolesForUser] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Roles_CreateRole] TO [aspnet_Roles_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Roles_DeleteRole] TO [aspnet_Roles_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Roles_RoleExists] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_AddUsersToRoles] TO [aspnet_Roles_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_RemoveUsersFromRoles] TO [aspnet_Roles_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_GetUsersInRoles] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_UsersInRoles_FindUsersInRole] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Roles_GetAllRoles] TO [aspnet_Roles_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Personalization_GetApplicationId] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_Paths_CreatePath] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAllUsers_GetPageSettings] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAllUsers_ResetPageSettings] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAllUsers_SetPageSettings] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationPerUser_GetPageSettings] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationPerUser_ResetPageSettings] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationPerUser_SetPageSettings] TO [aspnet_Personalization_BasicAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAdministration_DeleteAllState] TO [aspnet_Personalization_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAdministration_ResetSharedState] TO [aspnet_Personalization_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAdministration_ResetUserState] TO [aspnet_Personalization_FullAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAdministration_FindState] TO [aspnet_Personalization_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_PersonalizationAdministration_GetCountOfState] TO [aspnet_Personalization_ReportingAccess] GO GRANT EXECUTE ON [dbo].[aspnet_WebEvent_LogEvent] TO [aspnet_WebEvent_FullAccess] GO GRANT SELECT ON [dbo].[DSC_Parse_Ids] TO [DSC_Public] GO -- Grand sproc permissions to DSC_Public SELECT DISTINCT USER_NAME(o.uid) + '.' + OBJECT_NAME(c.id) AS ObjectName, CASE WHEN OBJECTPROPERTY(c.id, 'IsReplProc') = 1 THEN 'Replication stored procedure' WHEN OBJECTPROPERTY(c.id, 'IsExtendedProc') = 1 THEN 'Extended stored procedure' WHEN OBJECTPROPERTY(c.id, 'IsProcedure') = 1 THEN 'Stored Procedure' END AS ObjectType INTO #sproc FROM syscomments c INNER JOIN sysobjects o ON c.id = o.id WHERE ( OBJECTPROPERTY(c.id, 'IsReplProc') = 1 OR OBJECTPROPERTY(c.id, 'IsExtendedProc') = 1 OR OBJECTPROPERTY(c.id, 'IsProcedure') = 1 ) DECLARE sprocLoop CURSOR FOR SELECT ObjectName FROM #sproc WHERE ObjectName like 'dbo.DSC%' DECLARE @sprocName NVARCHAR(4000) OPEN sprocLoop FETCH NEXT FROM sprocLoop INTO @sprocName WHILE @@FETCH_STATUS = 0 BEGIN DECLARE @GrantSql NVARCHAR(MAX) SET @GrantSql = 'GRANT EXEC ON ' + @sprocName + ' TO DSC_Public' PRINT @GrantSql EXEC(@GrantSql) FETCH NEXT FROM sprocLoop INTO @sprocName END CLOSE sprocLoop DEALLOCATE sprocLoop DROP TABLE #sproc GO GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Block TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Block_Type_Group TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Block_Type_Group_Block_Type_Map TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Block_Type_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_BlockContainer_Template TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Block_Reference TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Page TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Html TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Article TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Article_Revision TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Comment TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Group TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Group_Article_Map TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_ObjectType_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Permission TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Permission_Type_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Subscription TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Binary TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Download TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_PageGroup TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_PageHeader TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Referrer_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Article_Tag_Map TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Tag TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_BulkImport TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_File TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Referrer_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Ship_Estimate_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Manufacturer TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Role TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Coupon TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_GiftCertificate TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Product_Download TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Form TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Form_Data TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Form_Field TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_List TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_List_Data TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_List_Field TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_DisplayControl_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Selection_Type_DisplayControl_Map TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Selection_Type_lkp TO [DSC_Public] GRANT DELETE, INSERT, SELECT, UPDATE ON dbo.DSC_Image TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[CategoryProductUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[CrossSellProductUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[IdValueUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[IdUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[ProductAttributeUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[ProductDescriptorUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[ProductDownloadUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[ProductImageUDT] TO [DSC_Public] GRANT EXECUTE ON TYPE::[dbo].[VolumePricingUDT] TO [DSC_Public] GRANT CONNECT TO [NT AUTHORITY\NETWORK SERVICE] GO GRANT CREATE PROCEDURE TO [Sql_Dependency_Starter] GO GRANT CREATE QUEUE TO [Sql_Dependency_Starter] GO GRANT CREATE SERVICE TO [Sql_Dependency_Starter] GO GRANT REFERENCES on CONTRACT::[http://schemas.microsoft.com/SQL/Notifications/PostQueryNotification] to [Sql_Dependency_Starter] GO GRANT VIEW DEFINITION TO [Sql_Dependency_Starter] GO --GRANT SELECT TO [Sql_Dependency_Subscriber] --GO GRANT SUBSCRIBE QUERY NOTIFICATIONS TO [Sql_Dependency_Starter] GO GRANT RECEIVE ON QueryNotificationErrorsQueue TO [Sql_Dependency_Starter] GO GRANT SUBSCRIBE QUERY NOTIFICATIONS TO [Sql_Dependency_Subscriber] GO GRANT REFERENCES on CONTRACT::[http://schemas.microsoft.com/SQL/Notifications/PostQueryNotification] to [Sql_Dependency_Subscriber] GO CREATE CERTIFICATE dynamicCert ENCRYPTION BY PASSWORD = 'dsc dyn@mic2007' WITH SUBJECT = 'Certificate for Dynamic SQL', START_DATE = '20070101', EXPIRY_DATE = '21000101' GO CREATE USER dynamicCertUser FROM CERTIFICATE dynamicCert GO GRANT SELECT ON dbo.DSC_User TO dynamicCertUser GRANT SELECT ON dbo.DSC_Address TO dynamicCertUser GRANT SELECT ON dbo.aspnet_Users TO dynamicCertUser GRANT SELECT ON dbo.aspnet_Membership TO dynamicCertUser GRANT SELECT ON dbo.DSC_Product TO dynamicCertUser GRANT SELECT ON dbo.DSC_Category_Product_Map TO dynamicCertUser GRANT SELECT ON dbo.DSC_Product_Attribute_Map TO dynamicCertUser GRANT SELECT ON dbo.DSC_Attribute TO dynamicCertUser GRANT SELECT ON dbo.DSC_Product_Attribute_Value TO dynamicCertUser GRANT SELECT ON dbo.DSC_Product_Descriptor TO dynamicCertUser GRANT SELECT ON dbo.vw_DSC_Product_Stock TO dynamicCertUser GRANT SELECT ON dbo.DSC_Product_Review TO dynamicCertUser GRANT SELECT ON dbo.DSC_Order TO dynamicCertUser GRANT SELECT ON dbo.DSC_Order_Item TO dynamicCertUser GRANT SELECT ON dbo.DSC_Order_Address TO dynamicCertUser GRANT SELECT ON dbo.DSC_Order_Note TO dynamicCertUser GRANT SELECT ON dbo.DSC_Order_Total TO dynamicCertUser GRANT SELECT ON dbo.DSC_Category_GetChildren TO dynamicCertUser GRANT SELECT ON dbo.DSC_Page TO dynamicCertUser GRANT SELECT ON dbo.DSC_Coupon TO dynamicCertUser GRANT SELECT ON dbo.DSC_GiftCertificate TO dynamicCertUser GRANT SELECT ON dbo.DSC_Return TO dynamicCertUser GRANT SELECT ON dbo.DSC_Email_Campaign TO dynamicCertUser GRANT SELECT ON dbo.DSC_Statistic TO dynamicCertUser GRANT SELECT ON dbo.DSC_Statistic_Category_lkp TO dynamicCertUser GRANT SELECT ON dbo.DSC_UserTrack TO dynamicCertUser GRANT DELETE, INSERT, SELECT, UPDATE, ALTER ON dbo.DSC_Form_Data TO dynamicCertUser GRANT DELETE, INSERT, SELECT, UPDATE, ALTER ON dbo.DSC_List_Data TO dynamicCertUser GO -- And each time you change the procedure: ADD SIGNATURE TO [dbo].[DSC_Order_GetSummary] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_User_Search] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Product_Search] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Product_Review_GetAll] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_OrderItem_GetRecurring] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Order_Search] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Order_GetByDateRangeAndStatusList] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Return_GetSummary] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Return_Search] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_EmailCampaign_GetAll] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Sale_GetMetrics] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Order_GetMetrics] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_Statistic_GetMetrics] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_FormData_Add] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_FormData_AddField] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_FormData_DeleteField] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_FormData_Get] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_FormData_GetById] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_FormData_Update] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_ListData_Add] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_ListData_AddField] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_ListData_DeleteField] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_ListData_Get] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_ListData_GetById] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' ADD SIGNATURE TO [dbo].[DSC_ListData_Update] BY CERTIFICATE dynamicCert WITH PASSWORD = 'dsc dyn@mic2007' GO