You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS Location Service跨账号调用geo:SearchPlaceIndexForText遇403拒绝

跨账号调用Amazon Location Service 403拒绝问题解决

核心原因

跨账号访问AWS资源,仅在调用方(账号A)配置允许策略完全不够,必须同时在资源所属方(账号B)的Place Index上配置资源级IAM策略,授权账号A的用户/角色访问该资源。另外报错明确提到「explicit deny」,也需要排查是否存在其他显式拒绝规则。

具体解决步骤

1. 在账号B中为目标Place Index添加资源策略

登录账号B的AWS控制台,找到对应的HerePlaceIndex,编辑其资源策略,添加允许账号A的user-name用户访问的规则。示例策略如下:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Effect": "Allow",
            "Principal": {
                "AWS": "arn:aws:iam::账号A的ID:user/user-name"
            },
            "Action": "geo:SearchPlaceIndexForText",
            "Resource": "arn:aws:geo:us-east-1:账号B的ID:place-index/HerePlaceIndex"
        }
    ]
}

如果需要允许账号A下多个用户/角色,可指定账号A的根ARN(arn:aws:iam::账号A的ID:root)或者具体角色ARN。

2. 排查显式拒绝的来源

报错中的「explicit deny」可能来自以下场景,需逐一排查:

  • 账号B的组织SCP(服务控制策略):检查是否有SCP限制geo服务跨账号访问,或直接拒绝该操作。
  • 账号A的user-name用户是否被附加拒绝型IAM策略:比如是否有策略显式拒绝geo:SearchPlaceIndexForText操作,或限制了访问资源范围。
  • 账号B的Place Index是否存在冲突资源策略:比如存在拒绝账号A访问的规则,优先级高于允许规则。

3. 验证权限配置

可使用AWS IAM Access Analyzer或aws iam simulate-custom-policy命令,模拟账号A的用户调用该操作,确认权限是否生效。

内容的提问来源于stack exchange,提问作者Piyush Pranjal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 04:35:19