You need to enable JavaScript to run this app.
文档中心
对象存储

对象存储

复制全文
下载 pdf
双端固定
配置双端固定
复制全文
下载 pdf
配置双端固定
本文介绍如何配置双端固定,以及双端固定的场景示例。​
注意事项​
TOS 只有从 VPC 终端节点发出的请求中才能获取到 SourceVpc 这一鉴权上下文信息,如果仅在桶策略或 IAM 策略配置 tos:sourcevpc 条件,但未创建相应的网关终端节点,则 TOS 无法获取到 SourceVpc 上下文信息 ,因而无法识别请求来源的 VPC,导致 tos:sourcevpc 条件判断失效。​
操作说明​
配置双端固定时,您需要在终端节点处配置终端节点策略,限制 VPC 内云资源访问的对象存储范围。还需要在对象存储处配置桶策略或 IAM 策略,使得 VPC 内的账号拥有对存储桶执行指定操作的权限。​
  1. 配置 VPC 终端节点策略。​
  • 您可以在创建终端节点时,配置 VPC 终端节点策略,即配置访问策略参数。配置时,您可以通过 Action 指定允许执行的操作,通过 Resource 指定允许访问的对象存储资源范围。通过 Condition(例如tos:BucketTag) 指定允许访问的具有指定标签的存储桶。具体操作,请参见创建网关终端节点和修改终端节点。​
  1. 配置桶策略或 IAM 策略。​
  • 配置 IAM 策略时,您可以通过 Condition 参数下的 SourceVpc 指定授权的 VPC,具体操作,请参见配置 IAM 策略。​
示例一:授予 VPC 内的云资源对指定存储桶执行所有操作的权限​
场景描述:在 VPC 终端节点策略处允许 VPC 内的云资源使用任意账号对 tos-example 存储桶执行所有操作,在桶策略处授予 VPC 内账号对 tos-example 存储桶执行所有操作的权限。​
  • VPC 终端节点策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": ["*"],​
    "Resource": [​
    "trn:tos:::tos-example",​
    "trn:tos:::tos-example/*"​
    ]​
    }​
    ]​
    }​
    ​
  • 桶策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Sid": "id-11",​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": [​
    "*"​
    ],​
    "Resource": [​
    "trn:tos:::tos-example",​
    "trn:tos:::tos-example/*"​
    ],​
    "Condition": {​
    "StringEquals": {​
    "tos:sourcevpc": [​
    "vpc-pedgr4xdnklc4acvz69o****"​
    ]​
    }​
    }​
    }​
    ]​
    }​
    ​
示例二:授予 VPC 内的云资源对指定存储桶执行上传、下载对象操作的权限​
场景描述: 在 VPC 终端节点策略处允许 VPC 内的云资源使用任意账号对 tos-example 存储桶执行上传、下载对象操作,在桶策略处授予 VPC 内账号对 tos-example 存储桶执行上传、下载对象的权限。​
  • VPC 终端节点策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": ["tos:PutObject","tos:GetObject"],​
    "Resource": [​
    "trn:tos:::tos-example/*"​
    ]​
    }​
    ]​
    }​
    ​
  • 桶策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Sid": "id-11",​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": [​
    "tos:PutObject",​
    "tos:GetObject"​
    ],​
    "Resource": [​
    "trn:tos:::tos-example/*"​
    ],​
    "Condition": {​
    "StringEquals": {​
    "tos:sourcevpc": [​
    "vpc-pedgr4xdnklc4acvz69o****"​
    ]​
    }​
    }​
    }​
    ]​
    }​
    ​
示例三:授予 VPC 内云资源对一组存储桶执行上传、下载对象操作的权限​
TOS 支持通过 BucketTag 进行权限控制,您可以通过桶标签对存储桶进行分类,然后使用 VPC 终端节点策略和 IAM 策略授予 VPC 内云资源访问具有指定标签的存储桶的权限。​
场景描述:在 VPC 终端节点策略处允许 VPC 内的云资源使用任意账号对桶标签为 Tag1:Value1 的存储桶执行上传、下载对象操作,在 IAM 策略处授予 VPC 内账号对存储桶执行上传、下载对象操作。​
  • VPC 终端节点策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": ["tos:PutObject","tos:GetObject"],​
    "Resource": [​
    "*"​
    ],​
    "Condition":{​
    "StringEquals":{​
    "tos:BucketTag/Tag1": ["Value1"]​
    }​
    }​
    }​
    ]​
    }​
    ​
  • IAM 策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Sid": "id-11",​
    "Effect": "Allow",​
    "Action": [​
    "tos:PutObject",​
    "tos:GetObject"​
    ],​
    "Resource": [​
    "*"​
    ],​
    "Condition": {​
    "StringEquals": {​
    "SourceVpc": [​
    "vpc-pedgr4xdnklc4acvz69o****"​
    ]​
    }​
    }​
    }​
    ]​
    }​
    ​
