Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Microsoft, Microsoft Entra çok faktörlü kimlik doğrulaması (MFA) mimarisi aracılığıyla bulut çözümü sağlayıcısı (CSP) iş ortaklarının ve denetim masası satıcılarının (CPV) kimliğini doğrulamak için güvenli, ölçeklenebilir bir çerçeve sunmaktadır.
İş Ortağı Merkezi API tümleştirme çağrılarının güvenliğini yükseltmek için yeni modeli kullanabilirsiniz. Bu, tüm tarafların (Microsoft, CSP iş ortakları ve CPV'ler dahil) altyapılarını ve müşteri verilerini güvenlik risklerinden korumalarına yardımcı olur.
CSP programı, müşterilerin iş ortakları aracılığıyla Microsoft ürün ve hizmetlerini satın almasını sağlar. Microsoft ile yapılan sözleşmeye göre, iş ortaklarının satış yaptıkları müşteriler için ortamı yönetmesi ve destek sağlaması gerekir. Bu kanal üzerinden satın alan müşterilerin, iş ortağı işletmesinin müşteri ortamına yüksek ayrıcalıklı yönetici erişimi olduğu için, satın aldıkları iş ortağına yüksek miktarda güven duyması gerekir.
Kapsam
Bu makale hem CSP'lerle hem de CPV'lerle ilgilidir.
CPV'ler
- CPV, CSP iş ortakları tarafından İş Ortağı Merkezi API'leriyle tümleştirilmeye yönelik uygulamalar geliştiren bağımsız bir yazılım satıcısıdır.
- CPV, İş Ortağı Merkezi'ne veya API'lere doğrudan erişimi olan bir CSP iş ortağı değildir.
CSP'ler
- Uygulama kimliği + kullanıcı kimlik doğrulaması kullanan ve İş Ortağı Merkezi API'leriyle doğrudan tümleşen CSP dolaylı sağlayıcıları ve CSP doğrudan iş ortakları.
Güvenlik gereksinimleri
Güvenlik gereksinimleri hakkında ayrıntılı bilgi için bkz. İş Ortağı Güvenlik Gereksinimleri.
Güvenli Uygulama Modeli
Microsoft Market uygulamalarının Microsoft API'lerini çağırmak için CSP iş ortağı ayrıcalıklarının kimliğine bürünmeleri gerekir. Bu hassas uygulamalara yönelik güvenlik saldırıları, müşteri verilerinin gizliliğinin tehlikeye atılmasına neden olabilir.
Yeni kimlik doğrulama çerçevesine genel bakış ve ayrıntılar için Market uygulamalarını güvenlik risklerinden sürdürülebilir ve sağlam hale getirmek için ilkeleri ve en iyi uygulamaları kapsayan Güvenli Uygulama Modeli çerçevesine bakın.
Örnekler
Aşağıdaki genel bakış belgeleri ve örnek kod, iş ortaklarının Güvenli Uygulama Modeli çerçevesini nasıl uygulayabileceğini açıklar:
-
İş Ortağı Merkezi Java SDK, İş Ortağı Merkezi kaynaklarını yönetmek için kullanılabilir. İş ortağı topluluğu tarafından sürdürülen ve Microsoft tarafından resmi olarak desteklenmeyen açık kaynaklı bir projedir. topluluk yardım alabilir veya bir sorunla karşılaşırsanız GitHub 'da bir sorun açabilirsiniz.
DİNLENME
Örnek kodla Güvenli Uygulama Modeli çerçevesiyle REST çağrıları yapmak için şu adımları izleyin:
- Güvenli Uygulama Modeli çerçevesini etkinleştirme
- Güvenli Uygulama Modeli çerçevesini etkinleştirme
- Kapsam
- Güvenlik gereksinimleri
- Güvenli Uygulama Modeli
- Örnekler
- REST
- PowerShell
Web uygulaması oluşturma
Azure portalınaoturum açın.
Bir Microsoft Entra uygulaması oluşturun.
Uygulamanızın gereksinimlerine bağlı olarakaşağıdaki kaynaklar için temsilcili uygulama izinleri verin. Gerekirse, uygulama kaynakları için daha fazla temsilci izni ekleyebilirsiniz.
Microsoft İş Ortağı Merkezi (bazı müşteriler SampleBECAppgösteriyor)
Azure Yönetim API'leri (Azure API'lerini çağırmayı planlıyorsanız)
Windows Azure Active Directory
Uygulamanızın giriş URL'sinin canlı bir web uygulamasının çalıştığı bir uç noktaya ayarlandığından emin olun. Bu uygulamanın Microsoft Entra oturum açma çağrısından yetkilendirme kodunu kabul etmesi gerekir. Örneğin, aşağıdaki bölümde örnek kodunda web uygulaması
https://localhost:44395/konumunda çalışır.Web uygulamanızın Microsoft Entra Id'deki ayarlarından aşağıdaki bilgileri not edin:
- Uygulama Kimliği
- Uygulama sırrı
Not
Uygulama gizli bilginiz olarak birsertifika kullanmanız önerilir. Ancak, Azure portalında bir uygulama anahtarı da oluşturabilirsiniz. Aşağıdaki bölüm içindeki örnek kod bir uygulama anahtarı kullanır.
Yetkilendirme kodunu alma
Web uygulamanızın Microsoft Entra oturum açma çağrısından kabul etmesi için bir yetkilendirme kodu almanız gerekir:
Microsoft Entra IDiçin oturum açın.
Lütfen İş Ortağı Merkezi API çağrılarını yaptığınız kullanıcı hesabıyla (yönetici aracısı veya satış aracısı hesabı gibi) oturum açtığınızdan emin olun.
Application-Id değerini Microsoft Entra uygulama kimliğiniz (GUID) ile değiştirin.
İstendiğinde, MFA'nın yapılandırıldığı kullanıcı hesabınızla oturum açın.
İstendiğinde, oturum açma bilgilerinizi doğrulamak için daha fazla MFA bilgisi (telefon numarası veya e-posta adresi) girin.
Oturum açtıktan sonra tarayıcı, çağrıyı yetkilendirme kodunuzla web uygulaması uç noktanıza yönlendirir. Örneğin, aşağıdaki örnek kod
https://localhost:44395/'a yönlendirilir.
Yetkilendirme kodu çağrı izleme
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>
Yenileme jetonu al
Ardından yenileme belirteci almak için yetkilendirme kodunuzu kullanmanız gerekir:
Yetkilendirme koduyla
https://login.microsoftonline.com/CSPTenantID/oauth2/tokenMicrosoft Entra oturum açma uç noktasına bir POST çağrısı yapın. Örnek olarak, aşağıdaki çağrı örneğinebakın.Döndürülen yenileme belirtecini not edin.
Yenileme belirtecini Azure Key Vault'ta depolayın. Daha fazla bilgi için Key Vault API belgelerine bakın.
Önemli
Yenileme belirteci Key Vault'ta gizli olarak depolanmalıdır.
Örnek yenileme çağrısı
Yer tutucu isteği:
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
İstek içeriği:
resource=https%3a%2f%2fapi.partnercenter.microsoft.com&client_id=Application-Id&client_secret=Application-Secret&grant_type=authorization_code&code=AuthorizationCodeValue
Yer tutucu yanıtı:
HTTP/1.1 200 OK
Cache-Control: no-cache, no-store
Content-Type: application/json; charset=utf-8
Yanıt gövdesi:
{"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"}
Erişim belirteci alma
İş Ortağı Merkezi API'lerine çağrı yapabilmek için önce bir erişim belirteci almanız gerekir. Erişim belirteçlerinin kullanım ömrü genellikle sınırlı olduğundan (örneğin, bir saatten az) erişim belirteci almak için yenileme belirteci kullanmanız gerekir.
Yer tutucu isteği:
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
İstek içeriği:
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
Yer tutucu yanıtı:
HTTP/1.1 200 OK
Cache-Control: no-cache, no-store
Content-Type: application/json; charset=utf-8
Yanıt gövdesi:
{"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"}
İş Ortağı Merkezi API çağrıları yapma
İş Ortağı Merkezi API'lerini çağırmak için erişim belirtecinizi kullanmanız gerekir. Aşağıdaki örnek çağrıya bakın.
Örnek İş Ortağı Merkezi API çağrısı
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
API çağrılarını doğrulama MFA ile tümleştirilmiş
MFA ile geçerli API çağrıları yaptığınızdan emin olmak için istek üst bilginizde validatemfa sağlayabilirsiniz. Bunu yaparken, yanıt içinde isMfaCompliant ifadesini arayın.
Örnek İstek
GET https://api.partnercenter.microsoft.com/v1/customers/CustomerTenantId/users HTTP/1.1
...
ValidateMfa: true <-- Required header for MFA validation
...
Örnek Yanıt Üst Bilgileri
...
isMfaCompliant: true <-- Key header indicating MFA compliance
...
PowerShell
İş Ortağı Merkezi PowerShell modülü İş Ortağı Merkezi kaynaklarını yönetmek için kullanılabilir. İş ortağı topluluğu tarafından sürdürülen ve Microsoft tarafından resmi olarak desteklenmeyen açık kaynaklı bir projedir. topluluk yardım alabilir veya bir sorunla karşılaşırsanız GitHub 'da bir sorun açabilirsiniz.
Erişim belirteci için yetkilendirme kodu değişimi için gerekli altyapıyı azaltmak için İş Ortağı Merkezi PowerShell modülünü kullanabilirsiniz. Bu yöntem, İş Ortağı Merkezi REST çağrılarıyapmak için isteğe bağlıdır.
Bu işlem hakkında daha fazla bilgi için Bkz. Güvenli Uygulama Modeli PowerShell belgeleri.
Microsoft Entra Id ve İş Ortağı Merkezi PowerShell modüllerini yükleyin.
Install-Module AzureADInstall-Module PartnerCenteronay işlemini gerçekleştirmek ve gerekli yenileme belirtecini yakalamak için New-PartnerAccessToken komutunu kullanın.
$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' -UseAuthorizationCodeNot
Microsoft Entra uygulaması Web/API türüne sahip olduğundan ServicePrincipal parametresi New-PartnerAccessToken komutuyla kullanılır. Bu tür bir uygulama, erişim belirteci isteğine bir istemci tanımlayıcısı ve gizli dizi eklenmesini gerektirir. Get-Credential komutu çağrıldığında bir kullanıcı adı ve parola girmeniz istenir. Kullanıcı adı olarak uygulama tanımlayıcısını girin. Şifre olarak uygulama gizli anahtarını girin. New-PartnerAccessToken komutu çağrıldığında, kimlik bilgilerini yeniden girmeniz istenir. Kullandığınız hizmet hesabının kimlik bilgilerini girin. Bu hizmet hesabı, uygun izinlere sahip bir iş ortağı hesabı olmalıdır.
Yenileme belirteci değerini kopyalayın.
$token.RefreshToken | clip
Yenileme belirteci değerini Azure Key Vault gibi güvenli bir depoda depolamanız gerekir. PowerShell ile güvenli uygulama modülünü kullanma hakkında daha fazla bilgi için çok faktörlü kimlik doğrulaması makalesine bakın.