服务账户管理

管理服务账户

添加服务账户

使用 IAM API

前提条件:

服务账户由用户 ID 和 RSA 私钥构成。

  1. 要使用 DC/OS 身份和访问管理 (IAM) API 来添加服务账户,请首先通过 OpenSSL 生成 RSA 私钥。

    1. openssl genpkey -algorithm RSA -out private-key.pem -pkeyopt rsa_keygen_bits:2048
  2. 从私钥中提取相应的公钥。

    1. openssl rsa -pubout -in private-key.pem -out public-key.pem
  3. 将公钥文件内容转换为带有转义换行符的字符串。

    1. export PUBLIC_KEY=$(sed ':a;N;$!ba;s/\n/\\n/g' public-key.pem)
  4. 在以下命令中使用所需值替换 <uid>,然后执行命令:

    1. curl -i -X PUT http://<host-ip>/acs/api/v1/users/<uid> -d '{"public_key": "'"$PUBLIC_KEY"'"}' -H 'Content-Type: application/json' -H "Authorization: token=$TOKEN"

列出服务账户

使用 IAM API

前提条件:

要使用 身份和访问管理 (IAM) API 来列出所有已配置服务账户,请执行以下命令:

  1. curl -i -X GET "http://<host-ip>/acs/api/v1/users?type=service" -H 'Content-Type: application/json' -H "Authorization: token=$TOKEN"

更改服务账户公钥

使用 IAM API

前提条件:

要使用 DC/OS 身份和访问管理 (IAM) API 来更改服务账户的公钥,请在 public-key.pem 文件中提供一个新的公钥。然后,替换以下命令中的 <uid>,并执行命令:

  1. curl -i -X PATCH http://<host-ip>/acs/api/v1/users/<uid> -d '{"public_key": "'"$(sed ':a;N;$!ba;s/\n/\\n/g' public-key.pem)"'"}' -H 'Content-Type: application/json' -H "Authorization: token=$TOKEN"

移除服务账户

使用 IAM API

前提条件:

要使用 DC/OS 身份和访问管理 (IAM) API 来移除本地用户账户,请用相应的值替换 <uid> 并执行以下命令:

  1. curl -i -X DELETE http://<host-ip>/acs/api/v1/users/<uid> -H 'Content-Type: application/json' -H "Authorization: token=$TOKEN"