Wednesday, August 6, 2008

GRANT ALL USERS

------------------------------------------------------------
-- SQL SCRIPT TO GRANT ALL USERS UNDER DYNGRP GROUP
-- ACCESS PRIVILEDGES TO ALL TABLES AND STORED PROCEDURES
-- RUN THIS SCRIPT UNDER A SELECTED COMPANY DB IN DYNAMICS.
------------------------------------------------------------

DECLARE @SQL_CMD VARCHAR(255)
DECLARE SQL_CURSOR CURSOR
FOR SELECT 'GRANT SELECT,UPDATE,INSERT,DELETE
ON [' + CONVERT(VARCHAR(64),NAME) + '] TO DYNGRP'
FROM SYSOBJECTS
WHERE (TYPE = 'U' OR TYPE = 'V') AND UID = 1

SET NOCOUNT ON
OPEN SQL_CURSOR
FETCH NEXT FROM SQL_CURSOR INTO @SQL_CMD
WHILE (@@FETCH_STATUS <> -1)
BEGIN
EXEC (@SQL_CMD)
FETCH NEXT FROM SQL_CURSOR INTO @SQL_CMD
END
DEALLOCATE SQL_CURSOR

DECLARE SQL_CURSOR CURSOR
FOR SELECT 'GRANT EXECUTE ON [' + CONVERT(VARCHAR(64),NAME) + '] TO DYNGRP'
FROM SYSOBJECTS
WHERE TYPE = 'P'

SET NOCOUNT ON
OPEN SQL_CURSOR
FETCH NEXT FROM SQL_CURSOR INTO @SQL_CMD
WHILE (@@FETCH_STATUS <> -1)
BEGIN
EXEC (@SQL_CMD)
FETCH NEXT FROM SQL_CURSOR INTO @SQL_CMD
END
DEALLOCATE SQL_CURSOR

No comments: