Biztonsági keret: Engedélyezés | Enyhítése

Termék/szolgáltatás Cikk
Gép megbízhatósági határa
Webalkalmazás
Adatbázis
IoT Cloud Gateway
Azure Event Hub
Azure-dokumentum adatbázis
Azure-megbízhatósági határ
Service Fabric megbízhatósági határa
Dynamics CRM
Dynamics CRM portál
Azure Storage
Mobilügyfél
WCF
Webes API
IoT-eszköz
IoT-mezőátjáró

Győződjön meg arról, hogy a megfelelő ACL-ek úgy vannak konfigurálva, hogy korlátozzák az eszközön lévő adatokhoz való jogosulatlan hozzáférést

Cím Részletek
Komponens Gép megbízhatósági határa
SDL-fázis Telepítés
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Győződjön meg arról, hogy a megfelelő ACL-ek úgy vannak konfigurálva, hogy korlátozzák az eszközön lévő adatokhoz való jogosulatlan hozzáférést

Győződjön meg arról, hogy a bizalmas, felhasználóspecifikus alkalmazástartalom a felhasználói profil könyvtárában van tárolva

Cím Részletek
Komponens Gép megbízhatósági határa
SDL-fázis Telepítés
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Győződjön meg arról, hogy a bizalmas, felhasználóspecifikus alkalmazástartalom a felhasználói profil könyvtárában van tárolva. Ezzel megakadályozható, hogy a gép több felhasználója hozzáférjen egymás adataihoz.

Győződjön meg arról, hogy az üzembe helyezett alkalmazások a legkevesebb jogosultsággal futnak

Cím Részletek
Komponens Gép megbízhatósági határa
SDL-fázis Telepítés
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Győződjön meg arról, hogy az üzembe helyezett alkalmazás a legkevesebb jogosultsággal fut.

Szekvenciális lépéssorrend kényszerítése az üzleti logikai folyamatok feldolgozásakor

Cím Részletek
Komponens Webalkalmazás
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Annak ellenőrzéséhez, hogy ezt a szakaszt egy valódi felhasználó futtatta-e végig, arra kell kényszerítenie, hogy az alkalmazás csak az üzleti logikai folyamatokat dolgozza fel szekvenciális lépések sorrendjében, és minden lépést reális emberi idő alatt dolgozzon fel, és ne dolgozzon fel sorrendben, kihagyott lépéseket, egy másik felhasználó feldolgozott lépéseit vagy túl gyorsan elküldött tranzakciókat.

Sebességkorlátozó mechanizmus megvalósítása a számbavétel megakadályozása érdekében

Cím Részletek
Komponens Webalkalmazás
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Győződjön meg arról, hogy a bizalmas azonosítók véletlenszerűek. Implementálja a CAPTCHA-vezérlőt névtelen oldalakon. Győződjön meg arról, hogy a hiba és a kivétel nem fedhet fel konkrét adatokat

Győződjön meg arról, hogy megfelelő engedélyezés van érvényben, és betartják a legkisebb jogosultságok elvét

Cím Részletek
Komponens Webalkalmazás
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések

Az elv azt jelenti, hogy a felhasználói fióknak csak azokat a jogosultságokat kell adni, amelyek elengedhetetlenek a felhasználók működéséhez. Például a biztonsági mentés felhasználójának nem kell szoftvert telepítenie: így a biztonsági mentés felhasználójának csak a biztonsági mentéssel és a biztonsági mentéssel kapcsolatos alkalmazások futtatására van jogosultsága. Minden más jogosultság, például az új szoftverek telepítése, le van tiltva. Az elv vonatkozik a személyi számítógép felhasználójára is, aki általában normál felhasználói fiókban dolgozik, és csak akkor nyit meg privilegizált, jelszóval védett fiókot (azaz rendszergazda) csak akkor, ha a helyzet feltétlenül megköveteli.

