Microsoft SQL Server에서는 다음을 사용할 수 있습니다.
GRANT EXECUTE TO <principal>
일부 사용자나 역할에 실행 권한을 부여합니다. 나는 탐지에 관심이 있습니다:
GRANT EXECUTE
해당 명령이 다음과 같은지 여부를 어떻게 간단하게 확인할 수 있습니까?이미특정 사용자/역할에 적용됩니까?(나 또는 다른 관리자에 의해)
예:
사용하고 GRANT EXECUTE TO user01
몇 주 후에 다시 돌아오는 경우: 나(또는 다른 사람)가 이미 사용했는지 확인하는 간단한 방법이 있습니까 GRANT EXECUTE TO user01
?
답변1
저장된 위치를 찾았으므로 누군가가 더 간단한 답변을 게시할 때까지 확인을 위해 이 코드 조각을 가까이에 보관하겠습니다.
DECLARE @username nvarchar(128) = 'user01';
SELECT COUNT(*) FROM sys.database_permissions
WHERE grantee_principal_id = (SELECT UID FROM sysusers WHERE name = @username)
AND class_desc = 'DATABASE'
AND type='EX'
AND permission_name='EXECUTE'
AND state = 'G';
결과는 0
부정적인 대답을 의미하고, 1
긍정적인 대답을 의미합니다.