CREATE USER(Transact-SQL)

 

이 항목은 다음에 적용됩니다.예SQL Server(2008부터 시작)예Azure SQL 데이터베이스예Azure SQL 데이터 웨어하우스예병렬 데이터 웨어하우스

현재 데이터베이스에 사용자를 추가합니다. 7 가지 유형의 사용자는 가장 기본적인 구문의 샘플으로 다음과 같습니다.

마스터의 로그인 기반 사용자 사용자의 가장 일반적인 유형입니다.

  • 사용자는 Windows Active Directory 계정에 따라 로그인을 기반으로 합니다. CREATE USER [Contoso\Fritz];
  • Windows 그룹을 기반으로 하는 로그인 기반 사용자 CREATE USER [Contoso\Sales];
  • SQL Server 인증을 사용하는 로그인 기반 사용자 CREATE USER Mary;

데이터베이스에서 인증 하는 사용자가 이용할 수 있도록 데이터베이스 이식성을 권장 합니다.
항상에서 허용 SQL 데이터베이스합니다. 에 포함된 된 데이터베이스에만 허용 됩니다 SQL Server합니다.

  • 로그인이 없는 Windows 사용자 기반 사용자 CREATE USER [Contoso\Fritz];
  • 로그인이 없는 Windows 그룹 기반 사용자 CREATE USER [Contoso\Sales];
  • 사용자에 SQL 데이터베이스 또는 SQL 데이터 웨어하우스 Azure Active Directory 사용자에 기반 합니다. CREATE USER [Contoso\Fritz] FROM EXTERNAL PROVIDER;
  • 암호가 있는 포함된 데이터베이스 사용자 (에서 사용할 수 없는 SQL 데이터 웨어하우스.) CREATE USER Mary WITH PASSWORD = '********';

Windows 그룹 로그인을 통해 연결 하는 Windows 보안 주체 기반 사용자

  • 로그인이 없지만 Windows 그룹의 멤버 자격을 통해 데이터베이스 엔진에 연결할 수 있는 Windows 사용자 기반 사용자 CREATE USER [Contoso\Fritz];

  • 로그인이 없지만 다른 Windows 그룹의 멤버 자격을 통해 데이터베이스 엔진에 연결할 수 있는 Windows 그룹 기반 사용자 CREATE USER [Contoso\Fritz];

인증할 수 없는 이러한 사용자를 로그인 할 수 없는 SQL Server 또는 SQL 데이터베이스합니다.

  • 로그인이 없는 사용자. 로그인할 수는 없지만 권한을 부여받을 수 있습니다. CREATE USER CustomApp WITHOUT LOGIN;
  • 인증서 기반 사용자. 로그인할 수는 없지만 권한을 부여받고 모듈에 서명할 수 있습니다. CREATE USER TestProcess FOR CERTIFICATE CarnationProduction50;
  • 비대칭 키 기반 사용자. 로그인할 수는 없지만 권한을 부여받고 모듈에 서명할 수 있습니다. CREATE User TestProcess FROM ASYMMETRIC KEY PacificSales09;

Topic link icon Transact-SQL 구문 표기 규칙

-- Syntax for SQL Server and Azure SQL Database  
  
-- Syntax Users based on logins in master  
CREATE USER user_name   
    [   
        { FOR | FROM } LOGIN login_name   
    ]  
    [ WITH <limited_options_list> [ ,... ] ]   
[ ; ]  
  
--Users that authenticate at the database  
CREATE USER   
    {  
      windows_principal [ WITH <options_list> [ ,... ] ]  
  
    | user_name WITH PASSWORD = 'password' [ , <options_list> [ ,... ]   
    | Azure_Active_Directory_principal FROM EXTERNAL PROVIDER   
    }  
  
 [ ; ]  
  
--Users based on Windows principals that connect through Windows group logins  
CREATE USER   
    {   
          windows_principal [ { FOR | FROM } LOGIN windows_principal ]  
        | user_name { FOR | FROM } LOGIN windows_principal  
}  
    [ WITH <limited_options_list> [ ,... ] ]   
[ ; ]  
  
--Users that cannot authenticate   
CREATE USER user_name   
    {  
         WITHOUT LOGIN [ WITH <limited_options_list> [ ,... ] ]  
       | { FOR | FROM } CERTIFICATE cert_name   
       | { FOR | FROM } ASYMMETRIC KEY asym_key_name   
    }  
 [ ; ]  
  
<options_list> ::=  
      DEFAULT_SCHEMA = schema_name  
    | DEFAULT_LANGUAGE = { NONE | lcid | language name | language alias }  
    | SID = sid   
    | ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = [ ON | OFF ] ]  
  
