개발중인 응용 프로그램의 사용 현황을 기록하려면 응용 프로그램을 사용하는 모든 사용자가 자신의 자격 증명으로 SQL Server 데이터베이스에 대한 쿼리를 실행해야합니다. 하지하기 위해다른 사용자를 IMPERSONATE 할 권한을 부여하는 방법?
은 로그인의 경우 그 짧은 창 과거 자신의 암호를 알고 수반하기 때문에, 내가 (사용자별로 연결을 생성 할 수없는 검색 가능한 방식으로 암호를 저장한다).
이 문제에 대한 (명백하지 않을 수도있는) 명백한 해결책은 모든 중요한 쿼리를 일반 "응용 프로그램"사용자로 실행하여 로그인 한 사용자를 가장하고 (로그인 한 사용자 만 연결하도록 요구하는 것입니다 사용자 이름은 ... 나쁜 일이 아닙니다.)
내 문제는 특정 역할의 모든 사용자 또는 일반적으로 모든 사용자에게 가장을 부여하는 방법이 확실하지 않다는 것입니다 (가장 좋은 아이디어는 아닙니다. 예를 들어, 앱이 sysadmin을 가장하는 것을 원하지 않기 때문입니다).).
는grant impersonate on all to ApplicationLogin
는
작동하지 않습니다 , 나는 그 행할 것 역할의 구성원에 가장을 부여하는 제안 찾을 수있는 문서 ...
어떤 아이디어가 없다?
특정 역할은 데이터베이스 역할을 의미합니까? –
정말 넓은 범위 일 수 있습니다. – Crisfole
추가 정보^ – Crisfole