Как работает аутентификация maven?

Я готов создать частный репозиторий Maven, в котором правила доступа основаны не на группах / шаблонах, а на полностью пользовательских правилах. Я проверил как nexus, так и jfrog, оба придерживались простого подхода пользователь / группа / шаблон. И (AFAICS), хотя они предоставляют пользовательские способы аутентификации, они не предоставляют пользовательские правила доступа.

По этой причине я начал думать об обратном: что, если я смогу создать простой репозиторий со своими пользовательскими правилами. Но когда я искал в документации Apache, не было четкого объяснения, как выполняется аутентификация на обратной стороне.

Кто-нибудь знает, как это делается, и, возможно, указывает мне на правильную документацию?

2 ответа

Решение

Аутентификация выполняется с помощью базовой HTTP-аутентификации, которая в основном объединяет имя пользователя и пароль, а base64 это кодирует. Итак, Maven и Apache действительно понимают друг друга.

Но из коробки, как вы уже догадались, авторизация Apache основана на ней. Каталоги (которые представляют группы артефактов Maven), имя пользователя и группы. Поэтому, если вы не захотите написать собственную модель Apache, вы не получите много. Вероятно, управление доступом на основе IP может быть выполнено с помощью Apache лучше, чем с Nexus/JFrog, но я давно не смотрел на параметры аутентификации.

В Artifactory для достижения того, что вы упомянули, вы можете создать цель разрешения для каждого пользователя. Это означает, что все ваши пользователи Maven будут развертываться в одном и том же хранилище, НО каждый в отдельном пространстве имен. Например, 'com / {company} / {project} /' (замените компанию и проект реальными значениями)

Это делается для цели разрешения с использованием "Включить шаблон", поэтому предположим, что моя компания называется JFrog, и я работаю над проектом под названием "Артефакт". У меня будет цель разрешения со следующим шаблоном включения / com / jfrog / Artifactory/**/*".

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

Это означает, что я смогу добраться только до этого пространства имен. Это помогает?

Другие вопросы по тегам