Ez az elv alkalmazható a webes alkalmazásokra is. Ahelyett, hogy kizárólag a munkameneteket használó szerepköralapú hitelesítési módszerektől függenénk, inkább egy Database-Based hitelesítési rendszer segítségével szeretnénk jogosultságokat hozzárendelni a felhasználókhoz. Továbbra is munkameneteket használunk annak megállapítására, hogy a felhasználó helyesen volt-e bejelentkezve, csak most ahelyett, hogy egy adott szerepkörhöz rendelnénk a felhasználót, jogosultságokkal ruházzuk fel őt annak ellenőrzésére, hogy mely műveleteket hajthatja végre a rendszeren. Ennek a módszernek az is nagy előnye, hogy amikor egy felhasználónak kevesebb jogosultságot kell hozzárendelni, a módosítások menet közben érvényesülnek, mivel a hozzárendelés nem függ attól a munkamenettől, amelynek egyébként először le kell járnia.

Az üzleti logika és az erőforrás-hozzáférés engedélyezési döntései nem alapulhatnak a bejövő kérések paraméterein

Cím Részletek
Komponens Webalkalmazás
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Amikor azt ellenőrzi, hogy a felhasználó korlátozott-e bizonyos adatok áttekintésére, a hozzáférési korlátozásokat kiszolgálóoldalon kell feldolgozni. A felhasználói azonosítót bejelentkezéskor egy munkamenet-változóban kell tárolni, és a felhasználói adatok adatbázisból való lekérésére kell használni

példa

SELECT data 
FROM personaldata 
WHERE userID=:id < - session var 

Most egy lehetséges támadó nem módosíthatja és módosíthatja az alkalmazás műveletét, mivel az adatok lekérésének azonosítóját a kiszolgáló oldalán kezelik.

Győződjön meg arról, hogy a tartalom és az erőforrások nem legyenek felsorolhatók vagy elérhetők erőszakos böngészéssel

Cím Részletek
Komponens Webalkalmazás
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések

A bizalmas statikus és konfigurációs fájlokat nem szabad a web-gyökérben tartani. A nem nyilvánosnak nem kötelező tartalom esetében megfelelő hozzáférés-szabályozást kell alkalmazni, vagy magát a tartalmat el kell távolítani.

Ezenkívül az erőteljes böngészést általában Brute Force technikákkal kombinálják, hogy információkat gyűjtsenek azáltal, hogy megpróbálnak minél több URL-hez hozzáférni a szerveren lévő könyvtárak és fájlok számbavételéhez. A támadók ellenőrizhetik a gyakran létező fájlok összes változatát. A jelszófájl-keresés például olyan fájlokat foglal magában, mint a psswd.txt, password.htm, password.dat és más változatok.

Ennek mérséklése érdekében be kell építeni a találgatásos erővel kapcsolatos kísérletek észlelésére szolgáló képességeket.

Győződjön meg arról, hogy a legalacsonyabb jogosultsági szintű fiókokat használja az adatbázis-kiszolgálóhoz való csatlakozáshoz

Cím Részletek
Komponens Adatbázis
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások SQL-engedélyek hierarchiája, SQL biztonságos
Lépések Az adatbázishoz való csatlakozáshoz a legkevésbé kiemelt jogosultsági szintű fiókokat kell használni. Az alkalmazás bejelentkezését korlátozni kell az adatbázisban, és csak a kiválasztott tárolt eljárásokat kell végrehajtania. Az alkalmazás bejelentkezésének nem lehet közvetlen hozzáférése az asztalhoz.

Sorszintű biztonsági RLS implementálása, hogy megakadályozza, hogy a bérlők hozzáférjenek egymás adataihoz

Cím Részletek
Komponens Adatbázis
SDL-fázis Épít
Alkalmazható technológiák Sql Azure, OnPrem
Attribútumok SQL-verzió – V12, SQL-verzió – MsSQL2016
hivatkozások SQL Server Row-Level biztonság (RLS)
Lépések

A Row-Level Security lehetővé teszi az ügyfelek számára, hogy a lekérdezést végrehajtó felhasználó jellemzői (pl. csoporttagság vagy végrehajtási környezet) alapján szabályozzák az adatbázistábla soraihoz való hozzáférést.

