身份认证管理

管理 DC/OS CLI 中的身份认证

DC/OS 用户数据库通过在路径 /dcos/usersznodes 中的管理节点上运行而保留在 ZooKeeper 中。在 HTTP 授权标题中发送至 DC/OS 的令牌必须采用以下格式:token=<token>. 在未来的版本中 Bearer <token> 还将受到支持 。

DC/OS 开源通过 CLI 命令提供安全管理;请参阅 CLI 命令参考。在 CLI 中,您可以对群集进行身份认证,甚至可以选择退出基于 Auth0 的身份认证。

通过 DC/OS CLI 进行身份认证

仅 DC/OS CLI 版本 0.4.3 及更高版本支持身份认证。有关升级说明,请参阅此处

DC/OS CLI 将令牌存储在运行 CLI 的用户主目录下的目录 .dcos 中的配置文件里。此令牌可与 curl 命令一起使用,以访问 DC/OS API,使用 curlwget。例如,curl -H 'Authorization: token=<token>' http://cluster

  1. 在终端提示符下,使用以下命令对集群进行身份认证。

    1. dcos auth login

    以下是输出示例:

    1. Please go to the following link in your browser:
    2. https://<public-master-ip>/login?redirect_uri=urn:ietf:wg:oauth:2.0:oob
    3. Enter OpenID Connect ID Token:
  2. 在终端提示符中复制 URL 并将其粘贴到浏览器中。

  3. 单击与您首选的身份提供程序相对应的按钮。

    id 提供程序商列表

    图 1. 选择身份提供程序

  4. 如果出现提示,请将凭据提供给身份提供程序。如果您在当前浏览器会话期间已经对身份提供程序进行了认证身份,则无需再次执行此操作。

    auth 登录令牌

    图 2. Auth 登录令牌

  5. 单击 Copy to Clipboard

  6. 返回到终端提示符,并在提示时粘贴 OpenID Connect ID 令牌值。

  7. 您应该收到以下消息。

    1. Login successful!
  8. 要注销,请运行此命令:

    1. dcos auth logout

身份认证选择退出

如果您正在进行高级安装,则可以通过将此参数添加到配置文件 (genconf/config.yaml) 中选择退出基于 Auth0 的身份认证。

  1. oauth_enabled: 'false'

如需更多信息,请参阅配置文档

如果您正在 AWS 上进行云安装,则可以在指定详细信息步骤上将 OAuthEnabled 选项设置为 false 以禁用身份认证。

如果您在 Azure 上进行云安装,则无法禁用身份认证。此选项将在未来 版本中与其他选项一起添加以自定义身份认证的选项。

请注意,如果您已经安装了集群并希望就地禁用此功能,则可以使用相同的参数集进行升级。

延伸阅读

未来工作

我们期待与 DC/OS 社区合作,改进现有 安全功能,并在即将发布的版本中引入新功能。

后续步骤

排除身份认证故障

排除 DC/OS 开源部署中的身份认证问题…

HTTP API 端点身份认证

使用 HTTP API 端点进行身份认证…