0
Fork 0
mirror of https://github.com/verdaccio/verdaccio.git synced 2025-02-17 23:45:29 -05:00
verdaccio/website/translated_docs/ru-RU/plugins.md

7 KiB
Raw Blame History

id title
plugins Плагины

Verdaccio is a pluggable application. It can be extended in many ways, either new authentication methods, adding endpoints or using a custom storage.

There are 5 types of plugins:

Если вам нужно разработать свой плагин, почитайте секцию разработка.

Использование

Установка

$> npm install --global verdaccio-activedirectory

verdaccio, как форк sinopia, совместим с плагинами для sinopia@1.4.0. Установка таких плагинов - аналогична.

$> npm install --global sinopia-memory

Конфигурация

Откройте файл config.yaml и измените секцию auth так, как указано ниже:

Дефолтная конфигурация выглядит так, потому что мы, по умолчанию, используем встроенный плагин htpasswd, который вы можете отключить, просто закомментировав строчку.

Конфигурирование аутентификации

  htpasswd:
    file: ./htpasswd
    # max_users: 1000

заменяем на (в случае, когда вы решили использовать плагин ldap.

auth:
  activedirectory:
    url: "ldap://10.0.100.1"
    baseDN: 'dc=sample,dc=local'
    domainSuffix: 'sample.local'

Несколько плагинов аутентификации

This is technically possible, making the plugin order important, as the credentials will be resolved in order.

auth:
  htpasswd:
    file: ./htpasswd
    #max_users: 1000
  activedirectory:
    url: "ldap://10.0.100.1"
    baseDN: 'dc=sample,dc=local'
    domainSuffix: 'sample.local'

Конфигурирование middleware

Это пример того, как надо настраивать middleware-плагин. Все middleware-плагины должны быть определены в секции middlewares.

middlewares:
  audit:
    enabled: true

В качестве примера, можно посмотреть на middleware-плагин для audit.

Конфигрирование хранилища

Это пример того, как нужно настраивать плагин хранилища. Все плагины хранилища должны быть определены в секции store.

store:
  memory:
    limit: 1000

Конфигурирование UI темы

Verdaccio позволяет заменить веб-интерфейс, и мы называем это UI темой. По умолчанию, используется @verdaccio/ui-theme, который включен в поставку, но вы можете использовать что-нибудь другое, установив свой плагин.

<br />$> npm install --global verdaccio-theme-dark

Имя плагина должно начинаться с verdaccio-theme, иначе плагин не будет загружен.

You can load only one theme at a time and pass through options if you need it.

theme:
  dark:
    option1: foo
    option2: bar

Устаревшие плагины

Плагины Sinopia

Если вы используете плагин sinopia, помните, что все они - deprecated и могут перестать работать в будущем.

  • sinopia-npm: плагин аутентификации для sinopia, поддерживающий репозиторий npm.
  • sinopia-memory: плагин аутентификации для sinopia, который хранит пользователей в памяти.
  • sinopia-github-oauth-cli.
  • sinopia-crowd: плагин аутентификации для sinopia, для поддержки atlassian crowd.
  • sinopia-activedirectory: плагин аутентификации для sinopia, для поддержки Active Directory.
  • sinopia-github-oauth: плагин аутентификации для sinopia2, для поддержки github oauth web flow.
  • sinopia-delegated-auth: плагин аутентификации для sinopia, который делегирует аутентификацию по другому HTTP URL
  • sinopia-altldap: альтернативный плагин аутентификации для sinopia, для поддержки LDAP
  • sinopia-request: плагин аутентификации для аутентификации через внешнее API.
  • sinopia-htaccess-gpg-email: Генерирует пароль в формате htaccess, шифрует с помощью GPG и посылает его пользователям через MailGun API.
  • sinopia-mongodb: плагин аутентификации, использует mongodb.
  • sinopia-htpasswd: плагин аутентификации для sinopia, поддерживает формат htpasswd.
  • sinopia-leveldb: плагин аутентификации для sinopia, использует leveldb.
  • sinopia-gitlabheres: плагин аутентификации для sinopia, использует Gitlab.
  • sinopia-gitlab: плагин аутентификации для sinopia, использует Gitlab
  • sinopia-ldap: плагин аутентификации для sinopia, использует LDAP.
  • sinopia-github-oauth-env плагин аутентификации для sinopia, использует github oauth web flow.

Все плагины sinopia совместимы со всеми будущими версиями verdaccio. Тем не менее, мы очень хотели бы, чтобы контрибьюторы мигрировали на современный verdaccio API и использовали префикс verdaccio-xx-name.