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.
Ez a cikk bemutatja, hogyan inicializálhatja az objektumot az ConfidentialClientApplication MSAL-csomópontban. Megtudhatja, hogyan használhatja biztonságosan a titkos adatokat és a tanúsítványokat, valamint hogyan konfigurálhatja a hitelesítésszolgáltatót.
Prerequisites
Az alkalmazás inicializálása előtt először regisztrálnia kell azt a Microsoft Entra felügyeleti központ, és megbízhatósági kapcsolatot kell létesítenie az alkalmazás és a Microsoft Identitásplatform között.
Az alkalmazás regisztrálása után szüksége lesz a Microsoft Entra felügyeleti központ található alábbi értékekre vagy az összesre.
| Érték | Kötelező | Description |
|---|---|---|
| Alkalmazás (ügyfél) azonosítója | Kötelező | GUID, amely a Microsoft Identity Platformon belül egyedileg azonosítja az Ön alkalmazását. |
| Hatóság | Optional | Az identitásszolgáltató URL-címe (azaz a példány) és az alkalmazás bejelentkezési célközönsége. A példány és a bejelentkezési célközönség összefűzve alkotja a hitelesítési végpontot. |
| Címtár (bérlő) azonosítója | Optional | Adja meg a címtár (bérlő) azonosítóját, ha kizárólag a szervezet számára készít üzletági alkalmazást, amelyet gyakran egy-bérlős alkalmazásnak neveznek. |
| Átirányítási URI | Optional | Webalkalmazás létrehozásakor az redirectUri adja meg, hová kell az identitásszolgáltatónak (a Microsoft Identitásplatformnak) visszaküldenie az általa kibocsátott biztonsági tokeneket. |
Az objektum inicializálása ConfidentialClientApplication
Az MSAL-csomópont használatához egy ConfidentialClient objektumot kell létrehoznia.
Titkos kódok és tanúsítványok biztonságos használata
A titkos kulcsokat soha nem szabad szigorúan kódolni. A dotenv npm-csomag segítségével titkos kulcsokat vagy tanúsítványokat tárolhat egy .env fájlban (amely a projekt gyökérkönyvtárában található), amelyet a .gitignore-ban kell elhelyezni a titkos kódok véletlen feltöltésének megakadályozása érdekében.
A tanúsítványok a NodeJS fs modulján keresztül is beolvashatók a fájlokból. Ezeket azonban soha nem szabad a projekt könyvtárában tárolni. Az éles alkalmazásoknak a tanúsítványokat az Azure KeyVaultból vagy egyéb biztonságos kulcstartárakból kell lekérniük.
További információért tekintse meg a tanúsítványokat és a titkos kulcsokat .
Lásd az MSAL-mintát: auth-code-with-certs
import * as msal from "@azure/msal-node";
import "dotenv/config"; // process.env now has the values defined in a .env file
const clientAssertionCallback = async (config) => {
// network request that uses config.clientId and (optionally) config.tokenEndpoint
const result = await Promise.resolve(
"network request which gets assertion"
);
return result;
};
const clientConfig = {
auth: {
clientId: "your_client_id",
authority: "your_authority",
clientSecret: process.env.clientSecret, // OR
clientCertificate: {
thumbprintSha256: process.env.thumbprint,
privateKey: process.env.privateKey,
}, // OR
clientAssertion: clientAssertionCallback, // or a predetermined clientAssertion string
},
};
const cca = new msal.ConfidentialClientApplication(clientConfig);
Kérjük, olvassa el a következőt: A tanúsítványok importálásakor gyakori problémák.
A konfiguráció alapjai
A csomópont konfigurációs beállításai hitelesítési folyamatonként paraméterekkel és common paremeterekkel rendelkeznekspecific.
-
clientIdnyilvános ügyfélalkalmazás inicializálása kötelező -
authorityalapértelmezett érték,https://login.microsoftonline.com/common/ha a felhasználó nem állítja be a konfiguráció során - Bizalmas ügyfelek esetében kötelező az ügyfél-hitelesítő adatok megadása. Az ügyfél hitelesítő adatai lehetnek:
-
clientSecretaz alkalmazás regisztrációjában létrehozott titkos karakterlánc. -
clientCertificateaz alkalmazásregisztrációhoz beállított tanúsítvány. AthumbprintSha256tanúsítvány X.509 SHA-256 ujjlenyomata, aprivateKeyPEM kódolt titkos kulcsa.x5caz opcionális X.509-tanúsítványlánc, amelyet a tulajdonosnév/kiállító hitelesítési forgatókönyveiben használnak. -
clientAssertionEgy ClientAssertion objektum, amely egy helyességi sztringet vagy egy visszahívási függvényt tartalmaz, amely egy olyan helyességi sztringet ad vissza, amelyet az alkalmazás a jogkivonat kérésekor használ, valamint az állítás típusát (urn:ietf:params:oauth:client-assertion-type:jwt-bearer). A visszahívás minden alkalommal meghívásra kerül, amikor az MSAL-nak tokent kell beszereznie a tokenkibocsátótól. Az alkalmazásfejlesztők általában azért használják a visszahívást, mert az állítások lejárnak, és új állításokat kell létrehozni. Az alkalmazásfejlesztők felelősek az állítás élettartamáért. A mechanizmus használatával tokeneket szerezhet egy háttérbeli API-hoz federált identitás-hitelesítő adat használatával.
-
A konfigurációval kapcsolatos további lehetőségekért tekintse meg az MSAL-csomópont konfigurációját.
Hitelesítésszolgáltató konfigurálása
Az MSAL alapértelmezés szerint a common bérlő használatára van konfigurálva, amelyet több-bérlős alkalmazásokhoz, valamint személyes fiókokat engedélyező alkalmazásokhoz használnak (nem B2C).
authority: 'https://login.microsoftonline.com/common/'
Ha az alkalmazás célközönsége egyetlen bérlő, az alábbiakhoz hasonlóan meg kell adnia egy szolgáltatónak a bérlőazonosítóját:
authority: 'https://login.microsoftonline.com/{your_tenant_id}'