A Row-Level Security (RLS) leegyszerűsíti az alkalmazás biztonságának tervezését és kódolását. Az RLS lehetővé teszi az adatsor-hozzáférés korlátozásainak implementálását. Például annak biztosítása, hogy a dolgozók csak a részlegükre vonatkozó adatsorokhoz férhessenek hozzá, vagy az ügyfél adathozzáférésének korlátozása csak a vállalatuk szempontjából releváns adatokra.

A hozzáférés-korlátozási logika az adatbázis szintjén található, nem pedig egy másik alkalmazásréteg adataitól. Az adatbázisrendszer minden alkalommal alkalmazza a hozzáférési korlátozásokat, amikor az adathozzáférést bármilyen szintről megkísérlik. Ez megbízhatóbbá és robusztusabbá teszi a biztonsági rendszert azáltal, hogy csökkenti a biztonsági rendszer felületét.

Vegye figyelembe, hogy az RLS beépített adatbázis-funkcióként csak a SQL Server 2016-tól, Azure SQL Database és SQL Managed Instance. Ha a beépített RLS-funkció nincs megvalósítva, biztosítani kell, hogy az adatokhoz való hozzáférés korlátozott legyen nézetek és eljárások használatával

A rendszergazdai szerepkörnek csak érvényes szükséges felhasználókkal kell rendelkeznie

Cím Részletek
Komponens Adatbázis
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások SQL-engedélyek hierarchiája, SQL biztonságos
Lépések A SysAdmin rögzített kiszolgálói szerepkör tagjainak nagyon korlátozottnak kell lenniük, és soha nem tartalmazhatnak alkalmazások által használt fiókokat. Kérjük, tekintse át a szerepkörben lévő felhasználók listáját, és távolítsa el a felesleges fiókokat

Csatlakozás Cloud Gateway legkevésbé kiemelt jogkivonatokkal

Cím Részletek
Komponens IoT Cloud Gateway
SDL-fázis Telepítés
Alkalmazható technológiák Általános
Attribútumok Átjáróválasztás – Azure IoT Hub
hivatkozások IoT Hub hozzáférés-vezérlés
Lépések Adjon meg minimális jogosultsági engedélyeket a Cloud Gatewayhez (IoT Hub) csatlakozó különböző összetevőkhöz. Tipikus példa a következő: Az eszközkezelési/kiépítési összetevő a registryread/write-ot, az eseményfeldolgozó (ASA) a Service Connectet használja. Az egyes eszközök az eszköz hitelesítő adataival csatlakoznak

Csak küldési engedélyek SAS-kulcsának használata eszközjogkivonatok létrehozásához

Cím Részletek
Komponens Azure Event Hub
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Az Event Hubs-hitelesítés és a biztonsági modell áttekintése
Lépések Az SAS-kulcs az egyes eszközjogkivonatok létrehozására szolgál. Csak küldési engedélyek SAS-kulcsának használata az eszközjogkivonat adott közzétevő számára történő létrehozásakor

Ne használjon olyan hozzáférési jogkivonatokat, amelyek közvetlen hozzáférést biztosítanak az eseményközponthoz

Cím Részletek
Komponens Azure Event Hub
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Az Event Hubs-hitelesítés és a biztonsági modell áttekintése
Lépések Az eseményközponthoz közvetlen hozzáférést biztosító jogkivonatot nem szabad megadni az eszköznek. A legkevésbé kiemelt jogkivonat használata az eszközhöz, amely csak egy közzétevőnek biztosít hozzáférést, segít azonosítani és letiltani, ha szélhámos vagy feltört eszközről kiderül.

Csatlakozás az eseményközponthoz a minimálisan szükséges engedélyekkel rendelkező SAS-kulcsokkal

