8. AWS SNS Sink
发送消息到 Amazon Simple Notification Service (SNS)主题。
8.1. AWS SNS Sink Kamelet Description 复制链接链接已复制到粘贴板!
8.1.1. 身份验证方法 复制链接链接已复制到粘贴板!
在这个 Kamelet 中,您可以通过指定 useDefaultCredentialsProvider 选项并将其设置为 true 来避免使用显式静态凭证。
以下为 Default Credentials Provider 评估顺序如下:
-
Java 系统属性 -
aws.accessKeyId和aws.secretKey. -
环境变量 -
AWS_ACCESS_KEY_ID和AWS_SECRET_ACCESS_KEY。 - AWS STS 的 Web Identity Token。
- 共享凭证和配置文件。
-
Amazon ECS 容器凭据 - 如果设置了环境变量
AWS_CONTAINER_CREDENTIALS_RELATIVE_URI,则从 Amazon ECS 加载。 - Amazon EC2 实例配置集凭据。
您还可以通过将 useProfileCredentialsProvider 选项设置为 true,将 profileCredentialsName 设置为配置集名称来使用 Profile Credentials Provider。
只能使用其中一个 access key/secret 密钥或默认凭证提供程序
如需更多信息,请参阅 AWS 凭证文档
8.1.2. 可选标头 复制链接链接已复制到粘贴板!
在 Kamelet 中,您可以选择性地设置以下标头:
-
subject/ce-subject: 消息主题
8.2. 配置选项 复制链接链接已复制到粘贴板!
下表总结了 aws-sns-sink Kamelet 可用的选项:
| 属性 | 名称 | 描述 | 类型 | 默认 | Example |
|---|---|---|---|---|---|
| region * | AWS 区域 | 用于访问的 AWS 区域。 | 字符串 | ||
| topicNameOrArn * | 主题名称 | SNS 主题名称或 Amazon 资源名称(ARN)。 | 字符串 | ||
| accessKey | 访问密钥 | 从 AWS 获取的访问密钥。 | 字符串 | ||
| autoCreateTopic | autocreate Topic | 设置 SNS 主题的自动创建。 | 布尔值 | False | |
| overrideEndpoint | 端点覆盖 |
选择这个选项来覆盖端点 URI。要使用这个选项,还必须为 | 布尔值 | False | |
| profileCredentialsName | 配置集凭证名称 | 如果使用配置集凭证供应商,此参数会设置配置集名称。 | 字符串 | ||
| secretKey | 机密密钥 | 从 AWS 获取的 secret 密钥。 | 字符串 | ||
| sessionToken | 会话令牌 | 当用户需要假定 IAM 角色时使用的 Amazon AWS Session Token。 | 字符串 | ||
| uriEndpointOverride | 覆盖 Endpoint URI |
覆盖端点 URI。要使用这个选项,还必须选择 | 字符串 | ||
| useDefaultCredentialsProvider | 默认凭证提供程序 | 如果为 true,则 SNS 客户端通过默认凭证供应商加载凭证。如果为 false,它将使用基本的身份验证方法(access key 和 secret key)。 | 布尔值 | False | |
| useProfileCredentialsProvider | 配置集凭证供应商 | 设置 SNS 客户端是否应该预期通过配置集凭证提供程序加载凭证。 | 布尔值 | False | |
| useSessionCredentials | 会话凭证 | 设置 SNS 客户端是否应该预期使用 Session 凭证。这在用户需要假设 IAM 角色在 SNS 中执行操作时非常有用。 | 布尔值 | False |
* = 标记为星号的字段 是必需的。
8.3. 依赖项 复制链接链接已复制到粘贴板!
在运行时,aws-sns-sink Kamelet 依赖于以下依赖项的存在:
<dependencies>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifact>camel-quarkus-aws2-sns</artifact>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifact>camel-quarkus-core</artifact>
</dependency>
<dependency>
<groupId>org.apache.camel.quarkus</groupId>
<artifact>camel-quarkus-kamelet</artifact>
</dependency>
<dependency>
<groupId>org.apache.camel.kamelets</groupId>
<artifact>camel-kamelets-utils</artifact>
<version>{kamelets-utils-version}</version>
</dependency>
</dependencies>
8.4. kamelets 源文件 复制链接链接已复制到粘贴板!
https://github.com/apache/camel-kamelets/blob/4.14.x/kamelets/aws-sns-sink.kamelet.yaml