您可以使用键值对或作为文件在 DC/OS 中创建密钥。两种方法都将名称和密钥值添加到密钥存储库中。如果您已将密钥值存储在本地文件中,并希望避免复制和粘贴,那么您可能会发现将密钥添加为文件会很方便。
有关如何在应用程序或 pod 定义中引用这些密钥的信息,请参阅配置服务和 pod 以使用密钥
创建密钥
以下部分解释了如何使用 UI、CLI 和密钥 API,将密钥创建为键/值对和文件。
密钥应包括路径,除非您希望允许所有服务访问其值。有关密钥路径的更多信息,请参阅空间
前提条件
DC/OS UI
dcos:superuser
权限。
DC/OS CLI 或密钥 API
-
有关从 CLI 或 API 创建密钥所需的权限,请参阅密钥存储库权限 您配置的权限必须包括允许用户创建的密钥名称。每个密钥必须拥有一项权限。密钥名称和权限名称必须匹配。
使用 UI 创建键值对密钥
-
以具有
dcos:superuser
权限的用户身份登录 DC/OS UI。 -
打开 Secrets 选项卡。
-
单击右上方的 + 图标。
图 1 - 新密钥图标
如果您当前没有密钥,将显示 创建密钥 界面。单击 创建密匙 按钮。
图 2 -“创建密匙”按钮
-
在 创建新密钥 屏幕的 ID 框中,键入密钥的名称及其路径(若有)。
图 3 - 创建新的键对
-
选择 键值对 作为类型。
-
在 Value 框中键入或粘贴密钥。
图 4 - 创建新密钥
-
单击 创建密匙。
返回到密匙屏幕,可以看到密匙已经部署。
图 5 - 部署了键对的密钥
使用 API 创建键值对密钥
本程序介绍了如何在 my-secret
路径内创建名为 developer
的密钥。
-
使用
dcos auth login
登录到 CLI。 -
使用以下命令创建密钥。
curl -X PUT --cacert dcos-ca.crt -H "Authorization: token=$(dcos config show core.dcos_acs_token)" -d '{"value":"very-secret"}' $(dcos config show core.dcos_url)/secrets/v1/secret/default/developer/my-secret -H 'Content-Type: application/json'
通过 DC/OS Enterprise CLI 创建键/值对密钥
本程序介绍了如何使用 DC/OS Enterprise CLI 在 my-secret
路径内创建名为 developer
的键/值对密钥。
-
使用
dcos auth login
登录到 CLI。您可在 [CLI 参考] 中找到有关此命令的更多信息。(/mesosphere/dcos/cn/2.1/cli/command-reference/dcos-auth/dcos-auth-login/). -
使用以下命令创建新密钥。
dcos security secrets create --value=top-secret developer/my-secret
通过 DC/OS Enterprise CLI 从文件创建密钥
本程序介绍了如何使用文件在 my-secret
路径内使用 DC/OS Enterprise CLI 创建名为 developer
的密钥。
文件内容(以下称为 my-secret.txt
)可以是任何文本值。
-
使用
dcos auth login
登录到 CLI。您可在 [CLI 参考] 中找到有关此命令的更多信息。(/mesosphere/dcos/cn/2.1/cli/command-reference/dcos-auth/dcos-auth-login/). -
使用以下命令创建新密钥。
dcos security secrets create -f my-secret.txt developer/my-secret
通过 DC/OS UI 从文件创建密钥
本程序介绍如何使用文件和 DC/OS Web 界面创建密匙。
-
以具有
dcos:superuser
权限的用户身份登录 DC/OS UI。 -
单击左侧导航菜单上的 密匙 选项卡。
-
单击右上方的 + 图标。
图 6 -“密匙”屏幕
如果您当前没有密钥,将显示“创建密钥”屏幕。单击 创建密匙 按钮。
图 7 -“创建密匙”按钮
-
在 ID 框中,提供密钥名称及其路径(如果有)。
图 8 - 显示选定文件的“创建新密钥”对话框
-
选择 文件 作为类型。
-
单击 选择文件。
-
找到并选择要从中创建密匙的文件。
-
单击 创建密匙。
返回到密匙屏幕,可以看到密匙已经部署。
图 9 - 部署的密钥