gpt4 book ai didi

boto - 无法使用 boto.cloudsearch2 将文档上传到 aws cloudsearch

转载 作者:行者123 更新时间:2023-12-04 19:05:24 25 4
gpt4 key购买 nike

这是我尝试将文档上传到云搜索的代码

from boto.cloudsearch2.layer2 import Layer2
conn_config = {
'region': 'us-east-1',
'aws_access_key_id': os.getenv('AWS_ACCESS'),
'aws_secret_access_key': os.getenv('AWS_SECRET'),
'debug': 2
}
conn = Layer2(**conn_config)
domain = conn.lookup(my_domain)
doc_service = domain.get_document_service()
doc_service.add(my_id, my_fields)
doc_service.commit()

这是我得到的错误:
Traceback (most recent call last):
line 32, in <module> doc.commit()
File "/Library/Python/2.7/site-packages/boto/cloudsearch2/document.py", line 205, in commit return CommitResponse(r, self, sdf)
File "/Library/Python/2.7/site-packages/boto/cloudsearch2/document.py", line 250, in __init__
self.adds = self.content['adds']
KeyError: 'adds'

我认为这是一个误导性错误。当我将此行添加到 时初始化 ()/Library/Python/2.7/site-packages/boto/cloudsearch2/document.py
print self.content

真正的问题似乎是:
{u'status': u'error', u'message': u'User: anonymous is not authorized to perform:    cloudsearch:document on resource: arn:aws:cloudsearch:us-east-1:053216739513:domain/dev-audit', u'errors': [{u'message': u'[*Deprecated*: Use the outer message field] User: anonymous is not authorized to perform: cloudsearch:document on resource: arn:aws:cloudsearch: ...'}], u'__type': u'#AccessDenied'}

关于如何克服这个烦人的权限错误的任何见解?我可以使用给定的访问 ID 和 key 进行搜索,但无法上传!!!

最佳答案

CloudSearch 允许您为查询和文档提交配置单独的访问策略。听起来您的文档提交策略可能比查询策略(这是一种常见设置)更具限制性。

您可以让文档提交保持开放以进行测试,并在以后使用 http://docs.aws.amazon.com/cloudsearch/latest/developerguide/configuring-access.html 上的指南提出访问策略。 .

示例全开配置:

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "",
"Effect": "Allow",
"Principal": {
"AWS": "*"
},
"Action": "cloudsearch:*"
}
]
}

以下是 AWS Web 控制台中的位置:

CloudSearch access policies

关于boto - 无法使用 boto.cloudsearch2 将文档上传到 aws cloudsearch,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26495333/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com