最佳实践:OSS AP 和云网络 Gateway Endpoint

本文涉及的产品
对象存储 OSS,OSS 加速器 50 GB 1个月
简介: 本文介绍阿里云 OSS AP 与 VPC 网关终端节点的组合方案,解决企业数据湖中私网访问、多部门权限隔离及 Bucket Policy 维护复杂等难题,实现安全、低成本的多租户架构。

前言:企业数据管理中“成长的烦恼”

在构建中心化数据湖或数据仓库时,很多企业都会选择阿里云对象存储 OSS。但随着业务扩展,管理者往往会面临一个“既要、又要、还要”的难题:

  • 安全性: 数据绝对不能走公网,必须全链路私网访问。
  • 权限隔离: 财务、研发、市场等各部门的数据都在一个 Bucket 里,权限策略(Policy)写了几千行,维护起来非常痛苦,且可能会触碰到 Bucket Policy 大小上限。


如何优雅地解决? 本篇文章给出最佳实践:OSS 接入点 (Access Point,AP)+ VPC 网关终端节点 (Gateway Endpoint)。


为什么是这个组合?传统的方案是所有 VPC 共用一个 Bucket 域名,权限语法策略全堆在一个 Bucket Policy 里。而我们的新方案实现了“权限解耦”,即通过将授权语法分散在不同 AP 的 AP Policy 中,从而为每个部门/业务方开一个“专窗”,财务走财务的窗,研发走研发的窗,各走各路,互不干扰。与此同时,VPC 网关终端节点是在 VPC 内部打通一条专属“绿色通道”,无需公网,直接直连 OSS 骨干网,可以达到私网访问和低成本的目的。

下面,本文手把手教你基于 OSS 接入点和 VPC 网关终端节点来构建安全的多租户私网访问架构。

某企业在阿里云上拥有一个核心 OSS Bucket(如 company-data-lake),存储全公司不同部门(财务、研发、市场)的数据。希望实现企业级中心化数据湖/仓库的细粒度隔离访问,需要满足以下访问控制需求:

  • 私网访问:所有数据访问通过阿里云 VPC 内部网络完成,禁止公网访问,不希望通过 NAT 网关产生公网流量费。
  • 权限隔离:不同部门 VPC 访问同一个 Bucket,但需要实现前缀(Prefix)级别的隔离。例如:财务 VPC 只能访问 finance/ 目录,研发 VPC 只能访问 dev/ 目录。
  • 管理解耦:数百人访问同一 Bucket,通过接入点将权限管理分散到各业务方,避免在单一 Bucket Policy 中维护数千行策略。
  • 访问控制:限制特定 VPC 只能通过特定的接入点访问 Bucket。

方案概览

通过 OSS 接入点(Access Point) 和 VPC 网关终端节点配合实现:

  • OSS 接入点:为每个访问方创建独立的接入点,通过接入点策略(AP Policy)分别管理各自的权限,避免在单一 Bucket Policy 中维护复杂的权限规则。
  • VPC 网关终端节点:在 VPC 中创建指向 OSS 的网关终端节点,将访问 OSS 内网域名的请求通过阿里云内网直达 OSS,无需绕行公网。

访问链路:

ECS 实例 → VPC 路由表 → 网关终端节点 → OSS 内网 → 接入点(AP Policy 鉴权)→ Bucket(Bucket Policy 鉴权)

操作步骤

第一步:创建 VPC 网关终端节点

通过创建网关终端节点,在 VPC 路由表中自动添加指向 OSS 的路由,使 ECS 实例可通过内网访问 OSS。

  1. 登录 专有网络 VPC 控制台
  2. 在左侧导航栏选择 终端节点 > 网关终端节点。
  3. 单击创建终端节点:
  • 服务类型:选择阿里云服务。
  • 服务名称:选择 com.aliyun.<region>.oss(例如 com.aliyun.cn-hangzhou.oss)。
  • 专有网络:选择业务所在的 VPC。
  • 路由表:勾选需要访问 OSS 的 ECS 所在交换机绑定的路由表。
  1. 创建完成后,VPC 路由表中自动增加一条指向 OSS 的路由。

第二步:创建 OSS 接入点

为每个业务方创建独立的接入点,实现权限隔离管理。

  1. 登录 OSS 管理控制台
  2. 进入目标 Bucket,在左侧菜单选择接入点 > 创建接入点。
  3. 配置接入点参数:
  • 接入点名称:例如 finance-ap
  • 网络类型:选择 VPC。
  • VPC ID:选择步骤一中已创建网关终端节点的 VPC ID。
  • 配置接入点策略 :授权该接入点允许操作的资源和用户等。
  1. 保存后,系统生成接入点别名和接入点域名。

第三步:配置策略

依次配置接入点策略、Bucket 策略和 VPC 网关终端节点策略,确保访问链路权限打通。

1. 配置接入点策略

接入点策略定义通过该接入点进入的流量可以执行的操作。以下示例授予 ACS:RAM:1234567890123456:role/FinanceRole 通过 finance-ap1 接入点执行 GetObjectPutObject 操作:

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": [
        "ACS:RAM:1234567890123456:role/FinanceRole" 
      ],
      "Action": [
        "oss:GetObject",
        "oss:PutObject"
      ],
      "Resource": [
        "acs:oss:cn-hangzhou:1234567890123456:accesspoint/finance-ap1"
      ]
    }
  ]
}

2. 配置 Bucket 策略(接入点权限委派)

创建接入点后,通过 Bucket Policy 设置接入点权限委派,定义哪些接入点可以访问 Bucket。

接入点权限委派提供三种类型:

  • oss:DataAccessPointArn:指定接入点的访问权限委派。
  • oss:DataAccessPointAccount:当前主账号下所有接入点的访问权限委派。
  • oss:AccessPointNetworkOrigin:指定网络来源的所有接入点访问权限委派。

以下示例委派财务部门的所有接入点通过 VPC 访问 Bucket 中 finance/ 前缀下的数据:

{
  "Version": "1",
  "Statement": [{
    "Effect": "Allow",
    "Action": [
      "oss:*"
    ],
    "Principal": "*",
    "Resource": [
      "acs:oss:*:137918634953****:company-data-lake/finance/*"
    ],
    "Condition": {
      "StringEquals": {
        "oss:DataAccessPointArn": [
           "acs:oss:cn-hangzhou:1234567890123456:accesspoint/finance-ap1",
           "acs:oss:cn-hangzhou:1234567890123456:accesspoint/finance-ap2",
           "acs:oss:cn-hangzhou:1234567890123456:accesspoint/finance-ap3"
        ]
      }
    }
  }]
}

更多委派场景的策略配置参见按语法策略添加

3. 配置 VPC 网关终端节点策略(VPC Policy)

在 VPC 网关终端节点策略中,将接入点绑定的 Bucket 设为允许访问的目标,实现网络层的访问控制。

{
  "Version": "1",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": "oss:*",
      "Principal": [
        "123456789012****"
      ],
      "Resource": [
         "acs:oss:*:*:example-bucket",
         "acs:oss:*:*:example-bucket/*"
      ]
    }
  ]
}

注意事项

  • 域名切换:使用接入点后,SDK 或 CLI 中必须使用接入点域名或接入点别名,而非原始 Bucket 域名。
  • 错误示例my-bucket.oss-cn-hangzhou-internal.aliyuncs.com
  • 正确示例finance-ap-xxxx.oss-cn-hangzhou.oss-accesspoint.aliyuncs.com
  • 区域一致性:VPC 网关终端节点、OSS 接入点和 Bucket 必须处于同一个地域。
  • 权限叠加原则:用户必须同时满足 RAM Policy、接入点 Policy 和 Bucket Policy 的权限才能成功访问。
  • Endpoint 类型限制:VPC 网关终端节点仅支持同地域私网访问。如需跨地域访问,需使用反向代理或云企业网(CEN)。
  • 资源限额:单个 UID 可创建的接入点数量有限(1000 个),适用于绝大多数多租户场景。

总结

基于 OSS 接入点和 VPC 网关终端节点构建的多租户私网访问架构,具有如下优势:

  • 管理降维: 权限维护从“一锅粥”变为“分而治之”。
  • 安全加固: 完美规避公网暴露风险,仅限特定 VPC 访问。
  • 降本增效: 免去公网流量费,架构更稳健。

如果您正在管理企业级数据湖,或在为复杂的 OSS 权限分配头疼,不妨现在就尝试这一“黄金组合”!

