다음을 통해 공유


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

적용 대상: SQL Server Azure SQL 데이터베이스 Azure SQL Managed Instance Azure Synapse Analytics Analytics Platform System(PDW)

이 문서에서는 가장 일반적인 유형의 데이터베이스 사용자를 만드는 방법을 설명합니다. 13가지 유형의 사용자가 있습니다. 전체 목록은 CREATE USER 문서에 제공됩니다. 모든 종류의 SQL Server는 데이터베이스 사용자를 지원하지만 모든 유형의 사용자가 반드시 지원되는 것은 아닙니다.

SQL Server Management Studio를 사용하거나 Transact-SQL을 사용하여 데이터베이스 사용자를 만들 수 있습니다.

사용자 유형 이해

Management Studio에서는 데이터베이스 사용자를 만들 때 여섯 가지 옵션을 표시합니다. 다음 다이어그램운 녹색 상자의 6가지 옵션을 보여주며 해당 옵션이 나타내는 것을 나타냅니다.

다양한 유형의 사용자를 설명하는 다이어그램

사용자 유형 선택

SQL Server를 새로 사용하는 경우 만들려는 사용자 유형을 결정하기 어려울 수 있습니다. 먼저 데이터베이스에 액세스해야 하는 사용자 또는 그룹에 로그인이 있는지 자문해 보세요.

로그인을 사용하여 사용자 만들기

master 데이터베이스의 로그인은 SQL Server를 관리하는 사용자와 SQL Server 인스턴스의 많은 데이터베이스 또는 전부에 액세스해야 하는 사용자에게 일반적입니다. 이 경우 로그인을 사용하여 SQL 사용자를 만듭니다. 데이터베이스 사용자는 데이터베이스에 연결된 경우 로그인의 ID입니다. 데이터베이스 사용자는 로그인과 동일한 이름을 사용할 수 있지만 필수는 아닙니다. 이 문서에서는 로그인이 SQL Server에 이미 있다고 가정합니다. 로그인을 만드는 방법은 로그인 만들기를 참조하세요.

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

데이터베이스에 액세스해야 하는 개인 또는 그룹에 로그인이 없고 하나 또는 일부 데이터베이스에만 액세스해야 하는 경우 Windows 사용자 또는 비밀번호를 사용하는 SQL 사용자를 만듭니다. 포함된 데이터베이스 사용자라고도 합니다. 포함된 데이터베이스 사용자는 master 데이터베이스의 로그인과 연결되지 않습니다. SQL Server의 인스턴스 간에 데이터베이스를 쉽게 이동할 수 있기를 원하는 경우 매우 적합합니다. SQL Server에서 이 옵션을 사용하려면 먼저 관리자가 SQL Server에 대해 포함된 데이터베이스를 사용하도록 설정하고 포함할 데이터베이스가 설정되어야 합니다. 자세한 내용은 포함된 데이터베이스를 사용하여 데이터베이스를 이식 가능하게 만들기를 참조하세요.

Important

포함된 데이터베이스 사용자로 연결할 때는 연결 문자열의 일부로 데이터베이스 이름을 제공해야 합니다. SSMS(SQL Server Management Studio)에서 데이터베이스를 지정하려면 연결 대화 상자에서 옵션을 선택한 다음 연결 속성 탭을 선택합니다.

연결하는 사용자가 Windows 인증으로 인증할 수 없는 경우 비밀번호가 있는 SQL 사용자 또는 SQL Server 인증 로그인을 기반으로 로그인한 SQL 사용자를 선택합니다. 이는 조직 외부의 사용자(예: 고객)가 SQL Server에 연결하는 경우에 일반적입니다.

조직 내의 사용자에게는 추가 비밀번호를 기억할 필요가 없고 Windows 인증 Kerberos와 같은 추가 보안 기능을 제공하므로 Windows 인증 더 나은 선택입니다.

배경

사용자는 데이터베이스 수준의 보안 주체입니다. 데이터베이스에 연결하려면 로그인을 데이터베이스 사용자에게 매핑해야 합니다. 로그인은 서로 다른 데이터베이스에 서로 다른 사용자로 매핑할 수 있지만 각 데이터베이스에서 하나의 사용자로만 매핑할 수 있습니다. 부분적으로 포함된 데이터베이스에서 로그인이 없는 사용자를 만들 수 있습니다. 포함된 데이터베이스 사용자에 대한 자세한 내용은 CREATE USER를 참조하세요. 데이터베이스에서 게스트 사용자가 설정된 경우 데이터베이스 사용자에 매핑되지 않은 로그인이 게스트 사용자로 데이터베이스에 진입할 수 있습니다.

Important

게스트 사용자는 일반적으로 사용하지 않도록 설정됩니다. 반드시 필요한 경우가 아니면 게스트 사용자를 사용하도록 설정하지 마세요.

보안 주체는 사용 권한을 사용자에게 부여할 수 있습니다. 사용자의 범위는 데이터베이스입니다. SQL Server 인스턴스의 특정 데이터베이스에 연결하려면 로그인을 데이터베이스 사용자에 매핑해야 합니다. 데이터베이스 내의 권한은 로그인이 아니라 데이터베이스 사용자에게 부여되고 거부됩니다.

사용 권한

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

