Gineadóir Haise SRI
Gin hashanna Subresource Integrity (SRI) sha384 do chomhad JavaScript nó CSS agus cóipeáil na tréithe integrity agus crossorigin réidh, go háitiúil.
Greamaigh ábhar an chomhaid nó oscail an comhad féin: ní íoslódálann an uirlis seo URLanna. Dá léifeadh sí script ó shuíomh eile, bheadh cead ag an bhfreastalaí sin (CORS) nó freastalaí dár gcuid féin chun é a fháil duit, agus ní fhágann aon rud a dhéanann tú hasháil air anseo do bhrabhsálaí. Déan hasháil ar an gcomhad cruinn a sheirbhísíonn tú.
Hashálaítear an téacs mar UTF-8. Athraíonn brabhsálaithe deirí líne Windows (CRLF) go LF i dtéacs greamaithe, agus briseann beart athraithe amháin an hais: oscail an comhad féin i gcás amhrais.
Ní scríobhtar an URL ach isteach sa bhlúirín, ní iarrtar riamh é. Fág folamh é chun ainm an chomhaid a úsáid.
Conas hais SRI a ghiniúint
- Faoi Hais, roghnaigh Cód greamaithe nó Comhaid.
- Greamaigh ábhar cruinn an scripte nó na bileoige stíle isteach in Ábhar scripte nó bileog stíle agus brúigh Gin hais SRI, nó scaoil comhad
.jsagus.cssamháin nó níos mó ar an limistéar scaoilte. Nuashonraítear na hashanna agus tú ag clóscríobh. - Fág SHA-384 (molta) ticeáilte, nó cuir SHA-256 agus SHA-512 leis. Cuireann gach algartam ticeáilte comhartha amháin leis an luach.
- Roghnaigh an Clib (uathoibríoch ó ainm an chomhaid,
<script>,<script type="module">nó<link rel="stylesheet">), clóscríobh URL an acmhainne don bhlúirín (roghnach) agus roghnaigh an módcrossorigin. - Cóipeáil an luach integrity nó an chlib iomlán.
- Chun clib a úsáideann tú cheana a sheiceáil, greamaigh a luach nó an chlib iomlán in Seiceáil luach integrity atá ann cheana (roghnach).
Cad a dhéanann Subresource Integrity
Nuair a luchtaíonn leathanach script ó CDN, tá muinín ag an mbrabhsálaí as pé rud a sheoltar ar ais ón bhfreastalaí sin. Má tá an CDN i mbaol nó má athraítear an comhad, ritheann an cód athraithe le rochtain iomlán ar do leathanach. Dúnann Subresource Integrity (W3C SRI) an bhearna sin: foilsíonn tú hais ionchasach an chomhaid sa tréith integrity, déanann an brabhsálaí hasháil ar an méid a íoslódálann sé, agus diúltaíonn sé an script a rith nó an bhileog stíle a chur i bhfeidhm má tá difríocht eatarthu.
<script src="https://cdn.example.com/lib.min.js"
integrity="sha384-H8BRh8j48O9oYatfu5AZzq6A9RINhZO5H16dQZngK7T62em8MUt1FLm52t+eX6xO"
crossorigin="anonymous"></script>
Is é an luach ainm an algartaim, fleiscín agus díolaim Base64 de bheartanna an chomhaid. Is é an sampla sin hais alert('Hello, world.'); ó shonraíocht SRI. Nuair a liostaítear roinnt hashanna, ní fhéachann brabhsálaithe ach ar an algartam is láidre atá ann agus glacann siad leis an gcomhad má mheaitseálann aon hais den algartam sin. Sin an chaoi ar féidir le suíomh dhá leagan comhaid a liostú le linn scaoileadh.
Cén fáth a bhfuil crossorigin riachtanach
I gcás comhaid ar bhunús eile, ní féidir leis an mbrabhsálaí a sláine a sheiceáil ach má fhaightear an freagra i mód CORS, mar sin teastaíonn tréith crossorigin ón gclib agus ní mór don fhreastalaí freagra a thabhairt le ceanntásc Access-Control-Allow-Origin. Úsáid anonymous (gan fianáin) le haghaidh CDNanna poiblí; is le haghaidh acmhainní príobháideacha annamha atá use-credentials. Gan CORS, blocálann an brabhsálaí an comhad in ionad é a luchtú gan seiceáil.
Cén fáth nach bhfaigheann an uirlis seo URLanna
Ní dhéanann an uirlis seo hasháil ach ar chód a ghreamaíonn tú nó ar chomhaid a osclaíonn tú. Ní oibreodh script a íoslódáil óna URL laistigh den leathanach ach amháin má cheadaíonn an freastalaí sin léamh trasbhunaithe, agus b’éigean freastalaí a úsáid chun an comhad a fháil duit chun é sin a sheachaint, rud a d’fheicfeadh an méid a dhéanann tú hashú air. Ritheann gach rud anseo i do bhrabhsálaí. Is é an modh is simplí ná an comhad cruinn a thabharfaidh tú le tagairt dó a íoslódáil (an leagan céanna agus an tógáil mhionaithe chéanna) agus é a oscailt anseo.
Ceisteanna coitianta
Cén algartam ba cheart dom a úsáid?
Is é SHA-384 an gnáthrogha agus an rud a fhoilsíonn formhór na gCDNanna. Tacaíonn gach brabhsálaí nua-aimseartha le SHA-256 agus SHA-512 freisin. Ní cheadaítear MD5 ná SHA-1 in SRI.
Tá mo hais ceart ach blocálann an brabhsálaí an comhad fós. Cén fáth?
Seiceáil go seolann an freastalaí Access-Control-Allow-Origin agus go bhfuil crossorigin ar an gclib. Cinntigh freisin go seirbhísíonn an CDN na bearta céanna: athraíonn leagan difriúil, mionaitheoir uathoibríoch nó briseadh líne deiridh ar iarraidh an hais.
Cén fáth a dtugann mo chód greamaithe hais dhifriúil ón gcomhad?
Iompaíonn brabhsálaithe deirí líne Windows (CRLF) go LF i réimsí téacs, agus féadfaidh eagarthóir marc ordaithe bhirt nó líne nua dheiridh a chur leis nó a bhaint. Oscail an comhad féin chun hashú ar a bheartanna cruinne.
An bhfuil SRI ag teastáil uaim do chomhaid ar mo fhearann féin?
Cosnaíonn sé i gcoinne athruithe a rinneadh tar éis duit an hais a ríomh, mar sin is tábhachtaí é do óstaigh tríú páirtí. I gcás do chomhaid féin, is minic a bhíonn bundlálaí a ghineann na hashanna ag am tógála níos éasca.
An n-oibríonn SRI d'íomhánna nó cló?
Tacaítear leis an tréith integrity ar <script> agus <link rel="stylesheet"> (agus ar <link rel="preload"> nó modulepreload don cheann seo). Ní féidir le híomhánna ná cló é a úsáid.
Uirlisí gaolmhara
- Gineadóir Haiseanna Gin haiseanna MD5, SHA-1, SHA-256 agus SHA-512 de théacs nó de chomhaid d'aon mhéid, agus fíoraigh sumaí seiceála. Ritheann gach rud i do bhrabhsálaí.
- Ionchódóir agus Díchódóir Base64 Ionchódóir agus díchódóir Base64 saor in aisce le tacaíocht iomlán UTF-8 agus rogha base64url. Oibríonn sé i do bhrabhsálaí amháin, ní uaslódáiltear aon rud.
- Amharcán Comhad HAR Oscail comhad .har i do bhrabhsálaí chun iarratais, ceanntásca, fianáin agus eas a iniúchadh, ansin díghalraigh é sula roinneann tú é. Ní uaslódáiltear aon rud.