Back to Gitlabhq

Permissions affinées pour les jetons de job CI/CD

doc-locale/fr-fr/ci/jobs/fine_grained_permissions.md

19.3.033.2 KB
Original Source
<!-- This documentation is auto-generated by a Rake task. Please do not edit this file directly. To update this file, run: `bundle exec rake ci:job_tokens:compile_docs`. To make changes to the output of the Rake task, edit `tooling/ci/job_tokens/docs/templates/fine_grained_permissions.md.erb`. -->

{{< details >}}

  • Édition : Gratuite, GitLab Premium, GitLab Ultimate
  • Offre : GitLab.com, GitLab Self-Managed, GitLab Dedicated

{{< /details >}}

{{< history >}}

{{< /history >}}

Vous pouvez utiliser les permissions granulaires pour autoriser explicitement l'accès à un ensemble limité de points de terminaison de l'API REST. Ces permissions sont appliquées aux jetons de job CI/CD dans un projet spécifié.

Partagez vos commentaires dans le ticket 519575.

Ajouter des permissions affinées à la liste d'autorisation des jetons de job {#add-fine-grained-permissions-to-the-job-token-allowlist}

Prérequis :

  • Vous devez avoir le rôle Maintainer ou Owner pour le projet.
  • Vous devez activer l'utilisation des permissions affinées pour un projet.

Vous pouvez ajouter des permissions affinées aux groupes et aux projets dans votre liste d'autorisation des jetons de job. Cela leur permet d'utiliser des jetons de job pour accéder à des ressources de projet spécifiques et de contrôler plus précisément les ressources disponibles pour ces groupes et projets.

Pour ajouter des permissions affinées aux groupes ou aux projets dans la liste d'autorisation des jetons de job :

  1. Dans la barre supérieure, sélectionnez Rechercher ou aller à et trouvez votre projet.
  2. Sélectionnez Paramètres > CI/CD.
  3. Développez Permissions de jetons de job.
  4. Dans la section Liste des jetons de job CI/CD autorisés, sélectionnez Ajouter.
  5. Dans la liste déroulante, sélectionnez Groupe ou projet.
  6. Saisissez le chemin d'accès à un groupe ou projet existant.
  7. Sélectionnez Permissions affinées.
  8. Accordez des permissions à tous les endpoints d'API disponibles.
  9. Sélectionnez Ajouter.

GitLab ajoute le groupe ou le projet à la liste d'autorisation des jetons de job avec les permissions spécifiées. Le groupe ou le projet peut désormais accéder à toutes les ressources autorisées dans le projet actuel.

Endpoints d'API disponibles {#available-api-endpoints}

Les jetons de job CI/CD peuvent accéder aux endpoints d'API REST suivants :

