일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- GIT
- Spring
- 리액트
- DATABASE
- 데이터베이스
- 컴포넌트
- jdk
- 스프링부트
- java
- 자바스크립트
- springboot
- mssql
- Intellij
- reactjs
- table
- 개발공부
- React
- javascript
- 자바
- 쿼리
- restapi
- Vue
- component
- EXTJS
- 보안취약점
- 개발
- JS
- sql
- crud
- 스프링
- Today
- Total
준준의 기록일지
[데이터베이스] 뷰테이블 생성 및 특정 사용자 권한 부여 본문
"이 포스팅은 쿠팡 파트너스 활동의 일환으로, 이에 따른 일정액의 수수료를 제공받습니다."
최근 고객사에서 지속적으로 무리한 요청이 들어왔다. 내부 연동에 필요한 테이블 정보를 우리쪽에 요청하는 상황이였는데... 고객사 내부 연동에 필요한 데이터를 우리가 알 수가 없으니, reject 해왔다.
거절같지 않은 거절로 전화 응대를 하니, 다른분보다 나한테 전화가 계속 오는 상황..처리하는 방법에 대한 확신이 없어서 계속 주변 분들에게 도움을 요청하니 다 같이 스트레스 받는 상황으로 번졌다.
고객사를 응대할때 배운 부분
- 불필요한 지원은 하지 않는다. 정확히 계약사항을 알지 못하고 맺고 끊음을 하지 않으면 소위 말하는 "엔지니어 빼먹기"에 당하는 것 같다. 하자 보수 외에 지원해줄 필요가 없었음에도 계속 전화가 오고, 요청이 들어온다.
- 유선상 요청이 들어오면 메일로 다시 요청사항 정리해서 보내달라고 요청하기. 유선상 주고받은 내용은 나중에 말이 바뀌었을때 증거가 없기 때문에, 우리쪽 문제로 번질 가능성이 있다. 고객사도 요청을 계속 바꾸기 때문에 항상 유념하기!
- 계속된 무리한 요청이 들어올 경우 연결된 타 회사 관계자 & 본사 영업을 참조로 넣는다. -> 눈치가 보일 수도 있다고 하지만, 필자는 상급자의 허락을 받고 참조를 걸었다. 개인으로 주고 받을 경우 가볍게 요청하지만, 프로젝트에 관계된 사람들이 참조에 걸리는 순간 불필요한 요청은 줄어든다고 한다.
결국, 이번엔 특정 항목에 대한 view 테이블 명세서를 받아서 view테이블을 제공해주기로 했다.
회사 사람들은 내가 뷰테이블을 만들줄 아는걸로 아는데, 한번도 해본적이 없기 때문에 테스트 내용을 블로그에 작성해보고자 한다.
고려 사항
- 특정 사용자에게만 로그인 및 view테이블 권한을 고객사 관리자가 제공해주는가?
- 그럼 우리 솔루션 데이터베이스(지적재산권)에도 접근이 가능하지 않는가?
- 접근이 가능하지 않다면 어떻게??
View 테이블 생성 문법
CREATE VIEW [뷰명] AS
SELECT [컬럼명] FROM [테이블명] WHERE [조건절]
view테이블 사용자 생성 및 권한 부여
사용자 생성
새 로그인 >
일반 > ID / PW 입력 > "암호 만료 강제 적용" 체크 해제 (선택사항)
서버 역할 > public만 체크
원하는 데이터베이스 매핑
매핑된 데이터베이스는 추후 아래 그림과 같이 사용자 / 기본 스키마에 표시된다.
- 기본 스키마는 별도로 지정하지 않는다. -> 지정하지 않으면 알아서 나중에 dbo라고 저장된다.
view테이블에 특정 사용자 권한 부여
제한된 사용자가 특정 테이블이나 뷰에만 접근할 수 있도록 권한을 부여한다.
아래 그림의 속성을 클릭!
다른 곳은 볼 필요 없이, 사용 권한 탭을 클릭한다.
사용권한 > 검색 > 선택할 개체 이름 입력 -> 생성한 아이디 입력 >
아이디를 입력한 뒤 체크 및 확인 버튼을 누르면 아래와 같이 등록된 것을 확인할 수 있다.
이때 권한은 필요한 권한을 선택하면 되는데, 외부에 제공할 view의 경우 수정 삭제가 있으면 안되기 때문에 참고한 블로그와 동일하게 "선택(select)와 정의보기" 권한 두가지만 부여했다.
마지막으로 해당 계정으로 로그인한 뒤 권한이 부여된 view테이블 경로로 접근하면 해당 view테이블에 한해서만 열람이 가능하다.
곧 실제 고객사에 뷰테이블을 제공할 예정인데, 제공한 뒤에 추가로 작성을 이어가겠다.
출처
'Database' 카테고리의 다른 글
[MsSql] DBCP validationQuery 설정 (0) | 2021.07.26 |
---|---|
[Hibernate] Criteria (0) | 2021.02.15 |
[sql] 복합키 (0) | 2021.01.25 |
[sql] 복합키 (0) | 2021.01.18 |
[sql] sql 쿼리를 활용한 ip주소 찾기. (0) | 2021.01.06 |