Daingniú SharePoint Liosta / Doiciméad Leabharlann Tuairimí Dealraíonn (saghas) Is féidir le jQuery

Tá an post seo ceann eile i mo ar siúl go leanúnach sraith ar conas é a úsáid jQuery le SharePoint.
Más mian leat níos mó eolas faoi jQuery fhoghlaim, Molaim go mór: jQuery i nGníomh ag Bear Bibeault agus Yehuda Katz.

Ceann de na rudaí chéad shíl mé, nuair a thosaigh mé a imirt ar fud le jQuery, was whether we could use it to secure a SharePoint view. The answer is “no” (nó ar a laghad, Níl mé ag éileamh tá sé indéanta). Mar sin féin, it is certainly possible to make it difficult for people to see a particular view.

Thosaigh mé le mo thimpeallacht bosca gainimh agus iad ag obair ar an. Scríobh mé faoi sin timpeallacht anseo: Tapaidh agus éasca: Cruthaigh Do Bosca Gainimh jQuery Féin do SharePoint.

Chun a chinntiú "" d'fhonn, Lean na céimeanna seo:

  1. Cruthaigh amharc is mian leat a dhaingniú. Rinne mé sin agus d'iarr sé "Amharc Faighte".

    Tá sé seo cad tá sé cosúil nuair nach bhfuil sé "urraithe":

    image

  2. Cuir ábhar mar chuid gréasáin eagarthóir ar leathanach an amhairc ag baint úsáide as an cleas a thuairiscítear i an t-alt bosca gainimh (i.e. cuir "PageView = Roinnte&ToolPaneView = 2 "chun an URL).
  3. Figiúr amach do _spUserId SharePoint méid seo a leanas na céimeanna dÚsachtach, Creidim nó nach:
    1. Logáil isteach i do timpeallacht SharePoint.
    2. Sa bhrabhsálaí gréasáin seoladh allamuigh, cineál: "Javascript:chur ar an eolas(_spUserId ").
    3. Taifead an toradh (tá sé "13" i mo chás).

      image

  4. Cuir an javascript a leanas le do CEWP i bhfianaise cód:

    <script
        "text/javascript"
        src ="../../jQuery Library/jquery-1.3.2.min.js">
    </script>
    
    <Cineál script ="text/javascript">
      $(fheidhm() {
    
        chur ar an eolas(_spUserId);
    
        Bhí theSecuredView = $('Iframe[FilterLink * = 20View% Faighte]');
    
        más rud é ((theSecuredView.length > 0) && (_spUserId == 13))
          $('Iframe[FilterLink * = 20View% Faighte]').tuismitheoir().tuismitheoir().tuismitheoir().html("<tr bgcolor = dearg><td>Uimh dearcadh ar do shon!</td></tr>");
      });
    
    </script>
    

Tá mé san áireamh go foláirimh(_spUserId) líne in ann a léiriú conas nach bhfuil sé seo i ndáiríre "dhaingniú" d'fhonn, ach go simplí a dhéanamh níos deacra a fheiceáil. Breis faoi sin i láthair.

Go bunúsach, jQuery ag lorg ar iframe ar an leathanach a bhfuil tréith go bhfuil "% 20View Faighte" ina luach. Chomh luath agus a fhaigheann sé é, táimid ag seiceáil a fheiceáil má tá an t-úsáideoir atá ann faoi láthair "13". Má tá sé, muid ag siúl suas an DOM le <TR> tag (a figured mé amach ag breathnú foinse agus a rianú) agus ansin a ionaid chlib TR le mo theachtaireacht. I ndáiríre ní a fhios conas láidir é seo (Tá mé an-amhrasach, i ndáiríre), ach d'oibrigh sé i mo bosca gainimh. If I find a better way, Feicfidh mé blag faoi. Is é seo an toradh:

image

Mé cliceáil ar an cnaipe OK agus tá na sonraí in ionad le teachtaireacht mór dearg:

image

Mar is féidir leat insint, the way I’ve implement this “security” solution is to allow the web part to render itself. After it finishes, I fhorscríobh a ábhar le mo "Níl aon dearcadh ar do shon!"Teachtaireacht.

In ainneoin an bhfíric go bhfuil sé i ndáiríre ar "urraithe" "fhonn, tá sé d'fhéadfadh a bheith úsáideach agus le roinnt oibre cliste, it may eventually be securable in a more formal sense. The fundamental issue is that the client is getting all the data and then, ach amháin tar éis a fhaigheann sé na sonraí, it wipes it out. If the client is getting the data, is féidir le úsáideoir cliste cosc ​​a chur ar an jQuery ó reáchtáil ar chor ar bith agus a fheiceáil cad ba mhaith aige / aici a fheiceáil.

There are other drawbacks. This “security” approach is based off a _spUserId. We’d want to really secure based on the full SharePoint security model, or at least by user name. That becomes progressively harder, ach féach mé roinnt rudaí maith scríofa ar an ábhar seo, mar sin tá mé dóchasach níl freagra maith leis an fhadhb.

An liosta de na tuairimí sin ba cheart iad féin a bhearradh, más féidir. I haven’t tried to figure that out. I assume it’s possible, ach ní réiteach i ndáiríre an cheist slándála bunúsach toisc go bhféadfadh duine éigin fós ach cineál an URL den tuairim mian leo (dá mbeadh a fhios acu é). Mar sin féin, trimming makes sense. It’s a good usability feature and it helps to obfuscate things. If an end user doesn’t know that the view event exists, they probably won’t try to use it. Uaireanta, go maith go leor.

Le luck, Beidh mé a bheith níos mó a scríobh ar an ábhar seo le himeacht ama.

</deireadh>

Liostáil le mo bhlag.

Lean mé ar Twitter ag http://www.twitter.com/pagalvin

Leave a Reply

Ní thabharfar do sheoladh r-phoist a fhoilsiú. Réimsí riachtanacha atá marcáilte *