사용자 정의 데이터 형식이있는 SQL Server 2005에서 실행되는 DB가 있습니다. 사용자 정의 데이터 형식은 모델 데이터베이스에도 구현되어 있으므로 임시 테이블을 만들 때 동일한 사용자 정의 데이터 형식을 사용할 수 있습니다.SQL Server 2005 사용자 정의 데이터 형식, tempdb 및 사용 권한
CREATE TYPE [dbo].[ product_code] FROM [varchar](8) NULL
그리고 모델의 동일한 : 나는 정의이 데이터 타입이 AppDB에 예를 들어
,
CREATE TYPE [dbo].[ product_code] FROM [varchar](8) NULL
내가 찾은 내 데이터베이스 인스턴스에 보안 로그인이있는 경우 그 sysadmin 서버 역할을 사용하면 사용자가 product_code 데이터 유형을 사용하여 tempdb에 테이블을 만드는 저장 프로 시저를 호출하는 데 문제가 없지만 응용 프로그램 보안 로그인에서 sysadmin을 제거하면 저장 프로 시저 호출이 실패합니다.
사용자 정의 데이터 유형을 전체 varchar 시스템 데이터 유형으로 바꾸면 동일한 저장 프로 시저 호출이 성공합니다.
보안상의 이유로 sysadmin 서버 역할을 응용 프로그램 보안 로그인에 추가하지 않습니다. 사용자 정의 데이터 형식을 계속 사용하려면 어떤 옵션이 있습니까? SQL Server 2008에서는 이러한 옵션이 변경됩니까?
특히 역할에 부여 된 권한 외에 어떤 권한이 필요합니까? 모든 저장 프로 시저를 편집해야하는 대답은 응답하지 않는 것으로 간주됩니다.
사용자에게 AppDB에있는 권한은 무엇입니까? 예 : 해당 데이터 형식의 * local * 테이블을 만들 수 있습니까? –
또한이 블로그 게시물을 유용하게 사용할 수 있습니다. 유형 별 문서는 별칭 유형을 사용하여 시행하기보다 장기적으로 번거롭게 될 것입니다. http://sqlblog.com/blogs/aaron_bertrand/archive/2009/10/14/bad-habits-to-kick-using-alias-types.aspx –
문서 링크를 제공해 주셔서 감사합니다. 보내 주셨습니다. 검토를 위해 시스템 설계자에게 알려줍니다. 방금 db_ddladmin 고정 사용자 역할에 사용자를 추가했는데 문제가 해결되었습니다. 이것이 올바른 일입니까? 나는 sysadmin 역할에 사용자를 추가하는 것보다 낫다고 생각합니다. 그러나 나는이 물건에 대해 많이 알지 못한다는 것을 인정합니다. –