Сравнение версий

Ключ

  • Эта строка добавлена.
  • Эта строка удалена.
  • Formatting was changed.

...

Сервер Архива предлагает API веб-служб. API обеспечивает программный доступ ко многим функциям продукта; в том числе: проведение поиска, извлечение и импорт данных, обход структур папок, отправка данных, управление тегами и удержаниями. В приведенном ниже руководстве приведены практические примеры того, как запрашивать и извлекать данные с сервера. Кроме того, в нем описывается, как создать интерфейс клиента на выбранном языке программирования и получить доступ к полной документации REST API.

Обязательные требования

  • Пользователь должен быть создан в Архива/AD/LDAP для доступа к API.
  • Пользователю должна быть назначена роль с минимальным разрешением web services и view status. 
  • Пользователю должны быть назначены разрешения, связанные с вызываемой функцией API.
  • Если планируется выполнение функции поиска убедитесь, что роль, назначенная пользователю, имеет пустой или соответствующий фильтр.
  • При вызове API заголовок HTTP Authorization должен быть установлен следующим образом:
Code Block
base64(APPLICATION+":"+USERNAME+":"+PASSWORD). For example, base64(ROOT:user:test)
curl --header "Authorization: Uk9PVDphZG1pbjp0ZXN0"

Безопасность

...

Как сгенерировать ключ API

Войдите в веб-консоль Архива как администратор. В разделе Настройка->Авторизация установите флажок Разрешить доступ к API и нажмите кнопку Генерировать, чтобы сгенерировать ключ API.

Обратите внимание на команду curl для выполнения базового поиска через REST API.

Image Added

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

Как только сервер будет установлен, посетите http://localhost:8090/api-docs для получения дальнейших инструкций о том, как использовать API. В качестве альтернативы, посетите https://demo.archiva.ru/api-docs чтобы ознакомиться с документацией.

Безопасность

  • Для защиты от прослушивания сети убедитесь, что консоль защищена с помощью HTTPS.
  • При трех последовательных попытках неудачной авторизации сервер будет отклонять все попытки проверки подлинности для одного и того же пользователя в течение длительного периода времени. Кроме того, при каждой неправильной попытке сервер не будет отвечать двадцать секунд.

REST API

Генерация хеша заголовка авторизации

Code Block
printf %s 'ROOT:admin:test' | base64
output: Uk9PVDphZG1pbjp0ZXN0

Где ROOT - имя приложения для On Premise версий, admin - имя пользователя, test - пароль. 

Для выполнения базового поиска:

...

Info

Чтобы избежать ошибки , перед отправкой swagger.json в Редакторе Swagger откройте файл с помощью текстового редактора и укажите имя хоста API в записи хоста.

"host""host": : "archiva.company.local""archiva.company.local",,

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

Для удобства, в каждый дистрибутив мы включили автоматически обновляемую документацию. Документацию можно запустить открыв файл server/ws/index.html.