1

我在 CNAME 后面有一个弹性搜索服务,当我尝试使用 curl 命令通过命令行访问它时,我能够通过 HTTP 200 OK 响应获得正确的响应。

但是,当我尝试使用 Java API 的 Rest High Level Client 连接到服务时,我收到 403 错误。

我的弹性搜索的访问策略配置为 * 作为 AWS Principal。

错误日志是这样的:

[DEBUG]  org.elasticsearch.client.RestClient: request [POST http://ES_ENDPOINT/INDEX_NAME/_search?typed_keys=true&ignore_unavailable=false&expand_wildcards=open&allow_no_indices=true&search_type=query_then_fetch&batched_reduce_size=512&ccs_minimize_roundtrips=true] returned [HTTP/1.1 403 Forbidden]

{"message":"The request signature we calculated does not match the signature you provided. Check your AWS Secret Access Key and signing method. Consult the service documentation for details."}

这背后的可能原因是什么?此问题仅发生在 CNAME 而不是实际的弹性搜索域名。

4

0 回答 0