服务帐户管理

管理服务帐户

添加服务帐户

使用 IAM API

前提条件:

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

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

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

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

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

    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 来列出所有已配置服务帐户,请执行以下命令:

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>,并执行命令:

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> 并执行以下命令:

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