Cím Részletek
Komponens Azure Event Hub
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Az Event Hubs-hitelesítés és a biztonsági modell áttekintése
Lépések Adjon meg a legkevesebb jogosultsági engedélyt az eseményközponthoz csatlakozó különböző háttéralkalmazásoknak. Hozzon létre külön SAS-kulcsokat minden háttéralkalmazáshoz, és csak a szükséges engedélyeket adja meg – küldés, fogadás vagy kezelés.

Amikor csak lehetséges, erőforrás-jogkivonatok használata az Azure Cosmos DB-hez való csatlakozáshoz

Cím Részletek
Komponens Azure-dokumentum adatbázis
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Az erőforrás-jogkivonat egy Azure Cosmos DB engedélyerőforráshoz van társítva, és rögzíti az adatbázis felhasználója és a felhasználó adott Azure Cosmos DB alkalmazáserőforráshoz (például gyűjteményhez, dokumentumhoz) vonatkozó engedély közötti kapcsolatot. Mindig használjon erőforrás-jogkivonatot az Azure Cosmos DB eléréséhez, ha az ügyfél nem bízható meg a fő- vagy írásvédett kulcsok kezelésében – például egy végfelhasználói alkalmazásban, például egy mobil- vagy asztali ügyfélben. Használjon mesterkulcsot vagy csak olvasható kulcsokat a háttéralkalmazásokból, amelyek biztonságosan tárolhatják ezeket a kulcsokat.

Részletes hozzáférés-kezelés engedélyezése az Azure-előfizetéshez az Azure RBAC használatával

Cím Részletek
Komponens Azure megbízhatósági határvonal
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Azure-szerepkörök hozzárendelése az Azure-előfizetés erőforrásaihoz való hozzáférés kezeléséhez
Lépések Az Azure szerepköralapú hozzáférés-vezérlése (Azure RBAC) lehetővé teszi az Azure részletes hozzáférés-kezelését. Az Azure RBAC használatával csak annyi hozzáférést adhat meg, amennyire a felhasználóknak szükségük van a feladataik elvégzéséhez.

Ügyfél fürtműveletekhez való hozzáférésének korlátozása Service Fabric RBAC használatával

Cím Részletek
Komponens A Service Fabric megbízhatósági határa
SDL-fázis Telepítés
Alkalmazható technológiák Általános
Attribútumok Környezet – Azure
hivatkozások Service Fabric szerepköralapú hozzáférés-vezérlés Service Fabric-ügyfelek számára
Lépések

Az Azure Service Fabric két különböző hozzáférés-vezérlési típust támogat a Service Fabric-fürthöz csatlakozó ügyfelek esetében: rendszergazda és felhasználó. A hozzáférés-vezérlés lehetővé teszi, hogy a fürt rendszergazdája korlátozza a hozzáférést bizonyos fürtműveletekhez különböző felhasználói csoportok számára, ezáltal növelve a fürt biztonságát.

A rendszergazdák teljes hozzáféréssel rendelkeznek a felügyeleti képességekhez (beleértve az olvasási/írási képességeket is). A felhasználók alapértelmezés szerint csak olvasási hozzáféréssel rendelkeznek a felügyeleti képességekhez (például lekérdezési képességekhez), valamint az alkalmazások és szolgáltatások feloldásához.

A fürt létrehozásakor meg kell adnia a két ügyfélszerepkört (rendszergazda és ügyfél), és mindegyikhez külön tanúsítványokat kell megadnia.

Végezzen biztonsági modellezést és szükség esetén használja a mezőszintű biztonságot

Cím Részletek
Komponens Dynamics CRM
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Végezzen biztonsági modellezést és szükség esetén használja a mezőszintű biztonságot

Végezze el a portálfiókok biztonsági modellezését szem előtt tartva, hogy a portál biztonsági modellje eltér a CRM többi modelljétől

Cím Részletek
Komponens Dynamics CRM portál
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések Végezze el a portálfiókok biztonsági modellezését szem előtt tartva, hogy a portál biztonsági modellje eltér a CRM többi modelljétől

Részletes engedély megadása az Azure Table Storage entitástartományához

