728x90
반응형
1. 로그인 계정이란?
SQL Server에 로그온할 때 사용하는 계정을 말합니다.
서버에 로그온할 자격만을 제시할 뿐, 데이터베이스에 접근할 수 있는것은 아닙니다.
Type_Desc 열을 보시면 SQL_LOGIN 으로 되있는 Member 는 SQL Server에 로그인이 될 뿐이지, 데이터베이스에 접근할 권한은 가지고있지 않습니다.
master 시스템 데이터베이스에 저장됩니다.
SELECT Roles.Name, Roles.Type_Desc, Members.Name MemberName, Members.Type_Desc FROM sys.server_role_members RoleMembers INNER JOIN sys.server_principals Roles ON Roles.Principal_Id = RoleMembers.Role_Principal_Id INNER JOIN sys.server_principals Members ON Members.Principal_Id = RoleMembers.Member_Principal_Id where Members.name not like '%system%' and Members.name not like '%SQLServer%' |
2. 데이터베이스 사용자 계정이란?
특정 데이터베이스에 접근할 때 로그인 계정과 매핑되는 계정입니다.
MDesc 열을 보시면 SQL_USER 으로 되있는 Member 는 권한을 준 해당 데이터베이스에 접근할 수 있을 뿐이지, 데이터베이스에 로그온할 권한을 가지고있지는 않습니다.
접근 권한을 준 해당 데이터베이스에 저장됩니다.
SELECT @@Servername as ServerName, db_name() as DBName,Roles.Name, Roles.Type_Desc as RDesc, Members.Name MemberName, Members.Type_Desc as MDesc FROM sys.database_role_members RoleMembers INNER JOIN sys.database_principals Roles ON Roles.Principal_Id = RoleMembers.Role_Principal_Id INNER JOIN sys.database_principals Members ON Members.Principal_Id =RoleMembers.Member_Principal_Id |
MemberName 이 [raondataAdmin] 이라는 사용자는 SQL_USER 입니다.
즉 권한을 준 해당 데이터베이스에 접근할 권함을 가지고 있습니다.
권한을 준 해당 데이터베이스[pubs] 의 사용자들을 보겠습니다.
데이터베이스[pubs] 에서 보안 -> 사용자를 보시면 MemberName 이 [raondataAdmin] 사용자가 있는것을 확인하실 수 있습니다.
728x90
반응형
'IT > SQLD' 카테고리의 다른 글
SQL 서버 접속 시 "Cannot open user default database. Login failed." (0) | 2023.04.18 |
---|---|
MSSQL DB 정보 (용량) 및 TABLE 용량, 건수 확인 Query (0) | 2023.04.07 |
MySQL 에서 JSON Data사용하기 (0) | 2023.04.04 |
SQL SERVER 2016 Full-Text Search 세팅하기 (+ 한국어 설정까지) (0) | 2023.02.02 |
SQL Server 2019 - ISO 파일 다운(평가판) 및 설치 (0) | 2023.01.02 |