Téigh ar aghaidh chuig an bpríomhábhar
Leagan: 6.x

Rochtain Pacáiste

Is sraith srianta é seo a cheadaíonn nó a shrianann rochtain ar an stór áitiúil bunaithe ar chritéir shonracha.

Fanann na srianta slándála ar ghuaillí an bhreiseáin atá á úsáid, de réir réamhshocraithe úsáideann verdaccio an breiseán htpasswd. Má úsáideann tú breiseán eile d'fhéadfadh an t-iompar a bheith difriúil. Ní láimhseálann an breiseán réamhshocraithe allow_access agus allow_publish leis féin, úsáideann sé aisfhilleadh inmheánach ar eagla nach bhfuil an breiseán réidh dó.

Chun tuilleadh eolais a fháil faoi cheadanna tabhair cuairt ar an rannán fíordheimhnithe sa vicí.

Úsáid

packages:
# scoped packages
'@scope/*':
access: $all
publish: $all
proxy: server2

'private-*':
access: $all
publish: $all
proxy: uplink1

'**':
# allow all users (including non-authenticated users) to read and
# publish all packages
access: $all
publish: $all
proxy: uplink2

mura bhfuil aon cheann sonraithe, fanann an ceann réamhshocraithe

packages:
'**':
access: $all
publish: $authenticated

Is iad seo a leanas na grúpaí inmheánacha a láimhseálann verdaccio:

'$all', '$anonymous', '@all', '@anonymous', 'all', 'undefined', 'anonymous';

Faigheann gach úsáideoir na ceadanna sin go léir go neamhspleách nó nach bhfuil móide na grúpaí a sholáthraíonn an breiseán, ar eagla htpasswd an t-ainm úsáideora a thabhairt ar ais mar ghrúpa. Mar shampla, má tá tú logáilte mar npmUser beidh liosta na ngrúpaí ann.

// ní dhéanfar grúpaí gan '$' a mholadh sa deireadh
'$all', '$anonymous', '@all', '@anonymous', 'all', 'undefined', 'anonymous', 'npmUser';

Más mian leat pacáistí socraithe ar leith a chosaint faoi do ghrúpa, ní mór duit rud éigin mar seo a dhéanamh. Úsáidfimid Regex a chlúdaíonn gach pacáiste réamhshocruithe npmuser-. Molaimid réimír a úsáid le haghaidh do phacáistí, ar an mbealach sin beidh sé níos éasca iad a chosaint.

packages:
'npmuser-*':
access: npmuser
publish: npmuser

Atosaigh verdaccio agus i do chonsól déan iarracht npmuser-core a shuiteáil.

$ npm install npmuser-core
npm install npmuser-core
npm ERR! code E403
npm ERR! 403 Forbidden: npmuser-core@latest

npm ERR! A complete log of this run can be found in:
npm ERR! /Users/user/.npm/_logs/2017-07-02T12_20_14_834Z-debug.log

Is féidir leat an t-iompar reatha a athrú trí úsáid a bhaint as fíordheimhniú breiseán eile. Ní dhéanfaidh verdaccio ach seiceáil an mbaineann an t-úsáideoir a rinne iarracht rochtain a fháil ar phacáiste ar leith nó a fhoilsiú leis an ngrúpa ceart.

Note: Since npm 7.10, the config option always-auth has no effect. You can safely remove it from your configuration.

Socraigh grúpaí iolracha

Tá sé éasca go leor grúpaí rochtana iolracha a shainiú, níl le déanamh ach iad a shainiú le spás bán eatarthu.

'company-*':
access: admin internal
publish: admin
proxy: server1
'supersecret-*':
access: secret super-secret-area ultra-secret-area
publish: secret ultra-secret-area
proxy: server1

Rochtain ar thacar pacáistí a bhlocáil

Más mian leat an rochtain a bhlocáil/foilsigh chuig grúpa sonrach pacáistí. Ná sainmhínigh rochtain agus foilsigh.

packages:
'old-*':
'**':
access: $all
publish: $authenticated

Seachfhreastalaí a bhlocáil sraith de phacáistí ar leith

