airflow.providers.amazon.aws.secrets.systems_manager

与从 AWS SSM Parameter Store 获取连接相关的对象。

SystemsManagerParameterStoreBackend

从 AWS SSM Parameter Store 检索连接或变量。

模块内容

class airflow.providers.amazon.aws.secrets.systems_manager.SystemsManagerParameterStoreBackend(connections_prefix='/airflow/connections', connections_lookup_pattern=None, variables_prefix='/airflow/variables', variables_lookup_pattern=None, config_prefix='/airflow/config', config_lookup_pattern=None, **kwargs)[source]

基类:airflow.secrets.BaseSecretsBackend, airflow.utils.log.logging_mixin.LoggingMixin

从 AWS SSM Parameter Store 检索连接或变量。

可通过 airflow.cfg 如下配置

[secrets]
backend = airflow.providers.amazon.aws.secrets.systems_manager.SystemsManagerParameterStoreBackend
backend_kwargs = {"connections_prefix": "/airflow/connections", "profile_name": null}

例如,如果 ssm 路径是 /airflow/connections/smtp_default,则如果你提供了 {"connections_prefix": "/airflow/connections"} 并请求 conn_id smtp_default,则可以访问。如果 ssm 路径是 /airflow/variables/hello,则如果你提供了 {"variables_prefix": "/airflow/variables"} 和变量键 hello,则可以访问。

参数
  • connections_prefix (str) – 指定用于读取连接 Secret 的前缀。如果设置为 None (null),则不会向 AWS SSM Parameter Store 发送连接请求。

  • connections_lookup_pattern (str | None) – 指定连接 ID 需要匹配的模式,以便在 AWS Parameter Store 中查找。仅在 connections_prefix 不是 None 时适用。如果设置为 None(配置中的空值),所有连接将首先在 AWS Parameter Store 中查找。

  • variables_prefix (str) – 指定用于读取变量 Secret 的前缀。如果设置为 None (null),则不会向 AWS SSM Parameter Store 发送变量请求。

  • variables_lookup_pattern (str | None) – 指定变量键需要匹配的模式,以便在 AWS Parameter Store 中查找。仅在 variables_prefix 不是 None 时适用。如果设置为 None(配置中的空值),所有变量将首先在 AWS Parameter Store 中查找。

  • config_prefix (str) – 指定用于读取配置 Secret 的前缀。如果设置为 None (null),则不会向 AWS SSM Parameter Store 发送配置请求。

  • config_lookup_pattern (str | None) – 指定配置键需要匹配的模式,以便在 AWS Parameter Store 中查找。仅在 config_prefix 不是 None 时适用。如果设置为 None(配置中的空值),所有配置键将首先在 AWS Parameter Store 中查找。

你也可以向此类传递 AWS Connection Extra 配置中列出的额外关键字参数,它们将用于建立连接并传递给 Boto3 客户端。

[secrets]
backend = airflow.providers.amazon.aws.secrets.systems_manager.SystemsManagerParameterStoreBackend
backend_kwargs = {"connections_prefix": "airflow/connections", "region_name": "eu-west-1"}

另请参阅

配置连接

connections_lookup_pattern = None[source]
variables_lookup_pattern = None[source]
config_lookup_pattern = None[source]
profile_name[source]
api_version[source]
use_ssl[source]
kwargs[source]
property client[source]

创建 SSM 客户端。

get_conn_value(conn_id)[source]

获取参数值。

参数

conn_id (str) – 连接 ID

get_variable(key)[source]

获取 Airflow 变量。

参数

key (str) – 变量键

返回

变量值

返回类型

str | None

get_config(key)[source]

获取 Airflow 配置。

参数

key (str) – 配置选项键

返回

配置选项值

返回类型

str | None

此条目有帮助吗?