Megosztás a következőn keresztül:


A Biztonságos alkalmazásmodell keretrendszer engedélyezése

A Microsoft egy biztonságos, méretezhető keretrendszert vezet be a felhőszolgáltatói (CSP-) partnerek és vezérlőpult-gyártók (CPV) hitelesítéséhez a Microsoft Entra többtényezős hitelesítési (MFA) architektúrán keresztül.

Az új modell használatával emelheti a partnerközpont API-integrációs hívásainak biztonságát. Ez segít minden félnek (beleértve a Microsoftot, a CSP-partnereket és a CPV-ket) az infrastruktúra és az ügyféladatok biztonsági kockázatok elleni védelmében.

A CSP program lehetővé teszi az ügyfelek számára, hogy Microsoft-termékeket és szolgáltatásokat vásároljanak a partnereken keresztül. A Microsofttal kötött megállapodás értelmében a partnereknek kezelniük kell a környezetet azoknak az ügyfeleknek, akik számára értékesítik őket, és támogatást nyújtanak. Azoknak az ügyfeleknek, akik ezen a csatornán keresztül vásárolnak, nagy bizalommal kell lenniük az iránt a partner iránt, akitől vásárolnak, mert a partnervállalat magas szintű adminisztrátori hozzáféréssel rendelkezik az ügyfélbérlőhöz.

Hatókör

Ez a cikk a CSP-ket és a CPV-ket egyaránt érinti.

CPV-k

  • A CPV egy független szoftvergyártó, amely a CSP-partnerek által a Partnerközpont API-kkal való integrációhoz használható alkalmazásokat fejleszt.
  • A CPV nem olyan CSP-partner, amely közvetlen hozzáféréssel rendelkezik a Partnerközponthoz vagy API-khoz.

CSP-k

  • Közvetett CSP-szolgáltatók és közvetlen CSP-partnerek, akik alkalmazásazonosítót + felhasználói hitelesítést használnak, és közvetlenül integrálhatók a Partnerközpont API-ival.

Biztonsági követelmények

A biztonsági követelményekkel kapcsolatos részletekért lásd partnerbiztonsági követelmények.

Biztonságos alkalmazásmodell

A Marketplace-alkalmazásoknak meg kell megszemélyesítenie a CSP-partnerek jogosultságait a Microsoft API-k meghívásához. A bizalmas alkalmazások biztonsági támadásai az ügyféladatok sérüléséhez vezethetnek.

Az új hitelesítési keretrendszer áttekintését és részleteit a Biztonságos alkalmazásmodell keretrendszercímű cikkben találja, amely a piactéri alkalmazások biztonsági kompromisszumokkal való fenntarthatóvá és robusztussá tételének alapelveit és ajánlott eljárásait ismerteti.

Minták

Az alábbi áttekintő dokumentumok és mintakód azt ismertetik, hogy a partnerek hogyan implementálhatják a biztonságos alkalmazásmodell-keretrendszert:

PIHENÉS

Ha REST-hívásokat szeretne kezdeményezni a Biztonságos alkalmazásmodell keretrendszerrel mintakóddal, kövesse az alábbi lépéseket:

  1. Webalkalmazás létrehozása

Webalkalmazás létrehozása

  1. Jelentkezzen be a Azure portálra.

  2. Microsoft Entra-alkalmazás létrehozása.

  3. Adjon delegált alkalmazásengedélyeket a következő erőforrásoknak, az alkalmazás követelményeitől függően. Szükség esetén további delegált engedélyeket adhat hozzá az alkalmazáserőforrásokhoz.

    1. Microsoft Partnerközpont (egyes felhasználók SampleBECApp)

    2. Azure Management API-k (ha Azure API-kat szeretne meghívni)

    3. Windows Azure Active Directory

  4. Győződjön meg arról, hogy az alkalmazás otthoni URL-címe olyan végpontra van állítva, ahol egy élő webalkalmazás fut. Az alkalmazásnak el kell fogadnia a Microsoft Entra bejelentkezési hívásából a azonosító kódot. A következő szakaszban található példakódban például a webalkalmazás https://localhost:44395/fut.

  5. Vegye figyelembe a webalkalmazás Microsoft Entra-azonosítóban megadott beállításainak alábbi adatait:

    • Alkalmazásazonosító
    • Alkalmazás titkos kódja

Jegyzet

