从 lambda 函数中访问 AWS API?

我正在编写我的第一个 lambda 函数(在 Python 中),我对凭据应该如何在 lambda 环境中工作感到有些困惑。我正在尝试从 aws secrets api 中检索一个秘密(用于 Aurora 数据库访问),使用看起来像这样的示例代码(为简洁起见,我删除了所有错误处理):


def get_secret():

    secret_name = 'dbtest-postgres-secret'

    region_name = 'us-east-2'


    session = boto3.session.Session()                                                                                                                                                          

    client = session.client(                                                                                                                                                                   

        service_name='secretsmanager',                                                                                                                                                         

        region_name=region_name                                                                                                                                                                

    )                                                                                                                                                                                          


    get_secret_value_response = client.get_secret_value(                                                                                                                                   

        SecretId=secret_name                                                                                                                                                               

    )                                                                                                                                                                                      


    secret = get_secret_value_response['SecretString']



我假设通过为具有适当权限的 lambda 函数分配一个角色(AmazonRDSDataFullAccess,其中包括访问秘密管理器的权限),一切都会被设置。我是否需要向 lambda 函数提供显式凭据(例如,访问密钥和秘密)?


拉丁的传说
浏览 54回答 1
1回答

九州编程

您不需要提供显式凭据,lambda 将从您分配给它的角色中获取凭据。你要的秘密是什么,因为AmazonRDSDataFullAccess只有在rds-db-credentials/*.
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python