Robotframework AWS 担任角色

时间:2021-03-18 16:03:00

标签: robotframework

我正在使用 RF RPA[AWS] 库进行测试自动化,目前我们转移到 S3 存储桶,这需要特定的角色设置才能访问 S3 存储桶…… 使用 [Init S3 Client] KW 后是否有可能切换到某个 AWS ROLE? 如果不是,我如何在 S3 客户端初始化期间映射所需的 AWS ROLE。

1 个答案:

答案 0 :(得分:0)

我想说 RPA[AWS] 是不可能的。我已经使用 boto3 编写了自己的 RF 库

这将有助于获得 Boto S3 客户端并为此承担角色

def get_client(self):
    """
    Get client to AWS service and assume the role to that service.

    """
    
    boto3.setup_default_session(profile_name="Test Profile")
    client = boto3.client('s3')
    response = client.assume_role(RoleArn="arn:aws:iam::12345678:role/TestRole", RoleSessionName="Test Session")
    session = Session(aws_access_key_id=response['Credentials']['AccessKeyId'],
                      aws_secret_access_key=response['Credentials']['SecretAccessKey'],
                      aws_session_token=response['Credentials']['SessionToken'],
                      region_name="your-region")
    return session.client(service)