Cím Részletek
Komponens Azure Storage
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok StorageType - Tábla
hivatkozások Az Azure Storage-fiók objektumaihoz való hozzáférés delegálása SAS használatával
Lépések Bizonyos üzleti forgatókönyvekben előfordulhat, hogy az Azure Table Storage-nak bizalmas adatokat kell tárolnia, amelyek különböző feleket szolgálnak ki. Pl. a különböző országokra/régiókra vonatkozó érzékeny adatok. Ilyen esetekben az SAS-aláírások a partíció- és sorkulcstartományok megadásával hozhatók létre, így a felhasználó hozzáférhet egy adott országra/régióra vonatkozó adatokhoz.

Az Azure szerepköralapú hozzáférés-vezérlés (Azure RBAC) engedélyezése az Azure Storage-fiókhoz az Azure Resource Manager használatával

Cím Részletek
Komponens Azure Storage
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások A tárfiók biztonságossá tétele az Azure szerepköralapú hozzáférés-vezérléssel (Azure RBAC)
Lépések

Új tárfiók létrehozásakor a klasszikus vagy a Azure Resource Manager üzemi modelljét kell kiválasztania. Az erőforrások Azure-ban való létrehozásának klasszikus modellje csak az előfizetéshez, majd a tárfiókhoz való hozzáférést teszi lehetővé.

A Azure Resource Manager modellel a tárfiókot egy erőforráscsoportba helyezi, és a Microsoft Entra azonosítóval szabályozhatja az adott tárfiók felügyeleti síkjához való hozzáférést. Megadhatja például az adott felhasználóknak a tárfiók kulcsainak elérését, míg más felhasználók megtekinthetik a tárfiókkal kapcsolatos információkat, de nem férhetnek hozzá a tárfiók kulcsaihoz.

Implicit jailbreak vagy rootolás észlelésének megvalósítása

Cím Részletek
Komponens Mobilügyfél
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések

Az alkalmazásnak meg kell védenie saját konfigurációját és felhasználói adatait arra az esetre, ha a telefon rootolt vagy feltört. A rootolás/jail break jogosulatlan hozzáférést jelent, amit a normál felhasználók nem fognak megtenni a saját telefonjukon. Ezért az alkalmazásnak implicit észlelési logikával kell rendelkeznie az alkalmazás indításakor, hogy észlelje, hogy a telefon rootolt-e.

Az észlelési logika egyszerűen olyan fájlok elérése, amelyekhez általában csak a root felhasználó férhet hozzá, például:

  • /rendszer/alkalmazás/Superuser.apk
  • /sbin/su
  • /rendszer/bin/su
  • /rendszer/xbin/su
  • /data/local/xbin/su
  • /data/local/bin/su
  • /rendszer/sd/xbin/su
  • /system/bin/failsafe/su
  • /adatok/helyi/su

Ha az alkalmazás hozzáfér ezekhez a fájlokhoz, az azt jelzi, hogy az alkalmazás root felhasználóként fut.

Gyenge osztályhivatkozás a WCF-ben

Cím Részletek
Komponens WCF
SDL-fázis Épít
Alkalmazható technológiák Általános, NET-keretrendszer 3
Attribútumok Nincs adat.
hivatkozások MSDN, Fortify Kingdom
Lépések

A rendszer gyenge osztályhivatkozást használ, ami lehetővé teheti a támadó számára jogosulatlan kód futtatását. A program egy felhasználó által definiált osztályra hivatkozik, amely nem egyedileg azonosítható. Amikor a .NET betölti ezt a gyengén azonosított osztályt, a CLR-típusbetöltő a következő helyeken keresi meg az osztályt a megadott sorrendben:

  1. Ha a típus szerelvénye ismert, a betöltő megkeresi a konfigurációs fájl átirányítási helyeit, a GAC-t, az aktuális szerelvényt a konfigurációs információk alapján és az alkalmazás alapkönyvtárát
  2. Ha a szerelvény ismeretlen, a betöltő megkeresi az aktuális szerelvényt, az mscorlib-et és a TypeResolve eseménykezelő által visszaadott helyet
  3. Ez a CLR keresési sorrend olyan hookokkal módosítható, mint a Type Forwarding mechanizmus és az AppDomain.TypeResolve esemény

Ha egy támadó kihasználja a CLR keresési sorrendjét úgy, hogy létrehoz egy azonos nevű alternatív osztályt, és egy másik helyre helyezi, amelyet a CLR először tölt be, a CLR véletlenül végrehajtja a támadó által megadott kódot

példa

A <behaviorExtensions/> WCF konfigurációs fájl alábbi eleme arra utasítja a WCF-et, hogy adjon hozzá egy egyéni viselkedési osztályt egy adott WCF-bővítményhez.

<system.serviceModel>
    <extensions>
        <behaviorExtensions>
            <add name=""myBehavior"" type=""MyBehavior"" />
        </behaviorExtensions>
    </extensions>
</system.serviceModel>

A teljesen minősített (erős) nevek használata egyedileg azonosítja a típust, és tovább növeli a rendszer biztonságát. Használjon teljes szerelvényneveket a típusok machine.config és app.config fájlokban való regisztrálásakor.

példa

A <behaviorExtensions/> WCF konfigurációs fájl alábbi eleme arra utasítja a WCF-et, hogy adjon hozzá erősen hivatkozott egyéni viselkedési osztályt egy adott WCF-bővítményhez.

<system.serviceModel>
    <extensions>
        <behaviorExtensions>
            <add name=""myBehavior"" type=""Microsoft.ServiceModel.Samples.MyBehaviorSection, MyBehavior,
            Version=1.0.0.0, Culture=neutral, PublicKeyToken=null"" />
        </behaviorExtensions>
    </extensions>
</system.serviceModel>

WCF-Implement Engedélyezési vezérlés

Cím Részletek
Komponens WCF
SDL-fázis Épít
Alkalmazható technológiák Általános, NET-keretrendszer 3
Attribútumok Nincs adat.
hivatkozások MSDN, Fortify Kingdom
Lépések

Ez a szolgáltatás nem használ engedélyezési vezérlőt. Amikor egy ügyfél meghív egy adott WCF-szolgáltatást, a WCF különböző engedélyezési sémákat biztosít, amelyek ellenőrzik, hogy a hívó rendelkezik-e engedéllyel a szolgáltatási metódus végrehajtására a kiszolgálón. Ha az engedélyezési vezérlők nincsenek engedélyezve a WCF-szolgáltatásokhoz, a hitelesített felhasználó jogosultságeszkalációt érhet el.

példa

A következő konfiguráció arra utasítja a WCF-et, hogy ne ellenőrizze az ügyfél engedélyezési szintjét a szolgáltatás végrehajtásakor:

<behaviors>
    <serviceBehaviors>
        <behavior>
            ...
            <serviceAuthorization principalPermissionMode=""None"" />
        </behavior>
    </serviceBehaviors>
</behaviors>

Szolgáltatásengedélyezési séma segítségével ellenőrizze, hogy a szolgáltatási módszer hívója jogosult-e erre. A WCF két módot biztosít, és lehetővé teszi az egyéni engedélyezési séma meghatározását. A UseWindowsGroups mód Windows-szerepköröket és -felhasználókat, a UseAspNetRoles mód pedig egy ASP.NET szerepkör-szolgáltatót, például SQL Servert használ a hitelesítéshez.

példa

Az alábbi konfiguráció arra utasítja a WCF-et, hogy a Szolgáltatás hozzáadása végrehajtása előtt győződjön meg arról, hogy az ügyfél a Rendszergazdák csoport része:

<behaviors>
    <serviceBehaviors>
        <behavior>
            ...
            <serviceAuthorization principalPermissionMode=""UseWindowsGroups"" />
        </behavior>
    </serviceBehaviors>
</behaviors>

A szolgáltatás ezután a következőképpen lesz deklarálva:

[PrincipalPermission(SecurityAction.Demand,
Role = ""Builtin\\Administrators"")]
public double Add(double n1, double n2)
{
double result = n1 + n2;
return result;
}

