Šis ir vēl viens post manu sērija turpinās par to, kā izmantot jQuery ar SharePoint.
Ja vēlaties uzzināt vairāk par jQuery, Es ļoti ieteiktu: jQuery darbībā Lācis Bibeault un Jehuda Katz.
Viena no pirmajām lietām, es domāju, ka, kad es sāku spēlēt aptuveni ar jQuery, bija, vai mēs varētu to izmantot lai nodrošinātu SharePoint skatu. Atbilde ir "nē" (vai vismaz, Es esmu apgalvojot, iespējams). Tomēr, tas ir pilnīgi iespējams, apgrūtina cilvēkiem redzēt noteiktā skatā.
Es sāku ar manu sandbox vidi, strādājot šajā. Es rakstīja par to, ka vide šeit: Ātri un viegli: Your Own jQuery Sandbox izveidot SharePoint.
"Nodrošināt" skats, rīkojieties šādi:
- Izveidot skatu, kurā vēlaties nodrošināt. Tā, ka, un nosauca to "View nodrošinātas".
Tas ir kā tas izskatās, kad tas ir nevis "drošs":
- Skatīt lapu, izmantojot sandbox rakstā aprakstītie triks pievienot satura redaktora web daļu (ti. pievienot "PageView = koplietojamo&ToolPaneView = "2" URL).
- Izrēķināt SharePoint _spUserId traks šādi, Ticiet vai ne:
- Piesakieties savā vidē SharePoint.
- Web pārlūkprogrammas adreses laukā, tips: "javascript:brīdinājums(_spUserId").
- Rezultātu ieraksta (tas ir manā gadījumā "13").
- Pievienot šādu javascript jūsu CEWP koda skatā:
<skripta tips ="text/javascript"
src =".. /.. /jQuery Library/jQuery-1.3.2.min.js">
</skriptu>
<skripta tips ="text/javascript">
$(funkcija() {
brīdinājums(_spUserId);
var theSecuredView = $("iframe[FilterLink * = nodrošināto % 20View]');
Ja ((theSecuredView.length > 0) && (_spUserId = = 13))
$("iframe[FilterLink * = nodrošināto % 20View]').mātes().mātes().mātes().HTML("<TR bgcolor = red><TD>Jums neviens skats!</TD></TR>");
});
</skriptu>
|
Esam iekļāvuši šo brīdinājumu(_spUserId) līniju tur pierādīt, kā tas nav īsti "nodrošināšana" skats, bet vienkārši, padarot to grūtāk redzēt. Vairāk par to, ka vienā mirklī.
Būtībā, jQuery ir meklējat iFrame lapā, kas ir raksturlielums, kas satur "Secured % 20View" tā vērtību. Pēc tam, kad tā konstatē, ka, mēs pārbaudīt, ja pašreizējais lietotājs ir "13". Ja tas ir, mēs uzkāpjam uz DOM <TR> tagu (ko es sapratu, skatot avots un izsekot to) un tad aizstājot TR atzīmi ar manu ziņu. Es tiešām nezinu, cik spēcīgs tas ir (Es esmu ļoti aizdomīgs, patiesībā), bet tas strādājis manā smilšu kastē. Ja es atrastu labāku veidu, kā, Es blogu par to. Tas ir rezultāts:
I click OK pogu un datus aizstāj ar lielu sarkanu ziņojumu:
Kā jūs varat pateikt, veids, kā es esmu īstenot šo "drošība" risinājums ir web daļu, lai padarītu sevi ļaut. Pēc tās beigām, Es pārrakstīs tās saturu ar "nav Manuprāt jums!"ziņa.
Neskatoties uz to, ka tas nav īsti "drošu" "skatu, tas ir potenciāli noderīgs un ar kādu gudru darbu, galu galā var aizsargājamam formālāku nozīmē. Būtisks jautājums ir klients ir panākt, lai visiem datiem un pēc tam, tikai pēc tam, kad tā saņem datus, tas padara to neiespējamu. Ja klients ir iegūt datus, gudrs lietotājs var jQuery neļautu palaist vispār un redzēt, ko viņš/viņa grib redzēt.
Ir citi trūkumi. Šī "drošības" pieeja ir balstīta nost _spUserId. Mēs vēlamies īsti droši, pamatojoties uz pilnu SharePoint drošības modeli, vai vismaz pēc lietotājvārda. Kas kļūst pakāpeniski grūtāk, bet es redzu dažas labas sīkumi, kas ir rakstīts šajā jautājumā, tāpēc es esmu cer, ka tur ir laba atbilde uz šo problēmu.
Sarakstu skatus, paši būtu apgrieztām, Ja iespējams. Neesmu mēģinājis izdomāt, kas. Pieņemu, ka tas ir iespējams, bet tiešām neatrisina fundamentālo drošības jautājums, tāpēc, ka kāds varētu vēl tikai ievadiet vietrādi URL, kas uzskata, viņi vēlas (Ja viņi zināja, ka tā). Tomēr, griezums ir jēga. Tas ir labu lietojamību iezīme, un tas palīdz aptumšot lietas. Ja gala lietotājs nezina notikumu skats pastāv, viņi droši vien paradis cenšas to izmantot. Dažreiz, tas ir pietiekami labs.
Luck, Es ņemšu vairāk rakstīt par šo tēmu laika gaitā.
</beigās>
Abonēt manu blogu.
Sekot mani uz čivināt pie http://www.twitter.com/pagalvin