2014-06-17 2 views
3

SSMS 2012에 Azure/BACPAC을 배포하는 것과 관련된 작업을 수행하는 동안 내 데이터베이스 (현재 로그온 한 사용자가 아님)SQL Server Management Studio 2012 - 데이터베이스를 SQL Azure에 배포 - SQL71501 사용자가 로그인에 대한 확인되지 않은 참조를 가지고 있음

데이터 패키지의 스키마 모델에 대한 유효성 검사가 실패했습니다. 오류 SQL71501 : [VARIABLE_USER_NAME_HERE] 요소의 유효성을 검사하는 동안 오류가 발생했습니다 : 사용자 : [VARIABLE_USER_NAME_HERE]이 (가) 로그인 [VARIABLE_USER_NAME_HERE]에 대한 참조를 확인할 수 없습니다. (Microsoft.SqlServer.Dac)

실마리가 있습니까?

답변

4

이 SO 질문은 정말 도움 : Can I ignore logins when publishing a Visual Studio Database project?

는 내가 함께 (내 로컬 데이터베이스)에 로그온 한 사용자가 피어 사용자와 관련된 로그인에 대한 로그인 정보를 볼 수있는 권한이 없다고 깨달았 오류 메시지에 대해 불만이 제기되고있었습니다. 좀 더 일반적인 영어로 작성되었으며 단지 2 명의 데이터베이스 사용자 (mr_spoon 및 mr_fork) 만 있다고 가정하면 오류 메시지의 의미는 "현재 로그온 한 사용자 [mr_spoon]는"mr_fork "라는 다른 사용자가 있음을 볼 수 있지만 볼 수는 없습니다

GRANT VIEW DEFINITION ON LOGIN::the_login_name_in_the_error_message TO the_user_i_logged_on_with_and_ran_the_export_from 

i.e. admin should run this: 
GRANT VIEW DEFINITION ON LOGIN::mr_fork TO mr_spoon 

:이 쿼리를 실행 한 후 내 Windows 관리자 로그인에 마스터 DB에 로그온하고 해당 사용자 "

과 관련된 [이 경우에"mr_fork "라는] 로그인의 세부 사항을 해결 SQL Server 권한 시스템은 사용자와 로그인의 개념을 모두 지원하므로 로그인을 의미하는 사용자 및 로그인을 의미 할 때 사용자를 말하면서 매우주의를 기울였습니다. 관리자 로그인에서 내보내기를 실행하면 요청할 수 있습니다. 그 일을 할 수있는 기계는 SSMS2012도없고 설치할 수도없고 관리자 로그인이 작동하는 유일한 기계입니다. 따라서이 문제는 희귀하지만 어쩌면 언젠가는 누군가에게 도움이 될 것이라고 기대합니다

나는 &을 게시 할 것입니다. 왜냐하면 어디서나 보았 ​​기 때문에 SQL71501에 대한 참조가 SSDT가 아닌 SSMS2012/Azure 배포에만있는 것으로 확인 되었기 때문입니다.