Endpoints de déploiements {#deployments-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Lister toutes les merge requests associées à un déploiementGET /projects/:id/deployments/:deployment_id/merge_requestsREAD_DEPLOYMENTSLecture
Lister tous les déploiements d'un projetGET /projects/:id/deploymentsREAD_DEPLOYMENTSLecture
Récupérer un déploiementGET /projects/:id/deployments/:deployment_idREAD_DEPLOYMENTSLecture
Approuver ou rejeter un déploiement bloquéPOST /projects/:id/deployments/:deployment_id/approvalADMIN_DEPLOYMENTSLecture et écriture
Créer un déploiementPOST /projects/:id/deploymentsADMIN_DEPLOYMENTS, ADMIN_ENVIRONMENTSLecture et écriture
Supprimer un déploiementDELETE /projects/:id/deployments/:deployment_idADMIN_DEPLOYMENTSLecture et écriture
Mettre à jour un déploiementPUT /projects/:id/deployments/:deployment_idADMIN_DEPLOYMENTSLecture et écriture

Endpoints d'environnements {#environments-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Lister tous les environnementsGET /projects/:id/environmentsREAD_ENVIRONMENTSLecture
Récupérer un environnementGET /projects/:id/environments/:environment_idREAD_ENVIRONMENTSLecture
Créer un environnementPOST /projects/:id/environmentsADMIN_ENVIRONMENTSLecture et écriture
Supprimer un environnementDELETE /projects/:id/environments/:environment_idADMIN_ENVIRONMENTSLecture et écriture
Planifier la suppression de plusieurs environnements éphémères arrêtésDELETE /projects/:id/environments/review_appsADMIN_ENVIRONMENTSLecture et écriture
Arrêter un environnementPOST /projects/:id/environments/:environment_id/stopADMIN_ENVIRONMENTSLecture et écriture
Arrêter les environnements obsolètesPOST /projects/:id/environments/stop_staleADMIN_ENVIRONMENTSLecture et écriture
Mettre à jour un environnement existantPUT /projects/:id/environments/:environment_idADMIN_ENVIRONMENTSLecture et écriture

Endpoints de jobs {#jobs-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Télécharger un fichier spécifique depuis une archive d'artefacts de jobGET /projects/:id/jobs/:job_id/artifacts/*artifact_pathREAD_JOBSLecture
Télécharger un fichier spécifique depuis une archive d'artefacts de job à partir d'une refGET /projects/:id/jobs/artifacts/:ref_name/raw/*artifact_pathREAD_JOBSLecture
Télécharger l'archive d'artefacts de job depuis un jobGET /projects/:id/jobs/:job_id/artifactsREAD_JOBSLecture
Télécharger le fichier d'artefacts de job pour un jobGET /jobs/:id/artifactsREAD_JOBSLecture
Lister tous les fichiers dans une archive d'artefacts de jobGET /projects/:id/jobs/:job_id/artifacts/treeREAD_JOBSLecture
Lister tous les jobs par pipelineGET /projects/:id/pipelines/:pipeline_id/jobsREAD_JOBSLecture
Lister tous les jobs d'un projetGET /projects/:id/jobsREAD_JOBSLecture
Récupérer les artefacts de jobGET /projects/:id/jobs/artifacts/:ref_name/downloadREAD_JOBSLecture

Endpoints de merge requests {#merge-requests-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Obtenir la liste des notes d'une merge requestGET /projects/:id/merge_requests/:noteable_id/notesREAD_MERGE_REQUESTSLecture
Obtenir une note de merge requestGET /projects/:id/merge_requests/:noteable_id/notes/:note_idREAD_MERGE_REQUESTSLecture
Obtenir une merge requestGET /projects/:id/merge_requests/:merge_request_iidREAD_MERGE_REQUESTSLecture
Lister les merge requests d'un projetGET /projects/:id/merge_requestsREAD_MERGE_REQUESTSLecture

Endpoints de packages {#packages-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Endpoint de package Composer pour télécharger une archive de packageGET /projects/:id/packages/composer/archives/*package_nameREAD_PACKAGESLecture
Télécharger un fichier de packageGET /projects/:id/packages/:package_id/package_files/:package_file_id/downloadREAD_PACKAGESLecture
Télécharger le fichier du moduleGET /projects/:id/packages/go/*module_name/@v/:module_version.modREAD_PACKAGESLecture
Télécharger la source du moduleGET /projects/:id/packages/go/*module_name/@v/:module_version.zipREAD_PACKAGESLecture
Télécharger le fichier de packageGET /projects/:id/packages/generic/:package_name/*package_version/(*path/):file_nameREAD_PACKAGESLecture
Télécharger les fichiers de packageGET /packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/package/:conan_package_reference/:package_revision/:file_nameREAD_PACKAGESLecture
Télécharger les fichiers de packageGET /projects/:id/packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/package/:conan_package_reference/:package_revision/:file_nameREAD_PACKAGESLecture
Télécharger les fichiers de packageGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/packages/:conan_package_reference/revisions/:package_revision/files/:file_nameREAD_PACKAGESLecture
Télécharger les fichiers de recetteGET /packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/export/:file_nameREAD_PACKAGESLecture
Télécharger les fichiers de recetteGET /projects/:id/packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/export/:file_nameREAD_PACKAGESLecture
Télécharger les fichiers de recetteGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/files/:file_nameREAD_PACKAGESLecture
Télécharger le tarball NPMGET /projects/:id/packages/npm/*package_name/-/*file_nameREAD_PACKAGESLecture
Télécharger le fichier de package maven au niveau du groupeGET /groups/:id/-/packages/maven/*path/:file_nameREAD_PACKAGESLecture
Télécharger le fichier de package maven au niveau du projetGET /projects/:id/packages/maven/*path/:file_nameREAD_PACKAGESLecture
Télécharger le fichier de package maven au niveau de l'instanceGET /packages/maven/*path/:file_nameREAD_PACKAGESLecture
Obtenir la liste des packages d'un projetGET /projects/:id/packagesREAD_PACKAGESLecture
Obtenir un package de projetGET /projects/:id/packages/:package_idREAD_PACKAGESLecture
Obtenir tous les tags pour un package NPM donnéGET /groups/:id/-/packages/npm/-/package/*package_name/dist-tagsREAD_PACKAGESLecture
Obtenir tous les tags pour un package NPM donnéGET /packages/npm/-/package/*package_name/dist-tagsREAD_PACKAGESLecture
Obtenir tous les tags pour un package NPM donnéGET /projects/:id/packages/npm/-/package/*package_name/dist-tagsREAD_PACKAGESLecture
Obtenir les métadonnées de référence du packageGET /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/searchREAD_PACKAGESLecture
Obtenir les métadonnées de référence du packageGET /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/searchREAD_PACKAGESLecture
Obtenir les métadonnées de référence du packageGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/searchREAD_PACKAGESLecture
Obtenir les métadonnées de référence du packageGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/searchREAD_PACKAGESLecture
Obtenir la dernière révision du packageGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/packages/:conan_package_reference/latestREAD_PACKAGESLecture
Obtenir la dernière révision de la recetteGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/latestREAD_PACKAGESLecture
Obtenir la liste des révisions de packageGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/packages/:conan_package_reference/revisionsREAD_PACKAGESLecture
Obtenir la liste des révisionsGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisionsREAD_PACKAGESLecture
ListerGET /projects/:id/packages/go/*module_name/@v/listREAD_PACKAGESLecture
Lister tous les packages d'un projetGET /projects/:id/packages/pypi/simpleREAD_PACKAGESLecture
Lister les fichiers de packageGET /projects/:id/packages/:package_id/package_filesREAD_PACKAGESLecture
Lister les fichiers de packageGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/packages/:conan_package_reference/revisions/:package_revision/filesREAD_PACKAGESLecture
Lister les fichiers de recetteGET /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/filesREAD_PACKAGESLecture
Endpoint d'avis de sécurité en masse du registre NPMPOST /groups/:id/-/packages/npm/-/npm/v1/security/advisories/bulkREAD_PACKAGESLecture
Endpoint d'avis de sécurité en masse du registre NPMPOST /packages/npm/-/npm/v1/security/advisories/bulkREAD_PACKAGESLecture
Endpoint d'avis de sécurité en masse du registre NPMPOST /projects/:id/packages/npm/-/npm/v1/security/advisories/bulkREAD_PACKAGESLecture
Endpoint de métadonnées du registre NPMGET /projects/:id/packages/npm/*package_nameREAD_PACKAGESLecture
Endpoint d'audit rapide du registre NPMPOST /groups/:id/-/packages/npm/-/npm/v1/security/audits/quickREAD_PACKAGESLecture
Endpoint d'audit rapide du registre NPMPOST /packages/npm/-/npm/v1/security/audits/quickREAD_PACKAGESLecture
Endpoint d'audit rapide du registre NPMPOST /projects/:id/packages/npm/-/npm/v1/security/audits/quickREAD_PACKAGESLecture
Condensé du packageGET /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_reference/digestREAD_PACKAGESLecture
Condensé du packageGET /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_reference/digestREAD_PACKAGESLecture
URLs de téléchargement du packageGET /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_reference/download_urlsREAD_PACKAGESLecture
URLs de téléchargement du packageGET /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_reference/download_urlsREAD_PACKAGESLecture
Snapshot du packageGET /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_referenceREAD_PACKAGESLecture
Snapshot du packageGET /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_referenceREAD_PACKAGESLecture
URLs d'envoi du packagePOST /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_reference/upload_urlsREAD_PACKAGESLecture
URLs d'envoi du packagePOST /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/packages/:conan_package_reference/upload_urlsREAD_PACKAGESLecture
Condensé de la recetteGET /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/digestREAD_PACKAGESLecture
Condensé de la recetteGET /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/digestREAD_PACKAGESLecture
URLs de téléchargement de la recetteGET /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/download_urlsREAD_PACKAGESLecture
URLs de téléchargement de la recetteGET /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/download_urlsREAD_PACKAGESLecture
Snapshot de la recetteGET /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channelREAD_PACKAGESLecture
Snapshot de la recetteGET /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channelREAD_PACKAGESLecture
URLs d'envoi de la recettePOST /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/upload_urlsREAD_PACKAGESLecture
URLs d'envoi de la recettePOST /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channel/upload_urlsREAD_PACKAGESLecture
Endpoint de package simple PyPi pour les projetsGET /projects/:id/packages/pypi/simple/*package_nameREAD_PACKAGESLecture
Endpoint de téléchargement de package PyPiGET /projects/:id/packages/pypi/files/:sha256/*file_identifierREAD_PACKAGESLecture
Métadonnées de versionGET /projects/:id/packages/go/*module_name/@v/:module_version.infoREAD_PACKAGESLecture
Autoriser l'envoi de package NPMPUT /projects/:id/packages/npm/:package_name/authorizeADMIN_PACKAGESLecture et écriture
Autoriser l'envoi de package PyPi depuis le workhorsePOST /projects/:id/packages/pypi/authorizeADMIN_PACKAGESLecture et écriture
Endpoint de packages Composer pour l'enregistrement des packagesPOST /projects/:id/packages/composerADMIN_PACKAGESLecture et écriture
Créer ou mettre à jour le tag donné pour le package et la version NPM donnésPUT /groups/:id/-/packages/npm/-/package/*package_name/dist-tags/:tagADMIN_PACKAGESLecture et écriture
Créer ou mettre à jour le tag donné pour le package et la version NPM donnésPUT /packages/npm/-/package/*package_name/dist-tags/:tagADMIN_PACKAGESLecture et écriture
Créer ou mettre à jour le tag donné pour le package et la version NPM donnésPUT /projects/:id/packages/npm/-/package/*package_name/dist-tags/:tagADMIN_PACKAGESLecture et écriture
Créer ou déprécier un package NPMPUT /projects/:id/packages/npm/:package_nameADMIN_PACKAGESLecture et écriture
Supprimer le packageDELETE /packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channelADMIN_PACKAGESLecture et écriture
Supprimer le packageDELETE /projects/:id/packages/conan/v1/conans/:package_name/:package_version/:package_username/:package_channelADMIN_PACKAGESLecture et écriture
Supprimer un fichier de packageDELETE /projects/:id/packages/:package_id/package_files/:package_file_idADMIN_PACKAGESLecture et écriture
Supprimer un package de projetDELETE /projects/:id/packages/:package_idADMIN_PACKAGESLecture et écriture
Supprimer la révision du packageDELETE /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/packages/:conan_package_reference/revisions/:package_revisionADMIN_PACKAGESLecture et écriture
Supprimer la révision de la recetteDELETE /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revisionADMIN_PACKAGESLecture et écriture
Supprime le tag donnéDELETE /groups/:id/-/packages/npm/-/package/*package_name/dist-tags/:tagADMIN_PACKAGESLecture et écriture
Supprime le tag donnéDELETE /packages/npm/-/package/*package_name/dist-tags/:tagADMIN_PACKAGESLecture et écriture
Supprime le tag donnéDELETE /projects/:id/packages/npm/-/package/*package_name/dist-tags/:tagADMIN_PACKAGESLecture et écriture
Envoyer un packagePOST /projects/:id/packages/pypiADMIN_PACKAGESLecture et écriture
Envoyer le fichier de packagePUT /projects/:id/packages/generic/:package_name/*package_version/(*path/):file_nameADMIN_PACKAGESLecture et écriture
Envoyer les fichiers de packagePUT /packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/package/:conan_package_reference/:package_revision/:file_nameADMIN_PACKAGESLecture et écriture
Envoyer les fichiers de packagePUT /projects/:id/packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/package/:conan_package_reference/:package_revision/:file_nameADMIN_PACKAGESLecture et écriture
Envoyer les fichiers de packagePUT /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/packages/:conan_package_reference/revisions/:package_revision/files/:file_nameADMIN_PACKAGESLecture et écriture
Envoyer les fichiers de package de recettePUT /packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/export/:file_nameADMIN_PACKAGESLecture et écriture
Envoyer les fichiers de package de recettePUT /projects/:id/packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/export/:file_nameADMIN_PACKAGESLecture et écriture
Envoyer les fichiers de package de recettePUT /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/files/:file_nameADMIN_PACKAGESLecture et écriture
Envoyer le fichier de package mavenPUT /projects/:id/packages/maven/*path/:file_nameADMIN_PACKAGESLecture et écriture
Workhorse autorise le fichier de package génériquePUT /projects/:id/packages/generic/:package_name/*package_version/(*path/):file_name/authorizeADMIN_PACKAGESLecture et écriture
Workhorse autorise le fichier de package conanPUT /packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/package/:conan_package_reference/:package_revision/:file_name/authorizeADMIN_PACKAGESLecture et écriture
Workhorse autorise le fichier de package conanPUT /projects/:id/packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/package/:conan_package_reference/:package_revision/:file_name/authorizeADMIN_PACKAGESLecture et écriture
Workhorse autorise le fichier de package conanPUT /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/packages/:conan_package_reference/revisions/:package_revision/files/:file_name/authorizeADMIN_PACKAGESLecture et écriture
Workhorse autorise le fichier de recette conanPUT /packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/export/:file_name/authorizeADMIN_PACKAGESLecture et écriture
Workhorse autorise le fichier de recette conanPUT /projects/:id/packages/conan/v1/files/:package_name/:package_version/:package_username/:package_channel/:recipe_revision/export/:file_name/authorizeADMIN_PACKAGESLecture et écriture
Workhorse autorise le fichier de recette conanPUT /projects/:id/packages/conan/v2/conans/:package_name/:package_version/:package_username/:package_channel/revisions/:recipe_revision/files/:file_name/authorizeADMIN_PACKAGESLecture et écriture
Workhorse autorise l'envoi du fichier de package mavenPUT /projects/:id/packages/maven/*path/:file_name/authorizeADMIN_PACKAGESLecture et écriture

Endpoints de pipelines {#pipelines-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Obtenir les pipelines d'un package de projetGET /projects/:id/packages/:package_id/pipelinesREAD_PIPELINESLecture
Lister tous les pipelines d'un projetGET /projects/:id/pipelinesREAD_PIPELINESLecture
Lister tous les jobs déclencheurs par pipelineGET /projects/:id/pipelines/:pipeline_id/bridgesREAD_PIPELINESLecture
Récupérer un pipelineGET /projects/:id/pipelines/:pipeline_idREAD_PIPELINESLecture
Mettre à jour les métadonnées du pipelinePUT /projects/:id/pipelines/:pipeline_id/metadataADMIN_PIPELINESLecture et écriture

Endpoints de releases {#releases-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Télécharger un fichier de ressource associée à une release d'un projetGET /projects/:id/releases/:tag_name/downloads/*direct_asset_pathREAD_RELEASESLecture
Génère une section de journal des modifications pour une release et la retourneGET /projects/:id/repository/changelogREAD_RELEASESLecture
Obtenir la dernière release d'un projetGET /projects/:id/releases/permalink/latest(/)(*suffix_path)READ_RELEASESLecture
Lister tous les liens d'une releaseGET /projects/:id/releases/:tag_name/assets/linksREAD_RELEASESLecture
Lister toutes les releases d'un projetGET /projects/:id/releasesREAD_RELEASESLecture
Récupérer une release par nom de tagGET /projects/:id/releases/:tag_nameREAD_RELEASESLecture
Récupérer un lien de releaseGET /projects/:id/releases/:tag_name/assets/links/:link_idREAD_RELEASESLecture
Collecter la preuve de releasePOST /projects/:id/releases/:tag_name/evidenceADMIN_RELEASESLecture et écriture
Créer une releasePOST /projects/:id/releasesADMIN_RELEASESLecture et écriture
Créer un lien de releasePOST /projects/:id/releases/:tag_name/assets/linksADMIN_RELEASESLecture et écriture
Supprimer une releaseDELETE /projects/:id/releases/:tag_nameADMIN_RELEASESLecture et écriture
Supprimer un lien de releaseDELETE /projects/:id/releases/:tag_name/assets/links/:link_idADMIN_RELEASESLecture et écriture
Publier une nouvelle release de projet de composant en tant que version dans le catalogue CI/CDPOST /projects/:id/catalog/publishADMIN_RELEASESLecture et écriture
Mettre à jour une releasePUT /projects/:id/releases/:tag_nameADMIN_RELEASESLecture et écriture
Mettre à jour un lien de releasePUT /projects/:id/releases/:tag_name/assets/links/:link_idADMIN_RELEASESLecture et écriture

Endpoints de dépôts {#repositories-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Obtenir les tags du dépôt d'un projetGET /projects/:id/repository/tagsREAD_REPOSITORIESLecture
Obtenir un tag de dépôtGET /projects/:id/repository/tags/:tag_nameREAD_REPOSITORIESLecture
Lister toutes les merge requests pour un commitGET /projects/:id/repository/commits/:sha/merge_requestsREAD_REPOSITORIESLecture
Lister toutes les branches du dépôtGET /projects/:id/repository/branchesREAD_REPOSITORIESLecture
Récupérer un commitGET /projects/:id/repository/commits/:shaREAD_REPOSITORIESLecture
Récupérer un fichier brut depuis un dépôtGET /projects/:id/repository/files/:file_path/rawREAD_REPOSITORIESLecture

Endpoints de fichiers sécurisés {#secure-files-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Télécharger un fichier sécuriséGET /projects/:id/secure_files/:secure_file_id/downloadREAD_SECURE_FILESLecture
Lister tous les fichiers sécurisés d'un projetGET /projects/:id/secure_filesREAD_SECURE_FILESLecture
Récupérer les détails d'un fichier sécuriséGET /projects/:id/secure_files/:secure_file_idREAD_SECURE_FILESLecture
Créer un fichier sécuriséPOST /projects/:id/secure_filesADMIN_SECURE_FILESLecture et écriture
Supprimer un fichier sécuriséDELETE /projects/:id/secure_files/:secure_file_idADMIN_SECURE_FILESLecture et écriture

Endpoints d'état Terraform {#terraform-state-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Obtenir un état Terraform par son nomGET /projects/:id/terraform/state/:nameREAD_TERRAFORM_STATELecture
Obtenir une version d'état TerraformGET /projects/:id/terraform/state/:name/versions/:serialREAD_TERRAFORM_STATELecture
Ajouter un nouvel état Terraform ou mettre à jour un existantPOST /projects/:id/terraform/state/:nameADMIN_TERRAFORM_STATELecture et écriture
Supprimer un état Terraform d'un certain nomDELETE /projects/:id/terraform/state/:nameADMIN_TERRAFORM_STATELecture et écriture
Supprimer une version d'état TerraformDELETE /projects/:id/terraform/state/:name/versions/:serialADMIN_TERRAFORM_STATELecture et écriture
Verrouiller un état Terraform d'un certain nomPOST /projects/:id/terraform/state/:name/lockADMIN_TERRAFORM_STATELecture et écriture
Déverrouiller un état Terraform d'un certain nomDELETE /projects/:id/terraform/state/:name/lockADMIN_TERRAFORM_STATELecture et écriture

Endpoints d'éléments de travail {#work-items-endpoints}

PermissionEndpoint d'APINom de la permissionPortée
Obtenir la liste des tickets d'un projetGET /projects/:id/issuesREAD_WORK_ITEMSLecture
Obtenir un ticket de projetGET /projects/:id/issues/:issue_iidREAD_WORK_ITEMSLecture

Endpoints d'API non disponibles {#unavailable-api-endpoints}

Les jetons de job CI/CD ne peuvent pas accéder aux endpoints suivants :

PermissionEndpoint d'API
Supprimer le dépôtDELETE /projects/:id/registry/repositories/:repository_id
Supprimer les tags du dépôt (en masse)DELETE /projects/:id/registry/repositories/:repository_id/tags
Supprimer un tag de dépôtDELETE /projects/:id/registry/repositories/:repository_id/tags/:tag_name
Endpoint de packages Composer au niveau du groupe pour les métadonnées de versions de packageGET /group/:id/-/packages/composer/*package_name
Endpoint de packages Composer au niveau du groupe pour la liste des packagesGET /group/:id/-/packages/composer/p/:sha
Endpoint p2 de packages Composer v2 au niveau du groupe pour les métadonnées de versions de packageGET /group/:id/-/packages/composer/p2/*package_name
Endpoint de packages Composer au niveau du groupeGET /group/:id/-/packages/composer/packages
Endpoint de métadonnées du registre NPMGET /groups/:id/-/packages/npm/*package_name
Télécharger un fichier de package depuis un groupeGET /groups/:id/-/packages/pypi/files/:sha256/*file_identifier
Lister tous les packages d'un groupeGET /groups/:id/-/packages/pypi/simple
Endpoint de package simple PyPi pour les groupesGET /groups/:id/-/packages/pypi/simple/*package_name
Récupérer un job par jeton de jobGET /job
Lister tous les agents GitLab pour Kubernetes par jeton de jobGET /job/allowed_agents
Rechercher des packagesGET /packages/conan/v1/conans/search
Envoyer un ping à l'API ConanGET /packages/conan/v1/ping
Authentifier l'utilisateur auprès de la CLI conanGET /packages/conan/v1/users/authenticate
Vérifier la validité des identifiants utilisateur pour la CLI conanGET /packages/conan/v1/users/check_credentials
Endpoint de métadonnées du registre NPMGET /packages/npm/*package_name
Rechercher des packagesGET /projects/:id/packages/conan/v1/conans/search
Envoyer un ping à l'API ConanGET /projects/:id/packages/conan/v1/ping
Authentifier l'utilisateur auprès de la CLI conanGET /projects/:id/packages/conan/v1/users/authenticate
Vérifier la validité des identifiants utilisateur pour la CLI conanGET /projects/:id/packages/conan/v1/users/check_credentials
Rechercher des packagesGET /projects/:id/packages/conan/v2/conans/search
Authentifier l'utilisateur auprès de la CLI conanGET /projects/:id/packages/conan/v2/users/authenticate
Vérifier la validité des identifiants utilisateur pour la CLI conanGET /projects/:id/packages/conan/v2/users/check_credentials
Lister les dépôts de conteneurs dans un projetGET /projects/:id/registry/repositories
Lister les tags d'un dépôtGET /projects/:id/registry/repositories/:repository_id/tags
Obtenir des détails sur un tag de dépôtGET /projects/:id/registry/repositories/:repository_id/tags/:tag_name
Fait passer une validation de site DAST à un nouvel état.POST /internal/dast/site_validations/:id/transition
Émettre un JWT de courte durée pour une audience de service modulaire uniquePOST /token_exchange