시작하기무료로 시작하기

팀을 위한 액세스 제어 구현

이 장에서는 데이터베이스에 대한 액세스를 제어하는 방법을 배웠어요. 이제 강의의 마지막 연습 문제로 넘어갑니다. 팀의 데이터 과학자들에게 제공할 데이터를 보관할 새 스키마와 테이블을 만들게 돼요. 팀원들이 신중하더라도 실수는 일어날 수 있어요. 팀원들에게는 업무에 필요한 최소한의 데이터베이스 권한만 부여해야 합니다. 이 팀원들은 승인되지 않은 대출 데이터에 접근할 수 있어요.

  • 스키마 analysis를 생성합니다.
  • 새 스키마에 테이블 unapproved_loan을 정의합니다.
  • 사용자 data_scientist를 생성합니다.
  • 해당 사용자는 새 테이블에 대해 읽기 권한만 갖도록 제한합니다.

이 연습 문제는 데이터베이스 액세스 제어의 기본을 다시 한번 다지도록 도와줄 거예요.

이 연습은 강의의 일부입니다

PostgreSQL 데이터베이스 만들기

강의 보기

연습 안내

  • 새 테이블을 보관할 analysis라는 이름의 새 스키마를 만드세요.
  • analysis 스키마 내부에 unapproved_loan 테이블을 만들고, PRIMARY KEY는 (id), FOREIGN KEY는 (loan_id)로서 loan 테이블의 id 키를 참조하도록 하며, 대출이 거절된 사유를 나타내는 description TEXT 필드를 추가하세요.
  • 비밀번호가 changemedata_scientist 사용자를 추가하세요.
  • analysis.unapproved_loan 테이블에 대해 해당 사용자가 읽기 전용으로만 접근하도록 제한하세요.

실습형 인터랙티브 연습

이 예제를 이 샘플 코드를 완성하여 풀어보세요.

-- Create the new analysis schema
CREATE SCHEMA ___;

-- Create a table unapproved loan under the analysis schema
CREATE TABLE ___ (
    id serial PRIMARY KEY,
    loan_id INTEGER REFERENCES loan(id),
    description ___ NOT NULL
);

-- Create 'data_scientist' user with password 'changeme'
___ USER ___ WITH ___ '___';

-- Give 'data_scientist' ability to use 'analysis' schema
GRANT ___ ON ___ ___ TO ___;

-- Grant read-only access to table for 'data_scientist' user
___ SELECT ON ___ TO ___;
코드 편집 및 실행