Gitlab 合并请求批准API身份验证

Gitlab 合并请求批准API身份验证,gitlab,gitlab-ci,gitlab-api,Gitlab,Gitlab Ci,Gitlab Api,我想通过gitlab API获得合并请求批准的状态 GET /projects/:id/merge_requests/:merge_request_iid/approval_state 此调用需要一个具有api级别权限的基于帐户的访问令牌(对所有内容进行读/写)。这是不安全的,因为我希望在其他人可能看到/使用我的令牌的管道中使用此调用 是否有可能使用基于项目的令牌进行此呼叫 可以找到文档您可以将令牌保存在项目设置中。 请看这里: 在UI中,导航到项目的设置>CI/CD并展开变量 通过选择其类型

我想通过gitlab API获得合并请求批准的状态

GET /projects/:id/merge_requests/:merge_request_iid/approval_state
此调用需要一个具有api级别权限的基于帐户的访问令牌(对所有内容进行读/写)。这是不安全的,因为我希望在其他人可能看到/使用我的令牌的管道中使用此调用

是否有可能使用基于项目的令牌进行此呼叫


可以找到文档

您可以将令牌保存在项目设置中。
请看这里:

在UI中,导航到项目的设置>CI/CD并展开变量
通过选择其类型、在字段“输入变量键”中命名并在“输入变量值”字段中定义其值来创建新变量

例如,您将把令牌保存在变量:
token
中。然后可以在
.gitlab ci.yml
脚本中轻松使用此变量:

script:
  - curl --header "Private-Token: $TOKEN" https://gitlab.example.com/api/v4/projects

谢谢你的提示。这确实提供了更多的安全性,因为不是每个人都可以看到普通令牌。但是,它不会阻止其他开发人员在该项目的管道中使用我的令牌,并以我的名义执行各种操作。简单的
开发人员
(具有
开发人员
权限的开发人员)无权访问此变量。只有
维护者
所有者
可以。请在此阅读更多内容:没错,这会降低可视性和可编辑性。但到目前为止,在管道中使用变量是不受限制的?似乎他们希望将作业权限建立在触发管道的用户的基础上。可以在列表中找到
它提供了许多进一步强制用户权限的可能性,比如只允许特定用户访问Runner或使用安全变量和环境。