Azure SQL Database에서 DB 전용 사용자 계정 만들기

  • 3 minutes to read

Azure SQL Database에서는 하나의 SQL Server 인스턴스 아래에 여러 개의 데이터베이스를 만들고, 각 데이터베이스마다 독립적인 사용자 계정을 설정할 수 있습니다. 본 문서에서는 Hawaso라는 Azure SQL ServerVisualAcademy, DotNetKorea, MemoEngine이라는 세 개의 데이터베이스를 생성하고, 각 DB 전용 사용자 계정을 생성 및 구성하는 전체 절차를 소개합니다.


🔧 사전 준비

  • Azure SQL Server 인스턴스: hawaso.database.windows.net
  • 서버 관리자 계정: sqladmin (예시)
  • SSMS (SQL Server Management Studio) 또는 Azure Data Studio

1. 데이터베이스 생성

Azure Portal 또는 SSMS에서 아래 3개의 데이터베이스를 생성합니다.

-- master DB에 연결된 상태에서 실행
CREATE DATABASE VisualAcademy;
CREATE DATABASE DotNetKorea;
CREATE DATABASE MemoEngine;

2. 각 DB에 전용 사용자 계정 생성

Azure SQL Database에서는 서버 수준 로그인 없이도 데이터베이스 자체에 직접 사용자 계정을 만들 수 있습니다. 이를 Contained Database User라고 합니다.

🔹 VisualAcademy DB에 user_visualacademy 생성

-- VisualAcademy DB에 연결
USE VisualAcademy;
GO

-- 사용자 생성
CREATE USER [user_visualacademy] WITH PASSWORD = 'P@ssword123!';
GO

-- 권한 부여
ALTER ROLE db_datareader ADD MEMBER [user_visualacademy];
ALTER ROLE db_datawriter ADD MEMBER [user_visualacademy];

🔹 DotNetKorea DB에 user_dotnetkorea 생성

USE DotNetKorea;
GO

CREATE USER [user_dotnetkorea] WITH PASSWORD = 'P@ssword123!';
GO

ALTER ROLE db_datareader ADD MEMBER [user_dotnetkorea];
ALTER ROLE db_datawriter ADD MEMBER [user_dotnetkorea];

🔹 MemoEngine DB에 user_memoengine 생성

USE MemoEngine;
GO

CREATE USER [user_memoengine] WITH PASSWORD = 'P@ssword123!';
GO

ALTER ROLE db_datareader ADD MEMBER [user_memoengine];
ALTER ROLE db_datawriter ADD MEMBER [user_memoengine];

🔐 비밀번호는 반드시 보안 규칙을 따르며, 실제 운영 환경에서는 더 강력한 암호를 설정해야 합니다.


3. 접속 방법 안내

사용자가 SSMS 또는 애플리케이션에서 각 DB에 연결할 때는 다음과 같이 설정합니다:

데이터베이스 사용자 ID 서버 이름 암호 연결할 DB
VisualAcademy user_visualacademy hawaso.database.windows.net P@ssword123! VisualAcademy
DotNetKorea user_dotnetkorea hawaso.database.windows.net P@ssword123! DotNetKorea
MemoEngine user_memoengine hawaso.database.windows.net P@ssword123! MemoEngine
  • 서버 관리자 계정(sqladmin) 은 모든 DB에 접근할 수 있음
  • 전용 사용자 계정(user_) 은 오직 해당 DB에만 접근 가능

4. 추가 권한 부여 (선택 사항)

예: 데이터베이스 소유자 권한 부여

ALTER ROLE db_owner ADD MEMBER [user_visualacademy];

운영 환경에서는 최소 권한 원칙을 지키는 것이 보안상 바람직합니다.


✅ 정리

  • hawaso.database.windows.net 아래에 VisualAcademy, DotNetKorea, MemoEngine 3개 DB 생성
  • 각 DB에 user_ 접두어를 가진 전용 사용자 생성
  • 사용자별로 db_datareader, db_datawriter 권한 부여
  • 전용 계정은 오직 해당 DB에만 접근 가능

이 방식은 하나의 Azure SQL Server를 공유하면서도 각 애플리케이션이나 서비스가 자신만의 DB를 갖고 독립적으로 접근하도록 설정할 수 있어, 보안성과 구조적 분리 모두를 만족시킬 수 있습니다.


📁 전체 SQL 스크립트 (요약본)

-- [master DB 접속 후 실행]
CREATE DATABASE VisualAcademy;
CREATE DATABASE DotNetKorea;
CREATE DATABASE MemoEngine;

-- [각 DB 접속 후 실행 예시: VisualAcademy]
USE VisualAcademy;
CREATE USER [user_visualacademy] WITH PASSWORD = 'P@ssword123!';
ALTER ROLE db_datareader ADD MEMBER [user_visualacademy];
ALTER ROLE db_datawriter ADD MEMBER [user_visualacademy];
VisualAcademy Docs의 모든 콘텐츠, 이미지, 동영상의 저작권은 박용준에게 있습니다. 저작권법에 의해 보호를 받는 저작물이므로 무단 전재와 복제를 금합니다. 사이트의 콘텐츠를 복제하여 블로그, 웹사이트 등에 게시할 수 없습니다. 단, 링크와 SNS 공유, Youtube 동영상 공유는 허용합니다. www.VisualAcademy.com
박용준 강사의 모든 동영상 강의는 데브렉에서 독점으로 제공됩니다. www.devlec.com