Skip to main content

Yêu cầu xác thực

The authentication is tied to the auth plugin you are using. The package restrictions are also handled by the Package Access.

The client authentication is handled by the npm client itself. Once you log in to the application:

npm adduser --registry http://localhost:4873

A token is generated in the npm configuration file hosted in your user home folder. For more information about .npmrc read the official documentation.

cat .npmrc

Gói phát hành ẩn danh

verdaccio allows you to enable anonymous publish. To achieve that you will need to correctly set up your packages access.

Ví dụ:

access: $anonymous
publish: $anonymous
proxy: npmjs

Như đã giải thích trong phần issue #212, kể từ phiên bản npm@5.3.0 và trong tất cả các phiên bản phụ khác ** bạn sẽ không được phép xuất bản gói mà không có một token nào**.

Understanding Groups

The meaning of $all and $anonymous

As you know Verdaccio uses htpasswd by default. That plugin does not implement the methods allow_access, allow_publish and allow_unpublish. Thus, Verdaccio will handle that in the following way:

  • If you are not logged in (you are anonymous), $all and $anonymous means exactly the same.
  • If you are logged in, $anonymous won't be part of your groups and $all will match any logged user. A new group $authenticated will be added to your group list.

As a takeaway, $all will match all users, independently whether is logged or not.

The previous behavior only applies to the default authentication plugin. If you are using a custom plugin and such plugin implements allow_access, allow_publish or allow_unpublish, the resolution of the access depends on the plugin itself. Verdaccio will only set the default groups.

Let's recap:

  • logged: $all, $authenticated, + groups added by the plugin
  • anonymous (logged out): $all and $anonymous.

Tự động tạo tập tin htpasswd

In order to simplify the setup, verdaccio uses a plugin based on htpasswd. Since version v3.0.x the verdaccio-htpasswd plugin is used by default.

file: ./htpasswd
# Maximum amount of users allowed to register, defaults to "+inf".
# You can set this to -1 to disable registration.
#max_users: 1000
Thuộc tínhPhương thứcYêu cầuVí dụHỗ trợMiêu tả
tập tinchuỗi./htpasswdtất cảtập tin lưu trữ các thông tin đã được mã hóa
max_userssốKhông1000tất cảgiới hạn người dùng

Trường hợp bạn không muốn người dùng đăng nhập, bạn cài đặt max_users: -1.