我一直在尝试连接到亚马逊的boto SDK,以构建与亚马逊MWS服务的连接器。
但是,现在,我能够向boto.mws.connection的MWSConnection类提供我的凭据的唯一方法是通过硬编码访问和密钥。显然,这不适合部署。
当我使用其他亚马逊服务(如SQS)时,我已经能够使用IAM角色和配置文件进行连接。例如,下面是一些示例代码,用于通过配置文件连接到SQS:
REGION = "us-west-2"
PROFILE_NAME = 'my_profile'
class SQSManager(object):
def __init__(self):
self.conn = boto.sqs.connect_to_region(region_name=REGION, profile_name=PROFILE_NAME)
但是,我无法找到通过profile_name连接MWS的方法。我已经通过MWSConnection课程搜索了#39;方法,这就是它实例化连接的方式:
class MWSConnection(AWSQueryConnection):
ResponseFactory = boto.mws.response.ResponseFactory
ResponseErrorFactory = boto.mws.exception.ResponseErrorFactory
def __init__(self, *args, **kw):
kw.setdefault('host', 'mws.amazonservices.com')
self._sandboxed = kw.pop('sandbox', False)
self.Merchant = kw.pop('Merchant', None) or kw.get('SellerId')
self.SellerId = kw.pop('SellerId', None) or self.Merchant
kw = self._setup_factories(kw.pop('factory_scopes', []), **kw)
super(MWSConnection, self).__init__(*args, **kw)
明确接受访问/密钥是关键字参数。无论如何使用亚马逊的boto SDK使用配置文件和IAM角色连接到MWS?
答案 0 :(得分:0)
Marketplace Web Service(MWS)是亚马逊零售店。我不认为它与AWS有任何关联,它根本不使用IAM。我真的很惊讶它看到它支持boto(它是{{3}})。