示例四:授予 VPC 内的云资源和来自 TOS 内部跨区域复制请求对指定存储桶执行上传、下载对象操作的权限​
当同时设置了 VPC 的终端节点策略与 tos-example 桶策略后,由于双端固定的限制,其他云服务以及 TOS 内部跨区域复制和桶清单请求可能无法访问 tos-example 存储桶。针对这种情况,您可以指定 rolename 使得其他云服务和 TOS 内部请求能够正常访问存储桶 tos-example。​
场景描述:在 VPC 终端节点策略处允许 VPC 内的云资源使用任意账号对 tos-example 桶执行上传、下载对象操作,在桶策略处授予 VPC 内账号对 tos-example 存储桶执行上传、下载对象的权限,同时允许来自 TOS 内部跨区域复制请求执行上传、下载对象操作。​
  • VPC 终端节点策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": ["tos:PutObject","tos:GetObject"],​
    "Resource": [​
    "trn:tos:::tos-example/*"​
    ]​
    }​
    ]​
    }​
    ​
  • 桶策略配置如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Sid": "id-11",​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": [​
    "tos:PutObject",​
    "tos:GetObject"​
    ],​
    "Resource": [​
    "trn:tos:::tos-example/*"​
    ],​
    "Condition": {​
    "StringEquals": {​
    "tos:sourcevpc": [​
    "vpc-pedgr4xdnklc4acvz69o****"​
    ]​
    }​
    }​
    },​
    {​
    "Sid": "id-12",​
    "Effect": "Allow",​
    "Principal": [​
    "*"​
    ],​
    "Action": [​
    "tos:PutObject",​
    "tos:GetObject"​
    ],​
    "Resource": [​
    "trn:tos:::tos-example/*"​
    ],​
    "Condition": {​
    "StringEquals": {​
    "tos:rolename": [​
    "ServiceRoleforReplicationAccessTOS"​
    ]​
    }​
    }​
    }​
    ]​
    }​
    ​
  • 除此之外,桶策略也可以配置为拒绝除指定 VPC 或指定 rolename 外的访问。但此种配置会导致无法通过控制台访问该存储桶。​
  • 拒绝除vpc-pedgr4xdnklc4acvz69o**** VPC 和跨区域复制外的请求在存储桶执行上传、下载对象操作,示例如下:​
  • ​
    {​
    "Statement": [​
    {​
    "Sid": "id-11",​
    "Effect": "Deny",​
    "Principal": [​
    "*"​
    ],​
    "Action": [​
    "tos:PutObject",​
    "tos:GetObject"​
    ],​
    "Resource": [​
    "trn:tos:::tos-example/*"​
    ],​
    "Condition": {​
    "StringNotEquals": {​
    "tos:sourcevpc": [​
    "vpc-pedgr4xdnklc4acvz69o****"​
    ],​
    "tos:rolename": [​
    "ServiceRoleforReplicationAccessTOS"​
    ]​
    }​
    }​
    }​
    ]​
    }​
    ​
rolename 说明​
TOS 内部请求和其他云服务对应 rolename 如下:​
​
请求来源​
rolename​
跨区域复制​
ServiceRoleforReplicationAccessTOS​
桶清单​
TosArchiveTOSInventory​
其他云服务​
服务关联角色名称。​
说明​
为其他云服务设置 rolename 前,您需要创建角色,并设置授权的身份类型为云服务。关于创建服务关联角色的具体操作,请参见角色管理。​
​
​
最近更新时间:2026.05.13 10:31:00
这个页面对您有帮助吗?
有用
有用
无用
无用