Netwrix 1Secure는 데이터와 아이덴티티 전반에 걸쳐 통합된 가시성을 제공합니다 - 14일간 무료로 전체 액세스가 가능합니다.무료 평가판 시작

리소스 센터방법 가이드

SQL Server에서 사용자 권한을 확인하는 방법

SQL Server에서 사용자 권한을 확인하는 방법

네이티브 솔루션

  • 시작 Microsoft SQL Server Management Studio (MSSMS).
  • 메뉴에서 File 를 클릭한 다음 Connect Object Explorer 를 선택합니다. 그런 다음 Connect to Server 대화 상자에서:
    • Server type 목록 상자에서 Database Engine 을 선택하세요.
    • Server name 텍스트 상자에 SQL 클러스터 서버의 이름을 입력하세요.
    • Authentication 목록 상자에서 SQL Server Authentication 방법 을 선택하고 사용자 자격 증명을 지정하세요. 서버에 연결할 때마다 암호를 다시 입력하고 싶지 않다면 Remember password 를 선택합니다.
  • Connect 를 클릭합니다.
  • 연결 후 “New Query”를 클릭하고 아래 쿼리를 쿼리 필드에 붙여넣으세요(예: ENTERPRISE\J.Carter):
      --- Creating temporary table for permissions list ---
SELECT entity_class,
NAME AS entity_name,
subentity_name,
permission_name
INTO #permsummary
FROM (
--- Collecting object-level permissions ---
SELECT 'OBJECT' AS entity_class,
NAME,
subentity_name,
permission_name
FROM sys.objects
CROSS apply Fn_my_permissions(Quotename(NAME), 'OBJECT') a
UNION ALL
--- Collecting database-level permissions ---
SELECT 'DATABASE' AS entity_class,
NAME,
subentity_name,
permission_name
FROM sys.databases
CROSS apply Fn_my_permissions(Quotename(NAME), 'DATABASE') a
UNION ALL
--- Collecting server-level permissions ---
SELECT 'SERVER' AS entity_class,
@@SERVERNAME AS NAME,
subentity_name,
permission_name
FROM Fn_my_permissions(NULL, 'SERVER')) p
--- Grouping all effective permissions for single object ---
SELECT DISTINCT entity_class,
entity_name,
subentity_name,
permissions
FROM (SELECT *
FROM #permsummary) p1
CROSS APPLY (SELECT permission_name + ', '
FROM (SELECT *
FROM #permsummary) p2
WHERE p2.entity_class = p1.entity_class
AND p2.entity_name = p1.entity_name
AND p2.subentity_name = p1.subentity_name
ORDER BY entity_class
FOR xml path('')) D ( permissions )
--- Delete temporary table ---
DROP TABLE #permsummary
      
  • Execute 를 클릭하거나 F5 키를 누르세요.
  • 쿼리 실행 결과에서 서버 수준 역할 및 보안 주체(멤버 이름) 목록을 확인하세요:
How to View SQL Server Database File Locations - Native Audiuting

Netwrix Auditor for SQL Server

  • Netwrix Auditor를 열고 Reports -> Predefined -> SQL Server - State-in-Time -> Account Permissions in SQL Server로 이동하세요.
  • 다음 필터를 지정합니다:
    • User account 필터에서 전체 사용자 이름을 입력합니다(예: ENTERPRISE\J.Carter).
    • Object type 필터에서 Select all 을 선택하면 사용자의 모든 권한을 볼 수 있습니다.
  • View  를 클릭하여 사용자에 대한 유효 권한의 명확한 보고서를 확인합니다:
a screenshot of the account permissions in sql server .

“Means Granted(부여 방식)” 필드는 해당 사용자에게 할당된 서버 역할과 데이터베이스 역할을 반영합니다. 값을 클릭하면 SQL Server Means Granted 보고서가 열리며, 선택한 SQL Server 개체에 대해 각 계정의 명시적 권한과 상속된 권한, 그리고 해당 권한이 어떻게 부여되었는지를 보여줍니다.

공유하기