当前位置: 首页 > 面试题库 >

建议使用多个AWS账户管理凭证的方法吗?

龙兴贤
2023-03-14
问题内容

管理多个Amazon Web Services(AWS)帐户的最佳方法是什么boto

我对正在使用的BotoConfig文件很熟悉。但是每个文件仅描述一个帐户…而且我正在与多个组织合作。出于所有常规的法律,财务和安全原因,这些帐户无法混合。

目前,我boto每个帐户使用一个配置文件。例如:

  • ~/.boto 默认账户
  • ~/.boto_clowncollege 用于“小丑学院”帐户
  • ~/.boto_razorassoc 用于“ razorassoc”帐户
  • ~/.boto_xyz 对于“ xyz”帐户

然后是这样的:

def boto_config_path(account=None):
    """
    Given an account name, return the path to the corresponding boto
    configuration file. If no account given, return the default config file.
    """
    path = '~/.boto' + ('_' + account if account else '')
    clean_path = os.path.abspath(os.path.expanduser(path))
    if os.path.isfile(clean_path):
        return clean_path
    else:
        errmsg = "cannot find boto config file {} for {}".format(clean_path, account)
        raise ValueError(errmsg)

def aws_credentials(account=None):
    """
    Return a tuple of AWS credentials (access key id and secret access key) for
    the given account.
    """
    try:
        cfg = INIConfig(open(boto_config_path(account)))
        return ( cfg.Credentials.aws_access_key_id, cfg.Credentials.aws_secret_access_key )
    except Exception:
        raise

conn = EC2Connection(*aws_credentials('razorassoc'))

是好还是坏?建议的改进?


问题答案:

将来,boto将提供更好的工具来帮助您管理多个凭据,但是目前有一些环境变量可能会有所帮助。

首先,您可以将BOTO_CONFIG设置为指向您要使用的boto配置文件,它将覆盖正常位置中找到的所有配置文件。

其次,您可以将BOTO_PATH设置为以冒号分隔的位置列表,以查找boto配置文件,它将在正常搜索位置之前首先在其中搜索。

这些都不能满足您的实际需求,但是可以减少代码量,从而更轻松地完成任务。

如果您有关于如何在Boto中进行操作的想法,请告诉我!



 类似资料:
  • 网站通常会自己实现一套登录系统,需要账号和密码作为登录信息。使用凭证管理 API 进行账号密码凭证管理,即可方便快捷地实现自动登录,提升用户体验。 凭证管理 API 提供了 PasswordCredential 凭据对象,需要将账号密码信息转换为凭证之后再进行存取操作。 PasswordCredential 实现了 Credetial 的接口。PasswordCredential 初始化传入的对象

  • 易考主账户(在易考注册登录的账户)下可添加多个账号,即为子账户; 子账户仅可作为该主账户的分支使用,被删除后账号便不再存在; 为了方便分配主账户下的相关工作,子账户只有部分功能可使用,不同角色功能不同; 子账户可选定角色或添加自定义权限,现子账户有多个角色可选: 人工判分员 内容制作员 考试观察员 管理员 考试管理员 添加子账户 添加多账号的步骤如下: 通过右上角用户名下拉菜单进入管理中心,选择多

  • 使用指南 - 账户管理 - 多账户关联 为您详细介绍百度统计的账户结构,包括账户、站点、报告间的层级关系,报告或者消费数据的账户权限问题,以及假如您拥有多个账户,需要实现多账户授权管理的操作方法。 多账户关联 账户间授权有哪些限制 如何解决多账户使用同一站点投放的代码安装问题 如何将主账号中的报告分别授权给其他账户查看

  • 我有一个关于在Lambda函数中运行的跨帐户IAM问题。(我知道人们可能会使用STS,但这个软件包真的不值得保护,我不想通过链接帐户) 账户“一”。 账户“B” Lambda是只读的,但是我相信boto3不会将凭据写入~/. aws,如果我使用boto3.client(不是会话)。不过我也把AWS_CONFIG_FILE设为 /tmp以防万一。它仍然失败。我怀疑我的提议是不可能的,因为LAMBDA

  • 根据多租户数据架构的帖子,有3种方法可以实现多租户 > 独立数据库 共享数据库,独立模式 共享数据库,共享模式 我有以下细节: > 用户应该能够备份和恢复他们的数据。 租户数量: 3(约) 每个租户可能属于不同的域(url)。 这里有一些供所有租户共用的桌子。 每个租户中的表数: 10(初始) 我想知道哪种方法更适合我?

  • 使用指南 - 账户管理 为您详细介绍百度统计的账户结构,包括账户、站点、报告间的层级关系,报告或者消费数据的账户权限问题,以及假如您拥有多个账户,需要实现多账户授权管理的操作方法。 概述 百度统计账户类型 账户、站点、报告间的关系 该选择什么账号类型使用百度统计站点管理 如何创建站点 站点的暂停与删除 网站有多个域名怎么创建站点 首页代码状态的意义 如何设置汇总网站 什么是权限网站(如何看到其它账