

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 创建视图的先决条件
先决条件
+ 要在数据目录中创建视图，您必须向 Lake Formation 注册引用表的基础 Amazon S3 数据位置。有关向 Lake Formation 注册数据的详细信息，请参阅[向数据湖添加 Amazon S3 位置](register-data-lake.md)。
+ 只有 IAM 角色可以创建数据目录视图。其他 IAM 身份无法创建数据目录视图。
+ 定义视图的 IAM 角色必须具有以下权限：
  + 对所有引用表（包括所有列）使用 `Grantable` 选项的 Lake Formation `SELECT` 权限。
  + 在要创建视图的目标数据库上，需要具备 Lake Formation `CREATE_TABLE` 权限。
  + Lake Formation 和 Amazon Glue 服务机构承担该角色的信任政策。

------
#### [ JSON ]

****  

    ```
    {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
                "Sid": "DataCatalogViewDefinerAssumeRole1",
                "Effect": "Allow",
                "Principal": {
                   "Service": [
                        "glue.amazonaws.com",
                        "lakeformation.amazonaws.com"
                     ]
                },
                "Action": "sts:AssumeRole"
            }
        ]
    }
    ```

------
  + 目标： Amazon Glue 和 Lake Formation 的PassRole 许可。

------
#### [ JSON ]

****  

    ```
    {
        "Version":"2012-10-17",		 	 	 
        "Statement": [
            {
                "Sid": "DataCatalogViewDefinerPassRole1",
                "Action": [
                    "iam:PassRole"
                ],
                "Effect": "Allow",
                "Resource": "*",
                "Condition": {
                    "StringEquals": {
                        "iam:PassedToService": [ 
                            "glue.amazonaws.com",
                            "lakeformation.amazonaws.com"
                          ]
                    }
                }
            }
        ]
    }
    ```

------
  + Amazon Glue 以及 Lake Formation 权限。

------
#### [ JSON ]

****  

    ```
    {
        "Version":"2012-10-17",		 	 	 
                     "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "Glue:GetDatabase",
                    "Glue:GetDatabases",
                    "Glue:CreateTable",
                    "Glue:GetTable",
                    "Glue:GetTables",
                    "Glue:BatchGetPartition",
                    "Glue:GetPartitions",
                    "Glue:GetPartition",
                    "Glue:GetTableVersion",
                    "Glue:GetTableVersions",
    				"Glue:PassConnection",
                    "lakeFormation:GetDataAccess"
                ],
                "Resource": "*"
            }
        ]   
    }
    ```

------
+ 不能在向 `IAMAllowedPrincipals` 组授予 `Super` 或 `ALL` 权限的数据库中创建视图。您可以撤销 `IAMAllowedPrincipals` 组对数据库的 `Super` 权限，请参阅[步骤 4：将数据存储切换到 Lake Formation 权限模型](upgrade-glue-lake-formation.md#upgrade-glue-lake-formation-step4)；也可以创建一个新数据库，在**新创建表的默认权限**下取消选中**仅对此数据库中的新表使用 IAM 访问控制**复选框。