<limited_options_list> ::=  
      DEFAULT_SCHEMA = schema_name ]   
    | ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = [ ON | OFF ] ]  
  
-- SQL Database syntax when connected to a federation member  
CREATE USER user_name  
[;]  

-- Syntax for Azure SQL Data Warehouse  
  
CREATE USER user_name   
    [ { { FOR | FROM } { LOGIN login_name }   
      | WITHOUT LOGIN  
    ]   
    [ WITH DEFAULT_SCHEMA = schema_name ]  
[;]

CREATE USER Azure_Active_Directory_principal FROM EXTERNAL PROVIDER  
    [ WITH DEFAULT_SCHEMA = schema_name ]  
[;]

  

-- Syntax for Parallel Data Warehouse  
  
CREATE USER user_name   
    [ { { FOR | FROM }  
      {   
        LOGIN login_name   
      }   
      | WITHOUT LOGIN  
    ]   
    [ WITH DEFAULT_SCHEMA = schema_name ]  
[;]  

user_name
이 데이터베이스 내에서 사용자를 식별하는 이름을 지정합니다. user_name 되는 sysname합니다. 최대 128자까지 지정할 수 있습니다. Windows 보안 주체 기반 사용자를 만드는 경우 다른 사용자 이름을 지정하지 않으면 Windows 보안 주체 이름이 사용자 이름이 됩니다.

로그인 login_name
데이터베이스 사용자를 만들 로그인을 지정합니다. login_name 서버에서 유효한 로그인 이어야 합니다. Windows 보안 주체(사용자 또는 그룹)를 기반으로 하는 로그인이거나 SQL Server 인증을 사용하는 로그인일 수 있습니다. 이 SQL Server 로그인이 데이터베이스에 들어가면 이 로그인은 만들 데이터베이스 사용자의 이름과 ID를 획득합니다. Windows 보안 주체에서 매핑된 로그인을 만들 때 사용 하 여 형식을 [< domainName>\< loginName>]합니다. 예를 보려면 구문 요약합니다.

CREATE USER 문이 SQL 일괄 처리의 유일한 문인 경우 Microsoft Azure SQL Database는 WITH LOGIN 절을 지원합니다. CREATE USER 문이 SQL 일괄 처리의 유일한 문이 아니거나 동적 SQL에서 실행되는 경우 WITH LOGIN 절이 지원되지 않습니다.

DEFAULT_SCHEMA = schema_name
서버에서 이 데이터베이스 사용자에 대한 개체 이름을 확인할 때 첫 번째로 검색하는 스키마를 지정합니다.

'windows_principal'
데이터베이스 사용자를 만들 Windows 보안 주체를 지정합니다. windows_principal 는 Windows 사용자 또는 Windows 그룹 일 수 있습니다. 사용자를 만들 수는 경우에는 windows_principal 로그인을가지고 있지 않습니다. 에 연결할 때 SQL Server, 경우는 windows_principal 에서 보안 주체를 인증 해야 하는 Windows 로그인이 없는 데이터베이스 엔진 로그인에 있는 Windows 그룹의 멤버 자격을 통해 또는 연결 문자열에 초기 카탈로그로 포함된 된 데이터베이스를 지정 해야 합니다. Windows 보안 주체에서 사용자를 만들 때 사용 하 여 형식을 [< domainName>\< loginName>]합니다. 예를 보려면 구문 요약합니다.

'Azure_Active_Directory_principal'

적용 대상: SQL 데이터베이스, SQL 데이터 웨어하우스합니다.

데이터베이스 사용자를 만들 Azure Active Directory 보안 주체를 지정 합니다. Azure_Active_Directory_principal 는 Azure Active Directory 사용자 또는 Azure Active Directory 그룹 수 있습니다. (Azure Active Directory 사용자의 Windows 인증 로그인을 가질 수 없습니다 SQL 데이터베이스; 데이터베이스 사용자만 합니다.) 연결 문자열은 초기 카탈로그로 포함된 된 데이터베이스를 지정 해야 합니다. Azure Active Directory에서 사용자를 주 만들 때 다음 형식 중 하나를 사용 합니다.

  • CREATE USER [bob@contoso.com] FROM EXTERNAL PROVIDER;

  • CREATE USER [alice@fabrikam.onmicrosoft.com] FROM EXTERNAL PROVIDER;

  • CREATE USER [Nurses] FROM EXTERNAL PROVIDER;

자세한 내용은 Azure Active Directory 인증을 사용하여 SQL 데이터베이스에 연결을 참조하세요.

암호와 함께 = '암호'

적용 대상: SQL Server 2012 부터 SQL Server 2016, SQL 데이터베이스까지

포함된 데이터베이스에서만 사용할 수 있습니다. 만들 사용자의 암호를 지정합니다. 부터는 SQL Server 2012, 저장 된 암호 정보는 s h A-512의 솔트된 암호를 사용 하 여 계산 됩니다.

WITHOUT LOGIN
사용자가 기존 로그인에 매핑되지 않도록 지정합니다.

인증서 cert_name

적용 대상: SQL Server 2008 통해 SQL Server 2016, SQL 데이터베이스합니다.

데이터베이스 사용자를 만들 인증서를 지정합니다.

비대칭 키 asym_key_name

적용 대상: SQL Server 2008 통해 SQL Server 2016, SQL 데이터베이스합니다.

데이터베이스 사용자를 만들 비대칭 키를 지정합니다.

DEFAULT_LANGUAGE = {NONE | < lcid> | < 언어 이름> | < 언어 별칭> }

적용 대상: SQL Server 2012 통해 SQL Server 2016, SQL 데이터베이스합니다.

새 사용자의 기본 언어를 지정합니다. 사용자의 기본 언어가 지정된 경우 데이터베이스의 기본 언어가 나중에 변경되더라도 사용자의 기본 언어는 지정된 대로 유지됩니다. 기본 언어를 지정하지 않으면 사용자의 기본 언어는 데이터베이스의 기본 언어가 됩니다. 사용자의 기본 언어가 지정되지 않은 경우 데이터베이스의 기본 언어가 나중에 변경되면 사용자의 기본 언어는 데이터베이스의 새 기본 언어로 변경됩니다.

System_CAPS_ICON_important.jpg 중요


DEFAULT_LANGUAGE 포함된 된 데이터베이스 사용자에만 사용 됩니다.

SID = sid

적용 대상: SQL Server 2012 부터 SQL Server 2016까지

포함된 데이터베이스의 암호가 있는 사용자(SQL Server 인증)에만 적용됩니다. 새 데이터베이스 사용자의 SID를 지정합니다. 이 옵션을 선택하지 않으면 SQL Server에서 자동으로 SID를 할당합니다. SID 매개 변수를 사용하여 여러 데이터베이스에 ID(SID)가 동일한 사용자를 만듭니다. Always On 장애 조치를 위해 준비 하는 여러 데이터베이스에 사용자를 만들 때 유용 합니다. 사용자의 SID를 확인 하려면 sys.database_principals를 쿼리 합니다.

ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = [ON | OFF ]]

적용 대상: SQL Server 2016 통해 SQL Server 2016, SQL 데이터베이스합니다.

대량 복사 작업에 서버에서 암호화 메타 데이터 검사를 하지 않습니다. 이렇게 하면 테이블 또는 데이터베이스 간의 암호화 된 복사 데이터를 대량에서 데이터를 해독 하지 않고 있습니다. 기본값은 OFF입니다.

System_CAPS_ICON_warning.jpg 경고


이 옵션을 부적절하게 사용할 경우 데이터가 손상될 수 있습니다. 자세한 내용은 참조 항상 암호화 하 여 중요 한 데이터 보호 마이그레이션할합니다.

FOR LOGIN을 생략하면 새 데이터베이스 사용자는 같은 이름의 SQL Server 로그인에 매핑됩니다.

기본 스키마는 서버에서 이 데이터베이스 사용자에 대한 개체 이름을 확인할 때 첫 번째로 검색하는 스키마가 됩니다. 달리 지정하지 않는 한 기본 스키마는 이 데이터베이스 사용자가 만든 개체의 소유자가 됩니다.

사용자에게 기본 스키마가 있는 경우에는 해당 기본 스키마가 사용됩니다. 사용자에게 기본 스키마가 없지만 사용자가 기본 스키마가 있는 그룹의 멤버인 경우에는 그룹의 기본 스키마가 사용됩니다. 사용자에게 기본 스키마가 없고 사용자가 두 개 이상 그룹의 멤버인 경우 principle_id가 가장 낮고 명시적으로 설정된 기본 스키마가 있는 Windows 그룹의 기본 스키마가 사용자의 기본 스키마가 됩니다. 사용할 수 있는 기본 스키마 중 하나를 기본 설정 스키마로 명시적으로 선택할 수는 없습니다. 사용자에 대 한 기본 스키마를 확인할 수 없으면는 dbo 스키마가 사용 됩니다.

DEFAULT_SCHEMA는 가리키는 스키마가 만들어지기 전에 설정될 수 있습니다.

인증서 또는 비대칭 키에 매핑된 사용자를 생성할 때는 DEFAULT_SCHEMA를 지정할 수 없습니다.

사용자가 sysadmin 고정 서버 역할의 멤버이면 DEFAULT_SCHEMA 값은 무시됩니다. sysadmin 고정 서버 역할의 모든 멤버는 기본 스키마가 dbo입니다.

WITHOUT LOGIN 절은 SQL Server 로그인에 매핑되지 않는 사용자를 만듭니다. guest와 같은 다른 데이터베이스에 연결할 수 있습니다. 로그인이 없는 사용자에게 사용 권한을 할당할 수 있으며 보안 컨텍스트가 로그인이 없는 사용자로 변경되면 원래 사용자가 로그인이 없는 사용자의 사용 권한을 받습니다. 예 1을 참조 만들기 및 로그인이 없는 사용자를 사용 하 여합니다.

Windows 보안 주체에 매핑되는 사용자는 백슬래시 문자를 포함할 수만 (\).

게스트 사용자가 이미 모든 데이터베이스 내에 있기 때문에 CREATE USER를 사용하여 게스트 사용자를 만들 수 없습니다. 다음과 같이 CONNECT 권한을 부여하여 게스트 사용자를 사용할 수 있습니다.

GRANT CONNECT TO guest;  
GO  

데이터베이스 사용자에 대 한 정보에 표시 되는 sys.database_principals 카탈로그 뷰를 사용 합니다.

마스터의 로그인 기반 사용자

다음 목록에서는 로그인 기반 사용자에 대해 사용할 수 있는 구문을 보여 줍니다. 기본 스키마 옵션은 나열되지 않습니다.

  • CREATE USER [Domain1\WindowsUserBarry]

  • CREATE USER [Domain1\WindowsUserBarry] FOR LOGIN Domain1\WindowsUserBarry

  • CREATE USER [Domain1\WindowsUserBarry] FROM LOGIN Domain1\WindowsUserBarry

  • CREATE USER [Domain1\WindowsGroupManagers]

  • CREATE USER [Domain1\WindowsGroupManagers] FOR LOGIN [Domain1\WindowsGroupManagers]

  • CREATE USER [Domain1\WindowsGroupManagers] FROM LOGIN [Domain1\WindowsGroupManagers]

  • CREATE USER SQLAUTHLOGIN

  • CREATE USER SQLAUTHLOGIN FOR LOGIN SQLAUTHLOGIN

  • CREATE USER SQLAUTHLOGIN FROM LOGIN SQLAUTHLOGIN

데이터베이스에서 인증 하는 사용자

다음 목록에서는 포함된 데이터베이스에서만 사용할 수 있는 사용자에 대한 구문을 보여 줍니다. 생성 된 사용자의 로그인에 연결 되지 것입니다는 마스터 데이터베이스입니다. 기본 스키마 및 언어 옵션은 나열되지 않습니다.

System_CAPS_ICON_important.jpg 중요


이 구문은 사용자에게 데이터베이스에 대한 액세스 권한을 부여하며 데이터베이스 엔진에 대한 새로운 액세스 권한도 부여합니다.

  • CREATE USER [Domain1\WindowsUserBarry]

  • CREATE USER [Domain1\WindowsGroupManagers]

  • CREATE USER Barry WITH PASSWORD = 'sdjklalie8rew8337!$d'

마스터에 로그인이 없는 Windows 보안 주체 기반 사용자

다음 목록에는 액세스할 수 있는 사용자에 대 한 구문을 보여 줍니다는 데이터베이스 엔진 Windows 그룹을 통해 하지만에 로그인이 없는 마스터합니다. 이 구문은 모든 유형의 데이터베이스에서 사용할 수 있습니다. 기본 스키마 및 언어 옵션은 나열되지 않습니다.

이 구문은 마스터의 로그인을 기반으로 하는 사용자와 유사하지만 이 범주의 사용자는 마스터에 로그인을 가지고 있지 않습니다. 사용자는 Windows 그룹 로그인을 통해 데이터베이스 엔진에 액세스할 수 있어야 합니다.

이 구문은 Windows 보안 주체를 기반으로 하는 포함된 데이터베이스 사용자와 유사하지만 이 범주의 사용자는 데이터베이스 엔진에 대한 새로운 액세스 권한을 부여받지 않습니다.

  • CREATE USER [Domain1\WindowsUserBarry]

  • CREATE USER [Domain1\WindowsUserBarry] FOR LOGIN Domain1\WindowsUserBarry

  • CREATE USER [Domain1\WindowsUserBarry] FROM LOGIN Domain1\WindowsUserBarry

  • CREATE USER [Domain1\WindowsGroupManagers]

  • CREATE USER [Domain1\WindowsGroupManagers] FOR LOGIN [Domain1\WindowsGroupManagers]

  • CREATE USER [Domain1\WindowsGroupManagers] FROM LOGIN [Domain1\WindowsGroupManagers]

인증할 수 없는 사용자

다음 목록에서는 SQL Server에 로그인할 수 없는 사용자에 대한 구문을 보여 줍니다.

  • CREATE USER RIGHTSHOLDER WITHOUT LOGIN

  • CREATE USER CERTUSER FOR CERTIFICATE SpecialCert

  • CREATE USER CERTUSER FROM CERTIFICATE SpecialCert

  • CREATE USER KEYUSER FOR ASYMMETRIC KEY SecureKey

  • CREATE USER KEYUSER FROM ASYMMETRIC KEY SecureKey

사용자를 만들면 데이터베이스에 대한 액세스 권한이 부여되지만 데이터베이스 내부의 개체에 대한 액세스 권한은 자동으로 부여되지 않습니다. 사용자를 만든 후에는 대개 데이터베이스 개체에 액세스할 수 있는 권한이 있는 데이터베이스 역할에 사용자를 추가하거나 사용자에게 개체 사용 권한을 부여합니다. 권한 시스템 디자인에 대한 정보는 Getting Started with Database Engine Permissions을 참조하세요.

포함된 데이터베이스에 대한 특별 고려 사항

사용자 로그인 없는 경우 포함된 된 데이터베이스에 연결할 때의 마스터 데이터베이스 연결 문자열에 포함 된 데이터베이스 이름이 초기 카탈로그로 포함 해야 합니다. 암호가 있는 포함된 데이터베이스 사용자의 경우 언제나 초기 카탈로그 매개 변수를 지정해야 합니다.

포함된 데이터베이스에서 사용자를 만들면 데이터베이스 엔진 인스턴스로부터 데이터베이스를 분리하는 데 도움이 됩니다. 데이터베이스를 분리하면 다른 SQL Server 인스턴스로 데이터베이스를 쉽게 이동할 수 있습니다. 자세한 내용은 참조 포함 된 데이터베이스포함 된 데이터베이스 사용자-하 여 데이터베이스 휴대용합니다. 데이터베이스 사용자를 기반으로 하는 사용자 변경 하는 SQL Server 암호와 함께 포함 된 데이터베이스 사용자를 인증 로그인을 볼 sp_migrate_user_to_contained (& a) #40; TRANSACT-SQL )합니다.

포함된 된 데이터베이스에서 사용자가 없는에 로그인 하는 마스터 데이터베이스입니다. 데이터베이스 엔진 관리자는 데이터베이스 엔진 수준이 아니라 데이터베이스 수준에서 포함된 데이터베이스에 대한 액세스 권한을 부여할 수 있음을 이해해야 합니다. 자세한 내용은 Security Best Practices with Contained Databases를 참조하세요.

Azure SQL 데이터베이스에 포함된 데이터베이스 사용자를 사용하는 경우, 서버 수준 방화벽 규칙 대신 데이터베이스 수준 방화벽 규칙을 사용하여 액세스를 구성합니다. 자세한 내용은 참조 sp_set_database_firewall_rule (& a) #40; Azure SQL 데이터베이스 및 #41;합니다.

에 대 한 SQL 데이터베이스 및 SQL 데이터 웨어하우스 포함 된 데이터베이스 사용자, SSMS는 다단계 인증을 지원할 수 있습니다. 자세한 내용은 SQL Database 및 SQL Data Warehouse를 사용한 Azure AD MFA에 대한 SSMS 지원을 참조하세요.

Permissions

데이터베이스에 대한 ALTER ANY USER 권한이 필요합니다.

1. SQL Server 로그인 기반 데이터베이스 사용자 만들기

다음 예에서는 먼저 AbolrousHazem이라는 SQL Server 로그인을 만든 다음 AbolrousHazem에 이에 해당하는 AdventureWorks2012이라는 데이터베이스 사용자를 만듭니다.

CREATE LOGIN AbolrousHazem   
    WITH PASSWORD = '340$Uuxwp7Mcxo7Khy';  
USE AdventureWorks2012;  
GO  
CREATE USER AbolrousHazem FOR LOGIN AbolrousHazem;  
GO   

2. 기본 스키마로 데이터베이스 사용자 만들기

다음 예에서는 암호를 사용하여 WanidaBenshoof라는 서버 로그인을 만든 다음 기본 스키마인 Wanida을 사용하여 해당 데이터베이스 사용자 Marketing를 만듭니다.

CREATE LOGIN WanidaBenshoof   
    WITH PASSWORD = '8fdKJl3$nlNv3049jsKK';  
USE AdventureWorks2012;  
CREATE USER Wanida FOR LOGIN WanidaBenshoof   
    WITH DEFAULT_SCHEMA = Marketing;  
GO  

3. 인증서에서 데이터베이스 사용자 만들기

다음 예에서는 JinghaoLiu 인증서에서 데이터베이스 사용자 CarnationProduction50를 만듭니다.

적용 대상: SQL Server 2008 부터 SQL Server 2016까지
USE AdventureWorks2012;  
CREATE CERTIFICATE CarnationProduction50  
    WITH SUBJECT = 'Carnation Production Facility Supervisors',  
    EXPIRY_DATE = '11/11/2011';  
GO  
CREATE USER JinghaoLiu FOR CERTIFICATE CarnationProduction50;  
GO   

4. 로그인이 없는 사용자 만들기 및 사용

다음 예에서는 SQL Server 로그인에 매핑되지 않는 데이터베이스 사용자 CustomApp를 만듭니다. 그런 다음 adventure-works\tengiz0 사용자를 가장하도록 사용자에게 CustomApp 권한을 부여합니다.

USE AdventureWorks2012 ;  
CREATE USER CustomApp WITHOUT LOGIN ;  
GRANT IMPERSONATE ON USER::CustomApp TO [adventure-works\tengiz0] ;  
GO   

CustomApp 자격 증명을 사용하기 위해 사용자 adventure-works\tengiz0이 다음 문을 실행합니다.

EXECUTE AS USER = 'CustomApp' ;  
GO  

adventure-works\tengiz0 자격 증명으로 다시 돌아가려면 사용자는 다음 문을 실행합니다.

REVERT ;  
GO  

5. 암호가 있는 포함된 데이터베이스 사용자 만들기

다음 예에서는 암호가 있는 포함된 데이터베이스 사용자를 만듭니다. 이 예는 포함된 데이터베이스에서만 실행할 수 있습니다.

적용 대상: SQL Server 2012 부터 SQL Server 2016까지 DEFAULT_LANGUAGE가 삭제된 경우 이 예제가 SQL 데이터베이스에서 동작합니다.
USE AdventureWorks2012 ;  
GO  
CREATE USER Carlo  
WITH PASSWORD='RN92piTCh%$!~3K9844 Bl*'  
    , DEFAULT_LANGUAGE=[Brazilian]  
    , DEFAULT_SCHEMA=[dbo]  
GO   

6. 도메인 로그인에 대한 포함된 데이터베이스 사용자 만들기

다음 예에서는 Contoso라는 도메인의 Fritz라는 로그인에 대한 포함된 데이터베이스 사용자를 만듭니다. 이 예는 포함된 데이터베이스에서만 실행할 수 있습니다.

적용 대상: SQL Server 2012 부터 SQL Server 2016까지
USE AdventureWorks2012 ;  
GO  
CREATE USER [Contoso\Fritz] ;  
GO   

7. 특정 SID가 있는 포함된 데이터베이스 사용자 만들기

다음 예에서는 CarmenW라는 SQL Server 인증 포함된 데이터베이스 사용자를 만듭니다. 이 예는 포함된 데이터베이스에서만 실행할 수 있습니다.

적용 대상: SQL Server 2012 부터 SQL Server 2016까지
USE AdventureWorks2012 ;  
GO  
CREATE USER CarmenW WITH PASSWORD = 'a8ea v*(Rd##+'  
, SID = 0x01050000000000090300000063FF0451A9E7664BA705B10E37DDC4B7;  
  

8. 암호화 된 데이터를 복사 하는 사용자 만들기

다음 예제에서는 다른 집합 (동일 또는 다른 데이터베이스)에 암호화 된 열이 있는 테이블의 암호화 된 열이 포함 된 하나의 집합 테이블에는 항상 암호화 기능으로 보호 되는 데이터를 복사할 수 있는 사용자를 만듭니다. 자세한 내용은 참조 항상 암호화 하 여 중요 한 데이터 보호 마이그레이션할합니다.

적용 대상: SQL Server 2016 통해 SQL Server 2016, SQL 데이터베이스합니다.
CREATE USER [Chin]   
WITH   
      DEFAULT_SCHEMA = dbo  
    , ALLOW_ENCRYPTED_VALUE_MODIFICATIONS = ON ;  

9. 데이터베이스 사용자 만들기

다음 예에서는 암호를 사용하여 AbolrousHazem이라는 서버 로그인을 만든 다음 AbolrousHazem에 해당 데이터베이스 사용자 AdventureWorks2008R2을 만듭니다.

CREATE LOGIN AbolrousHazem   
    WITH PASSWORD = '340$Uuxwp7Mcxo7Khy';  

에 연결 된 AdventureWorks2008R2 데이터베이스에 있으며 다음 다음 문을 실행 합니다.

CREATE USER AbolrousHazem FOR LOGIN AbolrousHazem;  
GO   

사용자가 만들어지면 고려 사용자를 사용 하 여 데이터베이스 역할에 추가 ALTER ROLE 문입니다.
해야 할 경우가 개체 사용 권한 부여 테이블에 액세스할 수 있도록 역할을 합니다. SQL Server 보안 모델에 대 한 일반 정보를 참조 하십시오. 권한을합니다.

데이터베이스 사용자 만들기
sys.database_principals & #40입니다. TRANSACT-SQL )
ALTER USER & #40입니다. TRANSACT-SQL )
놓기 사용자 & #40입니다. TRANSACT-SQL )
로그인 및 #40; 만들기 TRANSACT-SQL )
EVENTDATA & #40입니다. TRANSACT-SQL )
포함 된 데이터베이스
Azure Active Directory 인증을 사용 하 여 SQL 데이터베이스에 연결
데이터베이스 엔진 권한으로 시작 하기

커뮤니티 추가 항목

추가
표시: