Megjegyzés
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhat bejelentkezni vagy módosítani a címtárat.
Az oldalhoz való hozzáféréshez engedély szükséges. Megpróbálhatja módosítani a címtárat.
ASP.NET Core lehetővé teszi a fejlesztők számára a biztonság konfigurálását és kezelését. Az alábbi lista hivatkozásokat tartalmaz az ASP.NET Core biztonsági funkcióival kapcsolatos cikkekre:
- hitelesítés
- Engedélyezés
- adatvédelmi
- HTTPS kényszerítése
- Alkalmazás titkok biztonságos tárolása a fejlesztési fázisban
- XSRF/CSRF megelőzése
- Kereszteredetű erőforrás-megosztás (CORS)
- keresztoldali szkriptelés (XSS) támadások
Ezek a biztonsági funkciók lehetővé teszik, hogy robusztus és biztonságos ASP.NET Core-alkalmazásokat hozzon létre.
Ha Blazor biztonsági lefedettségről van szó, amely hozzáadja vagy felülírja a csomópont útmutatását, tekintse meg ASP.NET Core Blazor hitelesítési és engedélyezési, valamint BlazorBiztonsági és Identity csomópontjának egyéb cikkeit.
ASP.NET Alapvető biztonsági funkciók
ASP.NET Core számos eszközt és kódtárat biztosít ASP.NET Core alkalmazások, például a beépített identitásszolgáltatók és a nem Microsoft identitásszolgáltatások, például a Facebook, a Twitter és a LinkedIn védelméhez. ASP.NET Core számos módszert kínál az alkalmazás titkos kulcsainak tárolására.
Hitelesítés és engedélyezés
A hitelesítés egy olyan folyamat, amelyben a felhasználó olyan hitelesítő adatokat biztosít, amelyek az operációs rendszerben, adatbázisban, alkalmazásban vagy erőforrásban tárolt hitelesítő adatokkal vannak összehasonlítva. Ha a két hitelesítő adatkészlet egyezik, a felhasználó sikeresen hitelesíti magát. Ezután olyan műveleteket hajthatnak végre, amelyekhez engedélyezve vannak. Az engedélyezési folyamat határozza meg, hogy a felhasználó milyen műveleteket hajthat végre.
A hitelesítésről úgy is gondolkodhatunk, mint egy módról arra, hogy belépjünk egy térbe, ahol ez a tér egy kiszolgáló, adatbázis, alkalmazás vagy erőforrás. Az engedélyezés határozza meg , hogy a felhasználó milyen műveleteket hajthat végre az adott térben (kiszolgáló, adatbázis vagy alkalmazás) található objektumokon.
Gyakori biztonsági rések a szoftverben
az ASP.NET Core és az Entity Framework olyan funkciókat tartalmaz, amelyek segítenek az alkalmazások védelmében és a biztonsági incidensek megelőzésében. A webalkalmazások leggyakoribb biztonsági réseinek elkerülése érdekében az alábbi hivatkozások a dokumentáció részletezési technikáira mutatnak:
- keresztoldali szkriptelés (XSS) támadások
- SQL-lekérdezések > SQL-injektálási támadásai
- Webhelyek közötti kérelemhamisítás (XSRF/CSRF) támadások
- Nyílt átirányítási támadások
Több biztonsági rést is figyelembe kell vennie. További információt a tartalomjegyzék Biztonság és Identity szakaszában talál.
Biztonságos hitelesítési folyamatok
Javasoljuk, hogy a legbiztonságosabb hitelesítési lehetőséget használja. Az Azure-szolgáltatások esetében a legbiztonságosabb hitelesítés felügyelt identitások.
Kerülje az erőforrás-tulajdonosi jelszó hitelesítő adatainak (ROPG) használatát:
- Elérhetővé teszi a felhasználó jelszavát az ügyfél számára.
- Ez jelentős biztonsági kockázat.
- Csak akkor használja, ha más hitelesítési folyamatok nem lehetségesek.
A felügyelt identitások biztonságosan hitelesíthetők a szolgáltatásokban anélkül, hogy a hitelesítő adatokat kódban, környezeti változókban vagy konfigurációs fájlokban kellene tárolniuk. A felügyelt identitások elérhetők az Azure-szolgáltatásokhoz, és használhatók az Azure SQL-hez, az Azure Storage-hoz és más Azure-szolgáltatásokhoz:
- Felügyelt identitások a Microsoft Entra-ban az Azure SQL-hez
- Felügyelt identitások az App Service és az Azure Functions számára
- Biztonságos hitelesítési folyamatok
Amikor az alkalmazást egy tesztkiszolgálón helyezik üzembe, egy környezeti változóval a kapcsolati sztringet egy tesztadatbázis-kiszolgálóra állíthatja be. További információért lásd a Konfiguráció. A környezeti változók gyakran egyszerű, titkosítatlan szövegben vannak tárolva. Ha a gép vagy a folyamat sérül, a környezeti változók elérhetők lehetnek a nem megbízható felek számára. Nem javasoljuk, hogy környezeti változókban tárolja az éles kapcsolati sztringet, mivel ez nem a legbiztonságosabb módszer.
Konfigurációs adatokra vonatkozó irányelvek:
- Soha ne tároljon jelszavakat vagy más bizalmas adatokat konfigurációszolgáltatói kódban vagy egyszerű szöveges konfigurációs fájlokban. A Secret Manager eszközzel titkos kulcsokat tárolhat a fejlesztés során.
- Ne használjon gyártási titkokat fejlesztési vagy tesztelési környezetekben.
- Adja meg a projekten kívüli érzékeny adatokat, hogy ezek véletlenül ne kerüljenek feltöltve egy forráskód-tárházba.
További információ:
- Kezelt identitás legjobb gyakorlati ajánlások
- Csatlakozás az alkalmazásból az erőforrásokhoz a kódban szereplő hitelesítő adatok kezelése nélkül
- Azure-szolgáltatások, amelyek felügyelt identitásokkal férhetnek hozzá más szolgáltatásokhoz
- Az IETF OAuth 2.0 biztonsági ajánlott jelenlegi gyakorlata (2.4. szakasz. Erőforrás-tulajdonosi jelszó hitelesítő adatainak megadása)
További információ a többi felhőszolgáltatóról:
- AWS (Amazon Web Services): AWS Key Management Service (KMS)
- Google Cloud Key Management Service áttekintése
Vállalati webalkalmazás-minták
A megbízható, biztonságos, teljesíthető, tesztelhető és méretezhető ASP.NET Core-alkalmazás létrehozásával kapcsolatos útmutatásért tekintse meg Vállalati webalkalmazás-mintákcímű témakört. Rendelkezésre áll egy teljes éles minőségű minta webalkalmazás, amely implementálja a mintákat.