相关实践学习
对象存储OSS快速上手——如何使用ossbrowser
本实验是对象存储OSS入门级实验。通过本实验,用户可学会如何用对象OSS的插件,进行简单的数据存、查、删等操作。
相关文章
|
17天前
|
存储 人工智能 API
使用 OSS-Vectors-Embed-CLI 工具三步搭建多模态语义检索系统
本文将介绍如何使用 OSS Vectors Embed CLI 命令行工具,通过若干简单的命令快速构建多模态语义检索系统。同时介绍 OSS Vectors Embed CLI 命令行工具的灵活自定义能力,如批量写入、自定义向量键、自定义向量模型参数等。
247 1
|
17天前
|
存储 人工智能 开发工具
OSS 向量 Bucket 最佳实践:快速构建多模态图片语义检索
本文介绍基于 OSS 向量 Bucket 和阿里云大模型服务平台百炼的多模态 Embedding 模型,搭建海量图片的智能语义检索系统,实现基于自然语言描述的文搜图能力的最佳实践,适用于电商商品搜索、智能相册、媒体资产管理、AI 语义检索、图片知识库等场景。
143 5
|
10天前
|
存储 人工智能 弹性计算
阿里云网盘 Skill 上线,附 OpenClaw 配置网盘空间实操教程
阿里云网盘正式上线OpenClaw专属Skill,为龙虾AI提供云端存储、多端实时同步与精细权限管控,解决本地空间不足、跨端难协同、数据不安全等痛点,3分钟配置即享高性价比(200GB/月仅6.6元)AI工作流升级。
429 6
|
16天前
|
运维 监控 Cloud Native
巨人网络《超自然行动组》携手阿里云打造云原生游戏新范式
通过 ACK(容器服务)、ESS(弹性伸缩)、网络型负载均衡 NLB、OpenKruiseGame(OKG)、SLS(日志服务)、ARMS(应用实时监控服务)、阿里云原生防护(Native Protection),以及云原生数据库 polardb 和 Redis 的深度协同,巨人网络构建了一套高弹性、高可用、低成本、智能化、高安全且高性能数据处理能力的新一代游戏基础设施,为行业树立了云原生落地的标杆。如今,随着日活跃用户(DAU)突破千万大关,这套技术体系,已经成为游戏行业“云原生转型”的标杆案例。
|
17天前
|
消息中间件 人工智能 缓存
一行命令,给你的 OpenClaw 龙虾装上 X 光机——阿里云可观测,让养虾更经济更安全
本文将聊聊如何用一行命令,给你的 OpenClaw 装上一台 X 光机——让每一次 LLM 调用、每一步工具执行、每一个 Token 的消耗,都从水下浮出水面。
|
14天前
|
存储 监控 NoSQL
阿里云 Tablestore 基于 Mem0 为 OpenClaw 构建记忆系统最佳实践
云托管、数据自主、智能记忆抽取!阿里云 Tablestore 基于 mem0,为 OpenClaw “龙虾”提供跨 Session、跨 Agent,记忆持久生效的智能记忆系统。
876 4
|
14天前
|
自然语言处理 文件存储 数据安全/隐私保护
最佳实践:为OpenClaw配置网盘空间
网盘与相册服务(PDS)为 OpenClaw 提供云端文件存储能力。配置后,OpenClaw 可直接访问网盘文件作为任务素材,也可将生成的文档、图片、视频等保存到网盘供您下载使用。网盘支持多空间隔离和文件级权限管控,确保不同用户间的数据安全。
595 7
|
10天前
|
存储 人工智能 缓存
阿里云瑶池数据库KVCache亮相NVIDIA GTC 2026
阿里云瑶池数据库亮相NVIDIA GTC 2026,首发“全局KV Cache存储系统”,破解大模型推理显存瓶颈。融合Tair与PolarDB,实现存算协同、全局池化与经济性优化,全链路支撑Agentic AI时代多模态数据底座演进。
|
4天前
|
人工智能 安全 开发者
🔈大模型玩家「合体」指南:知乎 × 魔搭社区 账号绑定功能正式上线啦
知乎与魔搭(ModelScope)账号正式打通!开发者可一键绑定,同步展示开源模型、数据集至知乎主页,实现“实践+讨论”双链路表达。绑定后还能加入圈子赢限定勋章及周边!
102 21