sp_ActiveDirectory_Obj(Transact-SQL)

Microsoft Windows Active Directory에서 Microsoft SQL Server 데이터베이스의 등록을 제어합니다.

항목 링크 아이콘Transact-SQL 구문 표기 규칙

구문

sp_ActiveDirectory_Obj [ @Action = N'action'
     [ , [@ObjType = ] N'database' ]
          , [ @ObjName = ] N'database_name'

인수

  • [ @Action = ] N'action'
    SQL Server 데이터베이스를 등록하는 Active Directory 개체를 생성, 업데이트 또는 삭제할지를 지정합니다. action은 nvarchar(20)이며 기본값은 **N'create'**입니다.

    설명

    create

    디렉터리에 MS-SQL-SQLDatabase 개체를 생성하여 Active Directory에 SQL Server 데이터베이스를 등록합니다. MS-SQL-SQLDatabase 개체는 동작을 수행할 때 데이터베이스의 특성을 기록합니다. 이 값을 지정하는 경우 데이터베이스가 이미 등록되어 있으면 개체가 업데이트됩니다.

    update

    Active Directory의 MS-SQL-SQLDatabase 개체에 기록된 특성을 업데이트하여 Active Directory의 데이터베이스에 대해 등록된 특성을 새로 고칩니다.

    delete

    Active Directory에서 MS-SQL-SQLDatabase 개체를 삭제하여 데이터베이스의 Active Directory 등록을 제거합니다.

  • [ @ObjType = ] N'database'
    sp_ActiveDirectory_Obj가 Active Directory의 데이터베이스 개체에 대해 요청한 동작을 수행하도록 지정합니다. **N'database'**는 nvarchar(15)이며 기본값은 **N'database'**입니다. 이때 이 기본값은 유일하게 지원되는 값입니다.

  • [ @ObjName = ] N'database_name'
    등록 동작이 수행되는 데이터베이스의 이름을 지정합니다. database_name은 sysname이며 값을 지정해야 합니다. database_name은 sp_ActiveDirectory_Obj가 실행될 때 SQL Server 인스턴스에 있는 데이터베이스의 이름을 지정해야 합니다. database_name은 식별자에 대한 규칙을 따라야 합니다.

반환 코드 값

0(성공) 또는 1(실패)

결과 집합

없음

주의

인스턴스에서 데이터베이스를 등록하려면 현재 SQL Server 인스턴스가 Active Directory에 등록되어 있어야 합니다. Active Directory에서 인스턴스 등록을 제거하면 해당 인스턴스에 있는 데이터베이스의 등록도 모두 제거됩니다.

데이터베이스는 sp_ActiveDirectory_Obj를 사용하여 직접 Active Directory에 등록할 수 있는 유일한 엔터티입니다. Active Directory에서 SQL Server 인스턴스 등록을 제어하려면 sp_ActiveDirectory_SCP를 사용하십시오.

[!참고]

Active Directory 등록은 해당 등록을 만든 계정으로만 수정할 수 있습니다. SQL Server 서비스에서 사용하는 보안 계정을 변경하려면 Active Directory 등록을 삭제하고 서비스 계정을 변경한 후 다시 Active Directory 등록을 만들어야 합니다.

사용 권한

sysadmin 고정 서버 역할 또는 db_owner 고정 데이터베이스 역할의 멤버 자격이 필요합니다.

다음 예에서는 현재 SQL Server 인스턴스의 AdventureWorks2008R2 데이터베이스를 Active Directory에 등록합니다.

DECLARE @RetCode INT

EXEC @RetCode = sp_ActiveDirectory_Obj @Action = N'create',
     @ObjType = N'database',
     @ObjName = N'AdventureWorks2008R2';

PRINT 'Return code = ' + CAST(@RetCode AS VARCHAR);