내 DB 사용자가 어떤 AD 그룹에 속하는지 어떻게 알 수 있습니까? 특정 사용자가 데이터베이스에 가지고있는 모든 권한을 알아야합니다.데이터베이스의 특정 사용자의 권한은 무엇입니까?
0
A
답변
1
주어진 사용자의 모든 사용 권한 경로를 찾으려면 sys.login_token 및 sys.user_token을 사용하십시오.
sys.login_token은 현재 서버 보안 주체가 로그인으로 정의 된 구성원 인 모든 AD 그룹을 제공합니다. 예를 들어 AD 사용자 [domain \ user]가 [domain \ group1] 및 [domain \ group2]의 구성원이고 group1 만 로그인으로 정의 된 경우 group1 만 목록에 표시됩니다. sys.login_token은 로그인이 속한 서버 수준 역할도 나열합니다.
sys.user_token은 데이터베이스 스코프를 제외하고는 모두 동일합니다.
두보기 모두 "현재 사용자"의 컨텍스트에서 작동하므로 권한을 알아 내려면 다른 사람을 가장해야합니다. 구문은 쉬운 충분하다 :
execute as login = 'domain\user';
select * from sys.login_token;
select * from sys.user_token;
revert;
는 명시 적으로 사용자에게 부여 된 모든 권한을 얻을의 sys.database_permissions 및 sys.server_permissions을 확인하십시오. 당신은 당신이 다양한 경로에서 선택할 수있는 모든 권한을 계산하기 위해 노력을 통과하지 않으려면
select * from sys.database_permissions
where grantee_principal_id = user_id();
select * from sys.server_permissions
where grantee_principal_id = suser_id();
마지막으로, sys.fn_my_permissions를보십시오. 기본 구문은 다음과 같습니다.
select * from sys.fn_my_permissions('dbo.table', 'object');
1
사용 sys.fn_my_permissions
SELECT * FROM fn_my_permissions (NULL, 'DATABASE');
는 호출자의 유효 사용 권한 목록을 반환합니다.
SELECT * FROM fn_my_permissions('ATLY', 'USER');
'ATLY'라는 사용자의 유효 사용 권한 목록을 반환합니다.
관련 문제
- 1. 사용자의 벽에 게시 할 응용 프로그램을 요청할 수있는 권한은 무엇입니까?
- 2. 필요한 권한은 무엇입니까? 에
- 3. Apache - 사용 권한은 무엇입니까?
- 4. CIMSessions에 필요한 권한은 무엇입니까
- 5. PHP에 필요한 권한은 무엇입니까?
- 6. Win32 LogonUser 함수에 필요한 사용 권한은 무엇입니까?
- 7. 특정 사용자의 프록시로 로그인
- 8. SQLDependency에 필요한 사용 권한은 무엇입니까?
- 9. 웹 서버의 파일 사용 권한은 무엇입니까?
- 10. 데이터베이스의 특정 행에 삽입하는 방법은 무엇입니까?
- 11. 특정 사용자의 데이터베이스에서 값을 검색하는 방법은 무엇입니까?
- 12. openerp에서 특정 사용자의 버튼을 숨기는 방법은 무엇입니까?
- 13. 특정 사용자의 레코드 만 표시하는 방법은 무엇입니까?
- 14. 특정 사용자의 리트 윗을 크롤링하는 방법은 무엇입니까?
- 15. 특정 사용자의 정보를 추적하고로드하는 방법은 무엇입니까?
- 16. 데이터베이스의 특정 부분에 삽입
- 17. 데이터베이스의 특정 레코드를 계산하십시오.
- 18. 특정 사용자의 SHGetFolderPath()
- 19. 특정 사용자의 bean 완료
- 20. 특정 사용자의 프로세스 나열
- 21. 특정 사용자의 프로필을로드하는 방법
- 22. 특정 사용자의 액세스 제어
- 23. OpenRemoteBaseKey 사용에 필요한 사용 권한은 무엇입니까?
- 24. ShellExecuteEx로 시작된 프로세스의 기본 액세스 권한은 무엇입니까?
- 25. Git의 core.sharedrepository 설정의 영향을받는 파일 권한은 무엇입니까?
- 26. 특정 데이터베이스의 모든 인덱스 삭제
- 27. 권한은 EC2
- 28. ASP.NET 권한은
- 29. mvc4 권한은
- 30. 검사 권한은
첫 번째 문은 현재 사용자에게 부여 된 데이터베이스 수준 사용 권한을 반환합니다. 즉 누군가가'grant select to [youruser]'를 실행하면, 그 허가가 여기에 나타날 것입니다. 두 번째로는 명시된 사용자에게 사용자에게 부여 된 권한을 반환합니다. 즉, '가장'또는 '통제'와 같은 것을 볼 수 있습니다. 하지만 요점은 사용자가 전달할 수있는 것과 수행 할 수없는 것에 대해 알려주지 않습니다. –
나는 내 자신의 참조를 위해 WEXECUTE WITH OWNER가있는 저장 프로 시저 내부에서 호출자의 권한을 알아야 할 경우 다음 선택을 사용합니다. select database_user = USER_NAME(), [login] = SUSER_SNAME(), [원래 로그인] = ORIGINAL_LOGIN() –