首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >pynamodb amazon凭据异常

pynamodb amazon凭据异常
EN

Stack Overflow用户
提问于 2016-05-15 21:18:27
回答 3查看 3.5K关注 0票数 3

我正在遵循pynamodb文档

代码语言:javascript
复制
class Thread(Model):
    class Meta:
        read_capacity_units = 1
        write_capacity_units = 1
        table_name = "Thread"
        region = 'us-west-1'
        host = "http://localhost:8888"

    forum_name = UnicodeAttribute(hash_key=True)
    subject = UnicodeAttribute(range_key=True)
    views = NumberAttribute(default=0)
    replies = NumberAttribute(default=0)
    answered = NumberAttribute(default=0)
    tags = UnicodeSetAttribute()
    last_post_datetime = UTCDateTimeAttribute(null=True)

# Delete the table
# print(Thread.delete_table())

# Create the table
if not Thread.exists():
    Thread.create_table(wait=True)

当我运行上面的代码时,它给出了错误:

代码语言:javascript
复制
DEBUG:pynamodb.connection.base:Calling DescribeTable with arguments {'TableName': 'Thread'}

并引发异常:

代码语言:javascript
复制
raise TableError("Unable to describe table: {0}".format(e), e)

TableError:无法描述表:找不到凭据

如何提供pynamodb aws_secret_key_id和aws_access密钥。我使用dynamodb local在本地计算机上运行该示例。

如何在pynamodb中提供凭据信息。我确实设置了aws_secret_key_id和aws_access_key的环境变量,但仍然是凭据执行

有没有办法在pynamodb中提供aws_access_key_id和aws_secret_access_key作为参数,比如下面的例子:

这段代码可以工作并创建数据库,但我想使用pynamodb库

代码语言:javascript
复制
dynamodb = boto3.resource('dynamodb',
                          region_name='us-west-2',
                          aws_access_key_id="access key",
                          aws_secret_access_key="secret acess key",
                          endpoint_url="http://localhost:8888")
EN

回答 3

Stack Overflow用户

发布于 2020-05-24 14:41:24

在Meta类中,包含

代码语言:javascript
复制
aws_access_key_id = "anything"
aws_secret_access_key = "fake"

您可以提供任何假的秘密访问密钥和访问密钥。

票数 2
EN

Stack Overflow用户

发布于 2016-05-21 16:47:16

创建文件~/.aws/credentials并输入

代码语言:javascript
复制
[default]
aws_access_key_id = 'foo'
aws_secret_access_key = 'bar

或者更好

Unable to locate credentials

票数 1
EN

Stack Overflow用户

发布于 2020-02-21 22:02:40

我遇到了类似的问题,得到了同样的异常

解决方案是使用aws configure按终端配置亚马逊网络服务

然后查看aws configure list的配置

但在我的例子中,我遇到了另一个问题(我正在使用Ubuntu),当我使用aws configure list时,我发现配置没有设置,但当我使用‘`sudo configure list’时,它可以工作。

因此,我转到'~/.aws‘并使用命令更改了'credentials’文件的权限

sudo chmod +r credentials

然后我用来创建dynamodb和进行测试的命令起作用了。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37238796

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档