SQL Server 로그인을 추가할 수 없습니다.
-
09-06-2019 - |
문제
다음과 같이 SQL Server 로그인을 만들려고 하면
CREATE LOGIN [ourdomain\SQLAccessGroup] FROM WINDOWS;
이 오류가 발생합니다.
서버 보안 주체 'ourdomain\SQLAccessGroup'이 이미 있습니다.
그러나 이 코드를 시도하면
DROP LOGIN [ourdomain\SQLAccessGroup]
이 오류가 발생합니다.
'ourdomain\SQLAccessGroup' 로그인이 존재하지 않거나 권한이 없기 때문에 삭제할 수 없습니다.
이 코드를 실행하는 사용자는 시스템 관리자입니다.추가적으로 사용자는 ourdomain\SQLAccessGroup
이 쿼리에는 표시되지 않습니다
select * from sys.server_principals
누구든지 어떤 아이디어가 있습니까?
해결책
우리는 아직도 그 내용을 이해하기 위해 애쓰고 있습니다. 어떻게 그러나 [ourdomain\SQLAccessGroup]은 컨설턴트에 의해 다른 사용자 이름으로 별칭이 지정된 것 같습니다(MS CRM 설치의 일부임).우리는 마침내 몇 가지 논리와 오래된 SID 비교를 사용하여 누가 사기꾼 게임을 하고 있는지 확인할 수 있었습니다.
우리의 힌트는 사용자로 로그인을 데이터베이스에 추가하려고 시도했을 때 나타났습니다(이미 존재했기 때문에). 그리고 다음 오류가 발생했습니다.
The login already has an account under a different user name.
그래서 각 DB 사용자를 조사하기 시작했고 범인을 알아낼 수 있었습니다.나는 결국 그것을 추적했고 CRM 설치가 작동할 수 있도록 사용자 이름과 로그인 이름을 바꿀 수 있었습니다.내 시간에 대해 시간당 $165.00를 청구할 수 있는지 궁금합니다...:-)
다른 팁
백업이나 다른 것에서 복원할 때인가요?SQL의 사용자 계정에 문제가 있는 상황에서 다음이 효과가 있다는 것을 알았습니다.
EXEC sp_change_users_login ‘Auto_Fix’, ‘user_in_here’
Windows 사용자 이름을 사용하여 SQL Server를 설치한 다음 Windows에서 컴퓨터 이름과 Windows 사용자 이름을 바꾸었을 때 이런 일이 발생했습니다.SQL Server의 서버->보안->로그인 노드에는 여전히 이전 "컴퓨터 이름\사용자 이름"이 있습니다.
해결책은 서버->보안->으로 이동하는 것입니다.로그인 그리고 마우스 오른쪽 버튼을 클릭하세요 -> 이름 바꾸기 이전 Windows 사용자를 사용하고 새 사용자를 사용하십시오. 컴퓨터 이름\사용자 이름.