为团队实施访问控制
在本章中,您学习了如何控制对数据库的访问。现在来到本课程的最后一个练习。您将创建一个新的模式和表,用于存放将提供给您团队中数据科学家的数据。尽管团队成员通常都很负责,但意外总会发生。您只应授予他们完成工作所必需的最小数据库权限。这些团队成员将访问尚未获批的贷款数据。
- 将创建模式
analysis。 - 在该新模式中定义表
unapproved_loan。 - 将创建用户
data_scientist。 - 该用户将被限制为只能读取新表中的数据。
此练习将巩固数据库访问控制的基础。
本练习是课程的一部分
创建 PostgreSQL 数据库
练习说明
- 创建名为
analysis的新模式,用于保存我们的新表。 - 在
analysis模式中创建新表unapproved_loan,包含PRIMARY KEY(id)、FOREIGN KEY(loan_id)引用 loan 表的id键,以及一个表示拒绝原因的descriptionTEXT字段。 - 添加名为
data_scientist、密码为changeme的用户。 - 将该用户的权限限制为对
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 ___;