INTEGRITY Документация

Аутентификация

Artifacts использует отдельный способ аутентификации для каждого интерфейса. Выбирайте способ аутентификации в зависимости от того, как ваш код обращается к репозиторию.

Проверьте Пространства имён сначала, затем используйте одно и то же имя пространства имён во всех интерфейсах.

Сравнение способов аутентификации

Интерфейс Аутентификация через Разрешения или области действия Используйте для
привязка Workers Настроенный artifacts привязка Аутентификация Wrangler предназначена только для локальных команд Wrangler, таких как dev и deploy. Код Worker, который вызывает env.ARTIFACTS
REST API API-токен Cloudflare в Authorization: Bearer ... Артефакты > Чтение для маршрутов чтения и Артефакты > Изменить для маршрутов записи. HTTP-запросы плоскости управления
Протокол Git Токен Artifacts, привязанный к репозиторию read для clone, fetch и pull. write для push. Стандартный Git по HTTPS

API-токены Cloudflare аутентифицируют доступ к плоскости управления. Токены Artifacts с областью действия на репозиторий аутентифицируют доступ к Git.

Аутентификация для привязки Workers

Привязка Workers использует artifacts binding, который вы настраиваете в Wrangler. Код вашего Worker не передаёт токен при вызове env.ARTIFACTS.

Добавьте привязку в конфигурацию Wrangler:

{
  "$schema": "./node_modules/wrangler/config-schema.json",
  "name": "artifacts-worker",
  "main": "src/index.ts",
  // Set this to today's date
  "compatibility_date": "2026-08-28",
  "artifacts": [
    {
      "binding": "ARTIFACTS",
      "namespace": "default"
    }
  ]
}
name = "artifacts-worker"
main = "src/index.ts"
# Set this to today's date
compatibility_date = "2026-08-28"

[[artifacts]]
binding = "ARTIFACTS"
namespace = "default"

Во время выполнения развёрнутые Workers используют настроенную привязку напрямую. Для локальных команд Wrangler, таких как wrangler dev, wrangler deploy, или wrangler types, сначала выполните аутентификацию Wrangler. Подробнее о локальной OAuth аутентификации см. wrangler login. Для CI или headless окружений см. Запуск Wrangler в CI/CD.

Аутентификация для REST API

REST API использует токен API Cloudflare в Authorization заголовок.

export ACCOUNT_ID="<YOUR_ACCOUNT_ID>"
export ARTIFACTS_NAMESPACE="default"
export CLOUDFLARE_API_TOKEN="<YOUR_API_TOKEN>"
export ARTIFACTS_BASE_URL="https://api.cloudflare.com/client/v4/accounts/$ACCOUNT_ID/artifacts/namespaces/$ARTIFACTS_NAMESPACE"

Читайте метаданные репозитория:

curl "$ARTIFACTS_BASE_URL/repos/starter-repo" \
  --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN"

Создайте репозиторий:

curl --request POST "$ARTIFACTS_BASE_URL/repos" \
  --header "Authorization: Bearer $CLOUDFLARE_API_TOKEN" \
  --header "Content-Type: application/json" \
  --data '{
    "name": "starter-repo"
  }'

Аутентификация для протокола Git

Git использует токены Artifacts, привязанные к репозиторию, а не токены Cloudflare API. Выпускайте такие токены через привязку Workers или REST API, а затем используйте их с репозиторием remote URL.

Область действия токена Разрешённые команды
read git clone, git fetch, git pull
write git clone, git fetch, git pull, git push

Используйте точное имя репозитория remote значение, возвращаемое привязкой Workers или REST API:

export ARTIFACTS_REMOTE="<PASTE_REMOTE_FROM_CREATE_OR_GET_RESPONSE>"

Используйте токен на чтение для клонирования:

git -c http.extraHeader="Authorization: Bearer <YOUR_READ_TOKEN>" clone "$ARTIFACTS_REMOTE" artifacts-clone

Используйте токен на запись для push:

git -c http.extraHeader="Authorization: Bearer <YOUR_WRITE_TOKEN>" push "$ARTIFACTS_REMOTE" HEAD:main

Дополнительную информацию об обработке токенов и аутентифицированных удалённых репозиториях см. в Протокол Git.