数据隔离 - 研究与工程工作室

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

数据隔离

将 S3 存储桶添加到 RES 时,您可以选择将存储桶内的数据隔离给特定的项目和用户。在添加存储桶页面上,您可以选择只读 (R) 或读写 (R/W) 模式。

只读

如果选中,Read Only (R)则根据存储桶 ARN 的前缀(Amazon 资源名称)强制执行数据隔离。例如,如果管理员使用 ARN 向 RES 添加存储分区,arn:aws:s3:::bucket-name/example-data/并将此存储分区与项目 A 和项目 B 关联起来,则 VDIs 从项目 A 和项目 B 中启动的用户只能读取位于路径bucket-name下的数据。/example-data他们将无法访问该路径之外的数据。如果存储桶 ARN 中没有附加前缀,则整个存储桶将可供与其关联的任何项目使用。

读和写

如果Read and Write (R/W)选中,则仍会根据存储桶 ARN 的前缀强制执行数据隔离,如上所述。此模式还有其他选项,允许管理员为 S3 存储桶提供基于变量的前缀。选中后Read and Write (R/W),“自定义前缀” 部分将变为可用,该部分提供包含以下选项的下拉菜单:

  • 没有自定义前缀

  • /%p

  • /%p/%u

添加带有自定义前缀下拉列表的存储桶页面
没有自定义数据隔离

如果No custom prefix选择 “自定义前缀”,则在不进行任何自定义数据隔离的情况下添加存储桶。这允许与存储桶关联的任何项目具有读取和写入权限。例如,如果管理员使用No custom prefix选定的 ARN arn:aws:s3:::bucket-name 将存储分区添加到 RES,并将此存储分区与项目 A 和项目 B 相关联,则 VDIs 从项目 A 和项目 B 中启动的用户将拥有对该存储分区的无限制读写权限。

在每个项目层面上进行数据隔离

如果/%p选择 “自定义前缀”,则存储桶中的数据将与其关联的每个特定项目隔离。该%p变量表示项目代码。例如,如果管理员使用/%p选定的 ARN arn:aws:s3:::bucket-name挂载点为的存储桶添加存储桶/bucket,并将该存储桶与项目 A 和项目 B 关联起来,则项目 A 中的用户 A 可以向写入文件。/bucket项目 A 中的用户 B 也可以看到用户 A 写入的文件/bucket。但是,如果用户 B 在项目 B 中启动 VDI 并进行查看/bucket,他们将看不到用户 A 写入的文件,因为数据是按项目隔离的。用户 A 写入的文件位于前缀下的 S3 存储桶中,/ProjectA而用户 B 只能在使用项目 B VDIs 中的文件/ProjectB时才能访问

在每个项目、每个用户级别上进行数据隔离

如果/%p/%u选择 “自定义前缀”,则存储桶中的数据将与该项目关联的每个特定项目和用户隔离。%p变量代表项目代码,%u代表用户名。例如,管理员使用 ARN arn:aws:s3:::bucket-name 将存储桶添加到 RES 中,/%p/%u选中且挂载点为。/bucket此存储桶与项目 A 和项目 B 相关联。项目 A 中的用户 A 可以向其写入文件/bucket。与之前只有%p隔离的场景不同,在这种情况下,用户 B 将看不到用户 A 在项目 A 中写入的文件/bucket,因为项目和用户都隔离了数据。用户 A 写入的文件位于前缀下的 S3 存储桶中,/ProjectA/UserA而用户 B 只能 VDIs 在项目 A 中使用他们的文件/ProjectA/UserB时才能访问。