AWSEventBridge规则与Redshift-程序未被调用
创始人
2024-09-25 10:31:45
0

需要检查以下几个方面来解决 AWS EventBridge 规则与 Redshift 程序未被调用的问题:

  1. 请确保你已经按照正确的步骤设置 AWS EventBridge 与 Redshift,例如创建 Lambda 函数并将其作为目标与 EventBridge 规则相连。

  2. 当创建 EventBridge 规则时,请确保你为规则指定了 Lambda 函数作为目标,并且该函数与 Redshift 集群位于同一个 VPC。

  3. 检查函数代码中是否正确设置了 IAM 角色,该角色必须包括 Redshift、Lambda 和 EventBridge 所需的权限。

以下是一个 Lambda 函数示例,该函数在调用 Redshift 之前使用 IAM Role 来获取临时凭证:

import boto3
from botocore.credentials import RefreshableCredentials

def get_temporary_credentials(event, context):
    sts_client = boto3.client('sts')
    response = sts_client.assume_role(
       RoleArn='arn:aws:iam::123456789012:role/MyRole',
       RoleSessionName='MySession'
    )

    credentials = response['Credentials']
    session_token = credentials['SessionToken']
    access_key = credentials['AccessKeyId']
    secret_key = credentials['SecretAccessKey']
    exp_time = credentials['Expiration']
    
    aws_credentials = RefreshableCredentials.create_from_metadata(
        metadata={
            'access_key': access_key,
            'secret_key': secret_key,
            'token': session_token,
            'expiry_time': exp_time.isoformat()
        },
        refresh_using=get_temporary_credentials,
        method='sts-assume-role'
    )

    # 使用 AWS Credential 对象进行 Redshift 操作
    client = boto3.client('redshift', aws_access_key_id=aws_credentials.access_key,
                          aws_secret_access_key=aws_credentials.secret_key,
                          aws_session_token=aws_credentials.token)

    return "Success"

在此示例中,我们通过 assume_role()方法获取了 RoleArn 和 RoleSessionName 参数

相关内容

热门资讯

保存时出现了1个错误,导致这篇... 当保存文章时出现错误时,可以通过以下步骤解决问题:查看错误信息:查看错误提示信息可以帮助我们了解具体...
汇川伺服电机位置控制模式参数配... 1. 基本控制参数设置 1)设置位置控制模式   2)绝对值位置线性模...
不能访问光猫的的管理页面 光猫是现代家庭宽带网络的重要组成部分,它可以提供高速稳定的网络连接。但是,有时候我们会遇到不能访问光...
本地主机上的图像未显示 问题描述:在本地主机上显示图像时,图像未能正常显示。解决方法:以下是一些可能的解决方法,具体取决于问...
表格中数据未显示 当表格中的数据未显示时,可能是由于以下几个原因导致的:HTML代码问题:检查表格的HTML代码是否正...
表格列调整大小出现问题 问题描述:表格列调整大小出现问题,无法正常调整列宽。解决方法:检查表格的布局方式是否正确。确保表格使...
不一致的条件格式 要解决不一致的条件格式问题,可以按照以下步骤进行:确定条件格式的规则:首先,需要明确条件格式的规则是...
Android|无法访问或保存... 这个问题可能是由于权限设置不正确导致的。您需要在应用程序清单文件中添加以下代码来请求适当的权限:此外...
【NI Multisim 14...   目录 序言 一、工具栏 🍊1.“标准”工具栏 🍊 2.视图工具...
银河麒麟V10SP1高级服务器... 银河麒麟高级服务器操作系统简介: 银河麒麟高级服务器操作系统V10是针对企业级关键业务...