SSMS를 사용하여 사용자 만들기

  1. 개체 탐색기에서 데이터베이스 폴더를 확장합니다.

  2. 새 데이터베이스 사용자를 만들 데이터베이스를 확장합니다.

  3. 보안 폴더를 마우스 오른쪽 단추로 클릭하고 새로 만들기를 가리킨 후 사용자...를 선택합니다.

  4. 데이터베이스 사용자 – 신규 대화 상자의 일반 페이지에 있는 사용자 유형 목록에서

    • 로그인이 있는 SQL 사용자
    • 비밀번호 가 있는 SQL 사용자(포함된 데이터베이스를 사용하는 경우)
    • 로그인하지 않은 SQL 사용자
    • 인증서에 매핑된 사용자
    • 비대칭 키로 매핑된 사용자
    • Windows 사용자
  5. 옵션을 선택하면 대화 상자의 나머지 옵션이 변경될 수 있습니다. 일부 옵션은 특정 유형의 데이터베이스 사용자에게만 적용됩니다. 일부 옵션은 비워 둘 수 있으며 기본값을 사용합니다.

    • 사용자 이름

      새 사용자의 이름을 입력합니다. 사용자 유형 목록에서 Windows 사용자를 선택한 경우 줄임표(…)를 선택하여 사용자 또는 그룹 선택 대화 상자를 열 수도 있습니다.

    • 로그인 이름

      사용자 로그인을 입력합니다. 또는 줄임표(…) 를 클릭하여 로그인 선택 대화 상자를 엽니다. 로그인 이름사용자 유형 목록에서 로그인 기능이 있는 SQL 사용자 또는 Windows 사용자를 선택하면 사용할 수 있습니다.

    • 비밀번호비밀번호 확인

      데이터베이스에서 인증하는 사용자의 비밀번호를 입력합니다.

    • 기본 언어

      사용자의 기본 언어를 입력합니다.

    • 기본 스키마

      이 사용자가 만든 개체를 소유할 스키마를 입력합니다. 또는 줄임표(…)를 클릭하여 스키마 선택 대화 상자를 엽니다. 기본 스키마사용자 유형목록에서 로그인을 사용하는 SQL 사용자, 로그인을 사용하지 않는 SQL 사용자 또는 Windows 사용자 를 선택한 경우 사용할 수 있습니다.

    • 인증서 이름

      데이터베이스 사용자에 대해 사용할 인증서를 입력합니다. 또는 줄임표 (…)를 클릭하여 로그인 선택 대화 상자를 엽니다. 사용자 유형 목록에서 인증서에 매핑된 사용자를 선택하는 경우 인증서 이름을 사용할 수 있습니다.

    • 비대칭 키 이름

      데이터베이스 사용자에 사용할 키를 입력합니다. 또는 줄임표(...)를 선택하여 비대칭 키 선택 대화 상자를 엽니다. 사용자 유형 목록에서 비대칭 키에 매핑된 사용자를 선택하는 경우 비대칭 키 이름을 사용할 수 있습니다.

  6. 확인을 선택합니다.

추가 옵션

데이터베이스 사용자 - 새 대화 상자는 소유 스키마, 멤버십, 보안 개체확장 속성의 네 가지 다른 페이지에 대한 옵션도 제공합니다.

  • 소유된 스키마 페이지에는 새 데이터베이스 사용자가 소유할 수 있는 모든 가능한 스키마가 나열됩니다. 데이터베이스 사용자로부터 스키마를 추가하거나 제거하려면 이 사용자가 소유한 스키마아래에서 스키마 옆에 있는 확인란을 선택하거나 선택을 취소합니다.

  • 멤버 자격 페이지에는 새 데이터베이스 사용자가 소유할 수 있는 모든 가능한 데이터베이스 멤버 자격 역할이 나열됩니다. 데이터베이스 사용자로부터 역할을 추가하거나 제거하려면 데이터베이스 역할 멤버 자격아래에서 역할 옆에 있는 확인란을 선택하거나 선택을 취소합니다.

  • 보안 개체 페이지에는 가능한 모든 보안 개체와 로그인에 부여할 수 있는 해당 보안 개체에 대한 권한이 나열됩니다.

  • 확장 속성 페이지에서 데이터베이스 사용자에게 사용자 지정 속성을 추가할 수 있습니다. 이 페이지에서는 다음과 같은 옵션을 선택할 수 있습니다.

    • Database

      선택한 데이터베이스의 이름을 표시합니다. 이 필드는 읽기 전용입니다.

    • 데이터 정렬

      선택한 데이터베이스에 사용되는 데이터 정렬을 표시합니다. 이 필드는 읽기 전용입니다.

    • 속성

      개체의 확장 속성을 보거나 지정합니다. 각 확장 속성은 개체에 연결된 메타데이터의 이름/값 쌍으로 이루어져 있습니다.

    • 줄임표(...)

      확장 속성 값 대화 상자를 열려면 뒤에 있는 줄임표(…)를 선택합니다. 이 더 큰 위치에서 확장 속성의 값을 입력하거나 봅니다. 자세한 정보는 확장 속성에 대한 값 대화 상자를 참조 하세요.

    • Delete

      선택한 확장 속성을 제거합니다.

T-SQL을 사용하여 테이블 만들기

  1. 개체 탐색기에서 데이터베이스 엔진인스턴스에 연결합니다.

  2. 표준 도구 모음에서 새 쿼리를 선택합니다.

  3. 다음 예시를 복사하여 쿼리 창에 붙여넣고 실행을 선택합니다.

    -- Creates the login AbolrousHazem with password '340$Uuxwp7Mcxo7Khy'.
    CREATE LOGIN AbolrousHazem
    WITH PASSWORD = '340$Uuxwp7Mcxo7Khy';
    GO
    
    -- Creates a database user for the login created previously.
    CREATE USER AbolrousHazem
    FOR LOGIN AbolrousHazem;
    GO
    

자세한 정보는 더 많은 Transact-SQL 예제가 포함된 CREATE USER를 참조하세요.