Javasoljuk, hogy használjon tanúsítványt az alkalmazás titkos kulcsaként. Az Alkalmazáskulcsot azonban az Azure Portalon is létrehozhatja. A következő szakaszban található mintakód egy alkalmazáskulcsot használ.

Engedélyezési kód lekérése

Be kell szereznie egy engedélyezési kódot a webalkalmazáshoz a Microsoft Entra bejelentkezési hívásából való elfogadáshoz:

  1. Jelentkezzen be a Microsoft Entra ID-fiókba.

    Mindenképpen jelentkezzen be azzal a felhasználói fiókkal, amelyből Partner Center API-hívásokat kezdeményez (például rendszergazdai ügynököt vagy értékesítési ügynökfiókot).

  2. Cserélje le alkalmazásazonosító a Microsoft Entra alkalmazásazonosítóra (GUID).

  3. Amikor a rendszer kéri, jelentkezzen be a felhasználói fiókjába, ahol a többfaktoros hitelesítés konfigurálva van.

  4. Amikor a rendszer kéri, adjon meg további MFA-adatokat (telefonszámot vagy e-mail-címet) a bejelentkezés ellenőrzéséhez.

  5. Miután bejelentkezett, a böngésző átirányítja a hívást a webalkalmazás végpontjához az ön engedélyezési kódjával. Például az alábbi mintakód a https://localhost:44395/-ra irányítja át.

Engedélyezési kód hívásának nyomkövetése

POST https://localhost:44395/ HTTP/1.1
Origin: https://login.microsoftonline.com
Upgrade-Insecure-Requests: 1
Content-Type: application/x-www-form-urlencoded
Accept: text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8
Referrer: https://login.microsoftonline.com/kmsi
Accept-Encoding: gzip, deflate, br
Accept-Language: en-US,en;q=0.9
Cookie: OpenIdConnect.nonce.hOMjjrivcxzuI4YqAw4uYC%2F%2BILFk4%2FCx3kHTHP3lBvA%3D=dHVyRXdlbk9WVUZFdlFONVdiY01nNEpUc0JRR0RiYWFLTHhQYlRGNl9VeXJqNjdLTGV3cFpIWFg1YmpnWVdQUURtN0dvMkdHS2kzTm02NGdQS09veVNEbTZJMDk1TVVNYkczYmstQmlKUzFQaTBFMEdhNVJGVHlES2d3WGlCSlVlN1c2UE9sd2kzckNrVGN2RFNULWdHY2JET3RDQUxSaXRfLXZQdG00RnlUM0E1TUo1YWNKOWxvQXRwSkhRYklQbmZUV3d3eHVfNEpMUUthMFlQUFgzS01RS2NvMXYtbnV4UVJOYkl4TTN0cw%3D%3D

code=AuthorizationCodeValue&id_token=IdTokenValue&<rest of properties for state>

Frissítési jogkivonat lekérése

Ezután az engedélyezési kóddal le kell szereznie egy frissítési jogkivonatot:

  1. Hajtson végre egy POST hívást a Microsoft Entra bejelentkezési végpont https://login.microsoftonline.com/CSPTenantID/oauth2/token-ra az engedélyezési kóddal. Példaként tekintse meg a következő minta hívást.

  2. Jegyezze fel a visszaadott frissítési jogkivonatot.

  3. A frissítési jogkivonat tárolása az Azure Key Vaultban. További információ: Key Vault API dokumentációja.

Fontos

A frissítési jogkivonatot titkosként kell tárolni a „Key Vault”-ban.

Minta frissítési hívás

Helykitöltő kérés:

POST https://login.microsoftonline.com/CSPTenantID/oauth2/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
Content-Length: 966
Expect: 100-continue

Kérelem törzsadatai:

resource=https%3a%2f%2fapi.partnercenter.microsoft.com&client_id=Application-Id&client_secret=Application-Secret&grant_type=authorization_code&code=AuthorizationCodeValue

Helyőrző válasz:

HTTP/1.1 200 OK
Cache-Control: no-cache, no-store
Content-Type: application/json; charset=utf-8

Válasz tartalma:

{"token_type":"Bearer","scope":"user_impersonation","expires_in":"3600","ext_expires_in":"3600","expires_on":"1547581389","not_before":"1547577489","resource":"https://api.partnercenter.microsoft.com","access_token":"AccessTokenValue","id_token":"IDTokenValue"}

Hozzáférési jogkivonat lekérése

