Biztonsági token feldolgozása felépítmények az alacsony bizalom sharepoint helyezzük
A legtöbb esetben, akkor nem használhatja az egyszerű kifejezések, mint AccessToken, mint a cache kulcs, mint a felépítmény szükséges tárolni egyedi jelzőt minden felhasználó és SharePoint farm vagy az ügyfél területen. Ha az add-in használ keretében token patak. SharePoint egy speciális kulcs CacheKey. amelynek segítségével megkülönböztetni gyorstárazott markerek. Ez a rész leírja azokat a problémákat, és hogyan lehet megoldani őket, ha a bővítmény nem használja a helyi token patak.
Gyorstárazott hozzáférési token a munkamenet állapotban a legtöbb helyzetben. Ha a távoli web-alapú alkalmazás hozzáfér az egyéb szolgáltatásokat használó OAuth protokoll (amellett, hogy a SharePoint), és a különböző cache biztonsági tokenek ülésezett állapotban, különböző cache kulcsokat a markerek. Például, ahelyett, hogy a AccessToken SharePoint_AccessToken, Facebook_AccessToken, SAP_Gateway_AccessToken. (Ha nem használja a munkamenet-állapotot, vagy más módon a caching, ami automatikusan elosztja a cache az összes felhasználó is meg kell, hogy kapcsolódnak a kulcsokat minden felhasználó számára.)
Az alkalmazás hozzáférhet több SharePoint gazdaságok vagy ügyfél-nak. Ebben az esetben használja a SharePoint tartomány részeként elsődleges kulcs alkalmazás-gyorsítótár ( „SharePoint_<мой_домен> .sharepoint.com_AccessToken „), vagy a terület a gazdaság vagy az ügyfél (” SharePoint_
Ha mezhseansovy gyorsítótárat használ, szintén több alkalmazás, cache kulcsokat kell korrelál alkalmazások, a felhasználók és a SharePoint munkaterületek. Kulcsgyorsítótárban keretében nyújtott a token egyedi minden alkalmazás, felhasználói és SharePoint munkaterületek.
Végül, ha a bővítmény futó SharePoint vitatja mindkét teszt alkalmazás engedélyeinek és ellenőrzése felhasználói jogosultságokat, és kiegészítőket, akkor két különböző hozzáférési tokent. Ezért szükség van a különböző kulcsok cache. Határozza meg a fő cache gombot, adja hozzá a "_add-in-only" (Csak add-in) vagy "_add-in + user" (felépítmény és a felhasználó).
Tartsa a token egy süti nem biztonságos. Sokkal jobb, hogy elkerüljék az átviteli hozzáférési token a böngésző.
Transzfer a hozzáférési token szerver rendszerek
Feldolgozás token lejárt
Példák hozzáférési token
Politika a felhasználó és bővítmények
Terület SharePoint - GUID SharePoint Online ügyfélszolgálat területén, illetve a helyi SharePoint farm hozzáférési egy hozzáférési tokent. Ez egyfajta GUID azonosító mezőt jelölő kiadó, ebben az esetben - Azure ACS szolgáltatást.
Rövid a „kibocsátó” (kiadó). Ez egy olyan téma, amely megteremtette a jelzőt. Formátum: GUID kiadója @ GUID SharePoint régióban.
Egy egyedi felhasználói azonosítót, amelyre a token felszabadul. A méret függ a személyazonosság-szolgáltató. Ebben a példában az eladó - Microsoft Online. Ha igen, akkor az Active Directory, ID nézne ki: "s-1-5-21-2127521184-1604012920-1887927527-415149".
A téma, aki megpróbál hozzáférést egy gazdaságban vagy egy SharePoint ügyfél területén. Formátum: Application Client ID @ SharePoint régióban.
Az egyedi név az identitás szolgáltató nyilvántartásba vett szervezet IANA (Internet Assigned Numbers Authority).
Az építési telepítve a SharePoint Online, a megadott érték jellemzően ebben a példában.
Mert bővítmények vannak telepítve a helyi gazdaságban, ez általában a helyi identitás szolgáltató, mint például a „urn: office: IDP: ActiveDirectoryba”.
Politika csak a hozzá
összefüggésben token ellenőrzés az add-kliens titok.
Caching összefüggésben token vagy kitermelése frissítések marker vagy más elemek és azok külön cache-t.
Használja markerek frissítések és egyéb információk, kérjen hozzáférési kódot a szolgáltatás-hozzáférési kontroll, majd gyorsítótár is.
Gyorsítótárral CacheKey kulcsot a kontextus token.
Az első két probléma is fontos elvégezni, mielőtt a felhasználó elnavigál az oldalról, vagy frissíteni kell az aktuális, így a marker elvész. Például az alkalmazás ASP.NET Web Forms ezeket a feladatokat el kell végezni a módszerrel Page_Load (feltétel képviselteti magát a kódot blokk, amely kerül sor, ha a kérelmet nem küldött vissza). Az ASP.NET MVC alkalmazás, ezeket a feladatokat el kell végezni a módszer az alapértelmezett vezérlő.
Ha ön használ menedzselt kód, mintakódunkat egyes feladatokat bemutatott SharePointContext és TokenHelper fájlokat (kiterjesztés CS vagy VB), amely tartalmazza a Microsoft Office Developer Tools for Visual Studio. Csak akkor kell elvégezni az egyszerű hívások TokenHelper osztály tagjai. Például a kód képes megbirkózni az első feladat segítségével egy sor:
Gyorsítótár összefüggésben token vagy azok részei
Akkor cache a teljes összefüggésében a marker, vagy csak egy részét kiszolgáló vagy ügyfél boltban. Például szerepel egy frissítést jelző és néhány más elem, amellyel a kódot kap hozzáférést zsetont. Hogy könnyebb, ebben a cikkben azt feltételezzük, hogy a gyorsítótárban a teljes összefüggésében a jelzőt.
Emlékezzünk még egyszer, mert ez nagyon fontos: ne használjon ügyféloldali gyorsítótárat egy hozzáférési tokent. Ez csak akkor használható összefüggésben jelzőt.
Gyorsítótárral lehetőség ugyanazon az oldalon a szerver a fentebb felsorolt hozzáférési tokent. Lehetőségek a kliens oldalon is cookie és a rejtett formában mezőben a HTML-oldal. Ezen felül, akkor lehet tárolni összefüggésben token a cache ülés és CacheKey gombot. megszerzését, - a kliens oldalon.
Ha az alkalmazás kapcsolódik SharePoint kijelentkezés után, akkor nem használ semmilyen munkamenet cache, vagy kliensoldali gyorsítótárazás. Ez annak a ténynek köszönhető, hogy az alkalmazás hozzáférést kell biztosítani a token frissítést, csak abban az esetben jár le eredeti hozzáférési token tevékenységek során a munka az ülés után. Ebben a forgatókönyvben, szükségünk van egy állandó (mezhseansovy) gyorsítótár, amely megoszlik több felhasználó, a SharePoint-nak vagy alkalmazások. Mivel a kód, hogy használja a cache kulcsokat, amelyek megkülönböztetik a felhasználók, az alkalmazások és a SharePoint területen, a fent leírt módon részben gyorsítótár hozzáférési tokent. Akkor egy speciális kulcsot a cache összefüggésben token, valamint a hozzáférési token. (Lásd. Szakasz fogalma cache kulcs alább.)
A koncepció egy cache kulcs
Kulcsgyorsítótárban - átlátszatlan karakterlánc, amely egyedülálló a felhasználó kombinációk, a felhasználó nevét, a kiadó, a SharePoint bővítmény és mezőgazdasági vagy SharePoint Online kliens. Az alábbiakban az ő formája titkosítás előtti, ahol a terület - ez GUID SharePoint vagy SharePoint Online ügyfélszolgálat területén a helyi gazdaságban.
ID_imeni_polzovatelya + "" + izdatel_ID_imeni_polzovatelya + "" + ID_prilozheniya + "" + terület
Mivel egy kulcsgyorsítótárban alkalmazás cache több elem egy cache, például biztonsági token és kontextus token cache gombot használni, mint a bázis. Ha szükséges hozzá elején vagy végén egy adott karakterlánc adhatunk, például AccessToken vagy ContextToken, hogy alkossanak kulcsgyorsítótárban. Egy másik lehetőség - hozzon létre egy osztályt különböző tulajdonságokkal az elemek cache, majd gyorsíthatóságát ilyen típusú objektumot. Van egy harmadik lehetőség. az esetre, ha egy adatbázist, amely a gyorsítótárat. Ez magában foglalja a használata egy asztal CacheKey oszlopot, és további oszlopok a tárolt elemek (AccessToken, ContextToken és t. D.).
Természetesen az alkalmazás nem használja a cache minden caching műveleteket. Normális token cache gyorsíthatóságát ülés keretében token (vagy frissítse a marker is) - egy adatbázisban, és CacheKey gomb - egy sütit.
Beszerzése egy hozzáférési token használatával összefüggésben token
Ahhoz, hogy a hozzáférési token, a kérést küld közvetlenül a beléptető szolgáltatás. A kérelem tartalmazza a három darab kinyert adatokat összefüggésben a marker, valamint egyéb információk:
Alkalmazás GUID alá SharePoint.
GUID SharePoint farm vagy SharePoint Online kliens terület, amely el akarja érni a felépítmény.
Az alkalmazás kaphat az ügyfél terület vagy SharePoint farm futásidőben helyett annak eltávolítása összefüggésben token. Ha ön használ menedzselt kód, a közelben TokenHelper.GetRealmFromTargetUrl módszer. Az érték a cache-be, úgy, hogy a kód nem visszajuttatja a hívás a hálózaton keresztül letölteni azt.
Ismerkedés az új kontextusban token
client_id. SharePoint-bővítmény ügyfél-azonosító.
összefüggésben token példa
Állítások és vid. iss. NBF és exp ugyanazok, mint a hozzáférési token (lásd fent). Jóváhagyás appctxsender. appctx. CacheKey. SecurityTokenServiceUri. refreshtoken isbrowserhostedapp és ismertetett az alábbi táblázatban.
3. táblázat nyilatkozatok összefüggésében jelzőt, és a velük kapcsolatos információk
Hozzáférés korlátozása a SharePoint-felhasználók csak a kontextus token
frissítési token szerepel összefüggésben a marker, ami megjelent a SharePoint Service webalkalmazás futtatásakor is. Marker frissítés titkosított, és a SharePoint add-in nem visszafejteni. A kód használja és egyéb adatokat, így egy új hozzáférési token, ha a jelenlegi lejár. Vele is lehetséges, hogy az első token keretében token patak. (Abban az időben az írás, a fennállásának időtartama a frissítés marker által kiadott hozzáférési ellenőrzés SharePoint szolgáltatás, 6 hónap volt, de ez megváltozott.)
Mivel a token csak akkor érvényes, több órán át (most - 12), és a felhasználó kap egy új SharePoint bővítmény minden futtatásakor a SharePoint, marker frissítéseket csak az ilyen forgatókönyvek:
Belépés felfedezett hosszú ülés felépítmény, amelyben ő végez SharePoint felhívja néhány órán belül (több mint 12) a start után.
felépítmény kialakítása lehetővé teszi a felhasználóknak, hogy a menetrend, a hozzáférést a SharePoint kijelentkezés után.