elasticsearch-saml-metadata

编辑

elasticsearch-saml-metadata 命令可用于生成 SAML 2.0 服务提供商元数据文件。

概要

编辑
bin/elasticsearch-saml-metadata
[--realm <name>]
[--out <file_path>] [--batch]
[--attribute <name>] [--service-name <name>]
[--locale <name>] [--contacts]
([--organisation-name <name>] [--organisation-display-name <name>] [--organisation-url <url>])
([--signing-bundle <file_path>] | [--signing-cert <file_path>][--signing-key <file_path>])
[--signing-key-password <password>]
[-E <KeyValuePair>]
[-h, --help] ([-s, --silent] | [-v, --verbose])

描述

编辑

SAML 2.0 规范提供了一种机制,供服务提供商使用元数据文件描述其功能和配置。

elasticsearch-saml-metadata 命令基于 Elasticsearch 中 SAML 域的配置生成此类文件。

某些 SAML 身份提供商允许您在将 Elastic Stack 配置为服务提供商时自动导入元数据文件。

您可以选择对元数据文件进行数字签名,以确保其在与身份提供商共享之前的完整性和真实性。用于签署元数据文件的密钥不必与 SAML 域配置中已用于 SAML 消息签名的密钥相同。

如果您的 Elasticsearch 密钥库受密码保护,则在运行 elasticsearch-saml-metadata 命令时,系统会提示您输入密码。

参数

编辑
--attribute <name>
指定应作为元数据中的 <RequestedAttribute> 元素包含的 SAML 属性。 Elasticsearch 域中配置的任何属性都会自动包含,无需指定为命令行选项。
--batch
不提示用户输入。
--contacts
指定元数据应包含一个或多个 <ContactPerson> 元素。系统会提示用户输入每个人的详细信息。
-E <KeyValuePair>
配置 Elasticsearch 设置。
-h, --help
返回所有命令参数。
--locale <name>
指定用于元数据元素的区域设置,例如 <ServiceName>。默认为 JVM 的默认系统区域设置。
--organisation-display-name <name
指定 <OrganizationDisplayName> 元素的值。仅当也指定了 --organisation-name 时才有效。
--organisation-name <name>
指定应在元数据中包含 <Organization> 元素,并提供 <OrganizationName> 的值。如果指定了此项,则还必须指定 --organisation-url
--organisation-url <url>
指定 <OrganizationURL> 元素的值。如果指定了 --organisation-name,则这是必需的。
--out <file_path>
指定输出文件的路径。默认为 saml-elasticsearch-metadata.xml
--service-name <name>
指定元数据中 <ServiceName> 元素的值。默认为 elasticsearch
--signing-bundle <file_path>
指定现有密钥对(采用 PKCS#12 格式)的路径。该密钥对的私钥将用于签署元数据文件。
--signing-cert <file_path>
指定现有证书(采用 PEM 格式)的路径,该证书将用于签署元数据文件。您还必须指定 --signing-key 参数。此参数不能与 --signing-bundle 参数一起使用。
--signing-key <file_path>
指定现有密钥(采用 PEM 格式)的路径,该密钥将用于签署元数据文件。您还必须指定 --signing-cert 参数。此参数不能与 --signing-bundle 参数一起使用。
--signing-key-password <password>
指定签名密钥的密码。它可以与 --signing-key--signing-bundle 参数一起使用。
--realm <name>
指定应为其生成元数据的域的名称。如果您的 Elasticsearch 配置中有多个 saml 域,则此参数是必需的。
-s, --silent
显示最少的输出。
-v, --verbose
显示详细输出。

示例

编辑

以下命令为 saml1 域生成默认元数据文件

bin/elasticsearch-saml-metadata --realm saml1

该文件将写入 saml-elasticsearch-metadata.xml。系统可能会提示您为域使用的任何属性提供“friendlyName”值。

以下命令为 saml2 域生成元数据文件,其中 <ServiceName>kibana-finance,区域设置为 en-GB,并包含 <ContactPerson> 元素和一个 <Organization> 元素

bin/elasticsearch-saml-metadata --realm saml2 \
    --service-name kibana-finance \
    --locale en-GB \
    --contacts \
    --organisation-name "Mega Corp. Finance Team" \
    --organisation-url "http://mega.example.com/finance/"