Megfelelő engedélyezési mechanizmus implementálása ASP.NET webes API-ban

Cím Részletek
Komponens Webes API
SDL-fázis Épít
Alkalmazható technológiák Általános, MVC5
Attribútumok N/A, Identitásszolgáltató – ADFS, Identitásszolgáltató – Microsoft Entra ID
hivatkozások Hitelesítés és engedélyezés ASP.NET webes API-ban
Lépések

Az alkalmazásfelhasználók szerepkör-adatai a Microsoft Entra azonosítóból vagy az ADFS-jogcímekből származhatnak, ha az alkalmazás identitásszolgáltatóként támaszkodik rájuk, vagy ha maga az alkalmazás biztosítja azt. Ezen esetek bármelyikében az egyéni engedélyezési implementációnak ellenőriznie kell a felhasználói szerepkör adatait.

Az alkalmazásfelhasználók szerepkör-adatai a Microsoft Entra azonosítóból vagy az ADFS-jogcímekből származhatnak, ha az alkalmazás identitásszolgáltatóként támaszkodik rájuk, vagy ha maga az alkalmazás biztosítja azt. Ezen esetek bármelyikében az egyéni engedélyezési implementációnak ellenőriznie kell a felhasználói szerepkör adatait.

példa

[AttributeUsage(AttributeTargets.Class | AttributeTargets.Method, Inherited = true, AllowMultiple = true)]
public class ApiAuthorizeAttribute : System.Web.Http.AuthorizeAttribute
{
        public async override Task OnAuthorizationAsync(HttpActionContext actionContext, CancellationToken cancellationToken)
        {
            if (actionContext == null)
            {
                throw new Exception();
            }

            if (!string.IsNullOrEmpty(base.Roles))
            {
                bool isAuthorized = ValidateRoles(actionContext);
                if (!isAuthorized)
                {
                    HandleUnauthorizedRequest(actionContext);
                }
            }

            base.OnAuthorization(actionContext);
        }

public bool ValidateRoles(actionContext)
{
   //Authorization logic here; returns true or false
}

}

Minden védendő vezérlőt és cselekvési módszert a fenti attribútummal kell díszíteni.

[ApiAuthorize]
public class CustomController : ApiController
{
     //Application code goes here
}

Végezzen engedélyezési ellenőrzéseket az eszközön, ha az különböző jogosultsági szinteket igénylő műveleteket támogat

Cím Részletek
Komponens IoT-készülék
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések

Az eszköznek fel kell hatalmaznia a hívót annak ellenőrzésére, hogy a hívó rendelkezik-e a kért művelet végrehajtásához szükséges engedélyekkel. Tegyük fel például, hogy az eszköz egy intelligens ajtózár, amely a felhőből figyelhető, plusz olyan funkciókat biztosít, mint az ajtó távoli zárása.

Az intelligens ajtózár csak akkor biztosít feloldási funkciót, ha valaki fizikailag közeledik az ajtóhoz egy kártyával. Ebben az esetben a távoli parancs és vezérlés megvalósítását úgy kell elvégezni, hogy az ne biztosítson semmilyen funkciót az ajtó feloldásához, mivel a felhőátjáró nem jogosult parancs küldésére az ajtó kinyitásához.

Jogosultsági ellenőrzések végrehajtása a Field Gatewayben, ha az különböző jogosultsági szinteket igénylő műveleteket támogat

Cím Részletek
Komponens IoT-mezőátjáró
SDL-fázis Épít
Alkalmazható technológiák Általános
Attribútumok Nincs adat.
hivatkozások Nincs adat.
Lépések A Field Gateway-nek fel kell hatalmaznia a hívót annak ellenőrzésére, hogy a hívó rendelkezik-e a kért művelet végrehajtásához szükséges engedélyekkel. Például különböző engedélyekkel kell rendelkeznie egy rendszergazdai felhasználói felülethez/API-hoz, amelyet a hozzá csatlakozó terepi átjáró v/s eszközök konfigurálásához használnak.