Ahhoz, hogy hívásokat kezdeményezhessen a Partnerközpont API-kkal, be kell szereznie egy hozzáférési jogkivonatot. A hozzáférési jogkivonat beszerzéséhez frissítési jogkivonatot kell használnia, mert a hozzáférési jogkivonatok élettartama általában korlátozott (például kevesebb mint egy óra).

Helykitöltő kérés:

POST https://login.microsoftonline.com/CSPTenantID/oauth2/token HTTP/1.1
Content-Type: application/x-www-form-urlencoded
Host: login.microsoftonline.com
Content-Length: 1212
Expect: 100-continue

Kérelem szövege

resource=https%3a%2f%2fapi.partnercenter.microsoft.com&client_id=Application-Id &client_secret= Application-Secret&grant_type=refresh_token&refresh_token=RefreshTokenVlaue&scope=openid

Helyőrző válasz:

HTTP/1.1 200 OK
Cache-Control: no-cache, no-store
Content-Type: application/json; charset=utf-8

A válasz szövege:

{"token_type":"Bearer","scope":"user_impersonation","expires_in":"3600","ext_expires_in":"3600","expires_on":"1547581389","not_before":"1547577489","resource":"https://api.partnercenter.microsoft.com","access_token":"AccessTokenValue","id_token":"IDTokenValue"}

Partnerközpont API-hívások kezdeményezése

A Partnerközpont API-k meghívásához a hozzáférési jogkivonatot kell használnia. Tekintse meg a következő példahívást.

Példa Partnerközpont API-hívására

GET https://api.partnercenter.microsoft.com/v1/customers/CustomerTenantId/users HTTP/1.1
Authorization: Bearer AccessTokenValue
Accept: application/json
X-Locale: en-US
Host: api.partnercenter.microsoft.com

PowerShell

A Partnerközpont PowerShell-modulja használható a Partnerközpont erőforrásainak kezelésére. Ez egy nyílt forráskódú projekt, amelyet a partnerközösség tart fenn, és amelyet a Microsoft hivatalosan nem támogat. Ha problémát tapasztal, kérhet segítséget a közösségtől, vagy nyisson meg egy problémát a GitHub.

A Partnerközpont PowerShell-moduljának használatával csökkentheti a szükséges infrastruktúrát egy hozzáférési jogkivonat engedélyezési kódjának cseréjéhez. Ez a módszer nem kötelező Partnerközpont REST-hívásainak.

A folyamatról további információt Biztonságos alkalmazásmodell PowerShell-dokumentációjában talál.

  1. Telepítse a Microsoft Entra ID és a Partnerközpont PowerShell-moduljait.

    Install-Module AzureAD
    
    Install-Module PartnerCenter
    
  2. A hozzájárulási folyamat végrehajtásához és a szükséges frissítési jogkivonat rögzítéséhez használja a New-PartnerAccessToken parancsot.

    $credential = Get-Credential
    
    $token = New-PartnerAccessToken -ApplicationId 'xxxx-xxxx-xxxx-xxxx' -Scopes 'https://api.partnercenter.microsoft.com/user_impersonation' -ServicePrincipal -Credential $credential -Tenant 'yyyy-yyyy-yyyy-yyyy' -UseAuthorizationCode
    

    Jegyzet

    A ServicePrincipal paramétert a New-PartnerAccessToken paranccsal használja a rendszer, mert egy Web/API típusú Microsoft Entra-alkalmazást használ. Ez az alkalmazástípus megköveteli, hogy egy ügyfélazonosító és titkos kód szerepeljen a hozzáférési jogkivonat-kérelemben. Amikor meghívja a Get-Credential parancsot, a rendszer kérni fogja, hogy adjon meg egy felhasználónevet és jelszót. Adja meg az alkalmazásazonosítót felhasználónévként. Adja meg jelszóként az alkalmazás titkos kódjának nevét. Amikor meghívja a New-PartnerAccessToken parancsot, a rendszer kérni fogja, hogy adja meg újra a hitelesítő adatokat. Adja meg a használt szolgáltatásfiók hitelesítő adatait. Ennek a szolgáltatásfióknak megfelelő engedélyekkel rendelkező partnerfióknak kell lennie.

  3. Másolja ki a frissítési token értékét.

    $token.RefreshToken | clip
    

A frissítési jogkivonat értékét egy biztonságos adattárban kell tárolnia, például az Azure Key Vaultban. A biztonságos alkalmazásmodul PowerShell-lel való használatáról további információt a többtényezős hitelesítés című cikkben talál.