- 亚马逊 RDS - 主页
- Amazon RDS - 概述
- Amazon RDS - 环境
- Amazon RDS - 接口
- Amazon RDS - 数据库实例
- Amazon RDS - 数据库存储
- Amazon RDS - MS SQL 功能
- Amazon RDS - MS SQL 创建数据库
- Amazon RDS - MS SQL 连接到数据库
- Amazon RDS - MS SQL 数据库导出导入
- Amazon RDS - 使用 SSL 的 MS SQL 数据库
- Amazon RDS - MS SQL DBA 任务
- Amazon RDS - Oracle 功能
- Amazon RDS - Oracle 创建数据库
- Amazon RDS - Oracle 连接到数据库
- Amazon RDS - Oracle 数据库数据导入
- Amazon RDS - Oracle DBA 任务
- Amazon RDS - MariaDB 功能
- Amazon RDS - MariaDB 创建数据库
- Amazon RDS - MariaDB 连接到数据库
- Amazon RDS - MariaDB 数据导入
- Amazon RDS - PostgreSQL 功能
- Amazon RDS - PostgreSQL 创建数据库
- Amazon RDS - PostgreSQL 连接到数据库
- Amazon RDS - PostgreSQL 数据导入
- Amazon RDS - MySQL 功能
- Amazon RDS - MySQL 创建数据库
- Amazon RDS - MySQL 连接到数据库
- Amazon RDS - MySQL 数据库导出导入
- Amazon RDS - MySQL DBA 任务
- Amazon RDS - 多可用区部署
- Amazon RDS - 数据库快照
- Amazon RDS - 数据库监控
- Amazon RDS - 事件通知
- Amazon RDS - 数据库访问控制
Amazon RDS - 数据库访问控制
要访问 Amazon RDS 数据库实例,用户需要特定权限。这是使用 AWS IAM(身份和访问管理)进行配置的。在本教程中,我们将了解如何完成此配置。
配置涉及两部分。
验证
访问控制
验证
它涉及创建用户名、密码并为用户生成访问密钥。借助访问密钥,可以以编程方式访问 AWS RDS 服务。SDK 和 CLI 工具使用访问密钥通过请求以加密方式登录。
我们还可以使用 IAM 角色来对用户进行身份验证。但该角色并不附属于任何特定用户,而是任何用户都可以临时承担该角色并完成所需的任务。任务结束后,角色可以被撤销,用户失去认证能力。
访问控制
用户通过身份验证后,附加到该用户的策略将确定该用户可以执行的任务类型。以下是允许在数据库引擎 MySQL 的 t2.micro 实例上创建 RDS 数据库实例的策略示例。
{ "Version": "2018-09-11", "Statement": [ { "Sid": "AllowCreateDBInstanceOnly", "Effect": "Allow", "Action": [ "rds:CreateDBInstance" ], "Resource": [ "arn:aws:rds:*:123456789012:db:test*", "arn:aws:rds:*:123456789012:og:default*", "arn:aws:rds:*:123456789012:pg:default*", "arn:aws:rds:*:123456789012:subgrp:default" ], "Condition": { "StringEquals": { "rds:DatabaseEngine": "mysql", "rds:DatabaseClass": "db.t2.micro" } } } ] }
对任何 RDS 资源执行的操作
在下面的示例中,我们看到一个允许对任何 RDS 资源执行任何描述操作的策略。* 符号用于表示任何资源。
{ "Version":"2012-10-17", "Statement":[ { "Sid":"AllowRDSDescribe", "Effect":"Allow", "Action":"rds:Describe*", "Resource":"*" } ] }
禁止删除数据库实例
以下策略禁止用户删除特定数据库实例。
{ "Version":"2012-10-17", "Statement":[ { "Sid":"DenyDelete1", "Effect":"Deny", "Action":"rds:DeleteDBInstance", "Resource":"arn:aws:rds:us-west-2:123456789012:db:my-mysql-instance" } ] }