B'fhéidir gur mhaith leat pacáiste amháin nó níos mó a bhacadh ó fháil ó chianstórtha., ach, ag an am céanna, lig do dhaoine eile rochtain a fháil ar naisc uasghrádaithe éagsúla.

Feicfimid an sampla seo a leanas:

packages:
'jquery':
access: $all
publish: $all
'my-company-*':
access: $all
publish: $authenticated
'@my-local-scope/*':
access: $all
publish: $authenticated
'**':
access: $all
publish: $authenticated
proxy: npmjs

Déanaimis cur síos ar cad ba mhaith linn leis an sampla thuas:

  • Ba mhaith liom mo spleáchas jquery féin a óstáil ach ní mór dom seachfhreastalaí a sheachaint.
  • Teastaíonn uaim gach spleáchas a mheaitseálann le mo chuideachta-* ach ní mór dom seachfhreastalaí a sheachaint.
  • Teastaíonn uaim gach spleáchas atá laistigh den scóip my-local-scope ach ní mór dom seachfhreastalaí a sheachaint.
  • Ba mhaith liom seachfhreastalaí don chuid eile de na spleáchais ar fad.

ar an eolas go bhfuil ord sainmhínithe do phacáistí tábhachtach agus úsáid wilcard dúbailte i gcónaí. Mar mura gcuireann tú é san áireamh cuirfidh verdaccio é san áireamh duit agus cuirfear isteach ar an mbealach a réitítear do spleáchais.

Féadfaidh tú níos mó ná naisc iolracha a shannadh lena n-úsáid mar sheachvótálaí le húsáid i gcás teipe, nó i gcás ina bhféadfadh clárlanna príobháideacha eile a bheith in úsáid.

'**':
access: $all
publish: $authenticated
proxy: npmjs uplink2

Pacáistí a Dhífhoilsiú

Láimhseálann an mhaoin foilsigh ceadanna le haghaidh npm publish agus npm unpublic. Ach, más mian leat a bheith níos sainiúla, is féidir leat an mhaoin a úsáid dífhoilsiú i do rannán rochtana pacáiste, mar shampla:

packages:
'jquery':
access: $all
publish: $all
unpublish: root
'my-company-*':
access: $all
publish: $authenticated
unpublish:
'@my-local-scope/*':
access: $all
publish: $authenticated
# unpublish: property commented out
'**':
access: $all
publish: $authenticated
proxy: npmjs

Sa sampla roimhe seo, chuirfí síos ar an iompar:

  • is féidir le gach úsáideoir an pacáiste jquery a fhoilsiú, ach ní bheadh ​​ach an t-úsáideoir root in ann leagan ar bith a dhífhoilsiú.
  • ní féidir ach le húsáideoirí fíordheimhnithe pacáistí mo chuideachta-* a fhoilsiú, ach ní bheadh ​​cead ag aon duine iad a dhífhoilsiú.
  • Má dhéantar trácht ar dífhoilsiú, deonófar nó diúltófar don rochtain faoin sainmhíniú foilsigh.

Cumraíocht

Is féidir leat pacáistí iolracha a shainiú agus ní mór Regex uathúil a bheith ag gach ceann acu. Tá an chomhréir bunaithe ar sloinn glob íosta.

MaoinCineálAg teastáilSamplaTacaíochtCur síos
accessstringNíl$allgo léirgrúpaí a bhfuil cead acu rochtain a fháil ar an bpacáiste a shainiú
publishstringNíl$authenticatedgo léirgrúpaí a bhfuil cead acu foilsiú a shainiú
unpublishstringNíl$authenticatedgo léirdefine groups allowed to unpublish
proxystringNílnpmjsgo léirteorainn le breathnú suas le haghaidh nasc sonrach
storagestringNílstring/some-foldercruthaíonn sé fofhillteán laistigh den fhillteán stórála do gach rochtain pacáiste

Aibhsíonn muid go molaimid gan allow_access/allow_publish agus proxy_access a úsáid a thuilleadh, tá siad siúd i léig agus bainfear iad gan mhoill, bain úsáid as an leagan gearr de gach ceann díobh sin (rochtain/foilsigh/seachfhreastalaí).

Más mian leat tuilleadh eolais a fháil faoi conas an t-airí stórála a úsáid, déan tagairt don trácht seo le do thoil.