Güvenlik Uygulama Modeli çerçevesini etkinleştirme
Microsoft, Microsoft Azure Active Directory Multi-Factor Authentication (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) kimliklerini doğrulamaya Microsoft Azure Active Directory ölçeklenebilir bir çerçeve sunmaktadır.
Api tümleştirme çağrılarına karşı güvenliği yükseltmek için yeni İş Ortağı Merkezi 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.
Kapsam
Bu makale aşağıdaki aktörlerle ilgilidir:
CPV’ler
- CPV, CSP iş ortakları tarafından İş Ortağı Merkezi API’leriyle tümleştirilmek üzere kullanılacak uygulamalar geliştiren bağımsız yazılım satıcısıdır.
- CPV, İş Ortağı Merkezi panosuna veya API’lerine doğrudan erişimi olan bir CSP iş ortağı değildir.
Uygulama kimliği + kullanıcı kimlik doğrulaması kullanan ve doğrudan uygulama API'leriyle tümleştiren CSP dolaylı sağlayıcıları ve CSP İş Ortağı Merkezi ortakları.
Güvenlik gereksinimleri
Güvenlik gereksinimleri hakkında ayrıntılı bilgi için bkz. İş Ortağı Güvenlik Gereksinimleri.
Güvenli Uygulama Modeli
Market uygulamalarının Microsoft API'lerini çağıran 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 verilerini tehlikeye atarak yol açabilirsiniz.
Yeni kimlik doğrulama çerçevesine genel bakış ve ayrıntılar için Güvenli Uygulama Modeli belgesini indirin. Bu belge, market uygulamalarını güvenlik tehlikeye atlarına karşı sürdürülebilir ve sağlam hale etmek için ilkeler ve en iyi yöntemleri kapsar.
Örnekler
Aşağıdaki genel bakış belgeleri ve örnek kod, iş ortaklarının Güvenli Uygulama Modeli açıklar:
-
İş Ortağı Merkezi Java SDK'sı genellikle iş ortakları tarafından kendi kaynak kaynaklarını yönetmek İş Ortağı Merkezi kullanılır. İş ortağı topluluğu tarafından bakımı yapılan açık kaynaklı bir projedir. Bu modül iş ortağı topluluğu tarafından korundu ve Microsoft tarafından resmi olarak desteklenmiyor. Bir sorun yaşamanıza yardımcı olmakiçin topluluktan yardım GitHub bir sorun açabilirsiniz.
REST
Güvenli Uygulama Modeli çerçevesini örnek kodla rest çağrısı yapmak için şu adımları izleyin:
İpucu
Yetkilendirme kodu ve yenileme İş Ortağı Merkezi almak için PowerShell modülünü kullanabilirsiniz. 2. ve 3. adımlar yerine bu seçeneği seçebilirsiniz. Daha fazla bilgi için PowerShell bölümüne ve örneklerine bakın.
Web uygulaması oluşturma
REST çağrıları yapmadan önce bir web uygulamasını İş Ortağı Merkezi web uygulaması oluşturmanız ve kaydetmeniz gerekir.
Azure Portal oturum açın.
Bir Azure Active Directory (Azure AD) uygulaması oluşturun.
Uygulama gereksinimlerine bağlı olarak aşağıdaki kaynaklara temsilcili uygulama izinleri verin. Gerekirse, uygulama kaynakları için daha fazla temsilcili izin ebilirsiniz.
Microsoft İş Ortağı Merkezi (bazı kiracılar bunu SampleBECApp olarak gösterir)
Azure Yönetim API'leri (Azure API'lerini çağırmayı planlıyorsanız)
Windows Azure Active Directory
Uygulamanın giriş URL'sinin canlı bir web uygulamasının çalıştır bulunduğu uç nokta olarak ayarlanmış olduğundan emin olun. Bu uygulamanın Azure AD oturum açma çağrısından yetkilendirme kodunu kabul etmesi gerekir. Örneğin, aşağıdaki bölümdeki örnek koddaweb uygulaması üzerinde çalışıyor.
Azure AD'de web uygulamasının ayarlarından aşağıdaki bilgileri not edin:
- Uygulama Kimliği
- Uygulama gizli dizisi
Not
Uygulama gizli anahtar olarak bir sertifika kullanılması önerilir. Ancak, uygulama anahtarı oluşturmak için uygulama anahtarı Azure portal. Aşağıdaki bölümdeki örnek kod bir uygulama anahtarı kullanır.
Yetkilendirme kodunu alma
Web uygulamanıza Azure AD oturum açma çağrısından kabul etmek için bir yetkilendirme kodu alasanız:
Azure AD'de şu URL'de oturum açın: response_mode=form_post & response_type=code%20id_token & scope=openid%20profile & nonce=1. Api çağrılarını (yönetici aracısı veya satış aracısı hesabı gibi) İş Ortağı Merkezi kullanıcı hesabıyla oturum açabilirsiniz.
Application-Id yerine Azure AD uygulama kimliğinizi (GUID) girin.
İstendiğinde, MFA yapılandırılmış şekilde kullanıcı hesabınızla oturum açın.
İstendiğinde oturum açma bilgilerinizi doğrulamak için ek MFA bilgileri (telefon numarası veya e-posta adresi) girin.
Oturum açtıktan sonra tarayıcı, yetkilendirme kodunuzla çağrıyı web uygulaması uç noktanıza yeniden yönlendirecek. Örneğin, aşağıdaki örnek kod olarak yeniden
https://localhost:44395/yönlendirildi.
Yetkilendirme kodu çağrı izlemesi
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 belirteci alın
Ardından yenileme belirteci almak için yetkilendirme kodunuzu kullansanız gerekir:
Yetkilendirme koduyla Azure AD oturum açma uç noktasına post
https://login.microsoftonline.com/CSPTenantID/oauth2/tokençağrısı yapın. Bir örnek için aşağıdaki örnek çağrısına bakın.Döndürülen yenileme belirteci not alın.
Yenileme belirteci Azure Key Vault. Daha fazla bilgi için bkz. Key Vault API belgeleri.
Önemli
Yenileme belirteci Key Vault’ta gizli dizi 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 gövdesi:
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":"3599","ext_expires_in":"3599","expires_on":"1547579127","not_before":"1547575227","resource":"https://api.partnercenter.microsoft.com","access_token":"Access
Erişim belirteci al
Api'lere çağrı yapmak için önce bir erişim belirteci İş Ortağı Merkezi gerekir. Erişim belirteçleri genellikle çok sınırlı bir yaşam süresine sahip olduğundan (örneğin, bir saatten az) erişim belirteci almak için yenileme belirteci kullanasınız.
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 gövdesi:
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"}
Api İş Ortağı Merkezi çağrıları yapma
İş Ortağı Merkezi API'lerini aramak için erişim belirtec İş Ortağı Merkezi 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
PowerShell
PowerShell İş Ortağı Merkezi yaygın olarak iş ortakları tarafından kendi kaynak kaynaklarını yönetmek için İş Ortağı Merkezi kullanılır. İş ortağı topluluğu tarafından bakımı yapılan açık kaynaklı bir projedir. Bu modül iş ortağı topluluğu tarafından korundu ve Microsoft tarafından resmi olarak desteklenmiyor. bir sorunla karşılaşırsanız, topluluktan yardım alabilir veya GitHub bir sorun açabilirsiniz .
Iş Ortağı Merkezi PowerShell modülünü , bir erişim belirteci için bir yetkilendirme kodu alışverişi yapmak üzere gerekli altyapıyı azaltmak için kullanabilirsiniz. Bu yöntem, Iş 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. App model PowerShell Için güvenli uygulama .
Azure AD ve Iş Ortağı Merkezi PowerShell modüllerini yükler.
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
Web/API türünde BIR Azure AD uygulaması kullanıldığından, ServicePrincipal parametresi New-partneraccesstoken komutuyla birlikte kullanılır. Bu tür bir uygulama, erişim belirteci isteğine bir istemci tanımlayıcısı ve gizli anahtar eklenmesini gerektirir. Get-Credential komutu çağrıldığında, bir Kullanıcı adı ve parola girmeniz istenir. Uygulama tanımlayıcısını Kullanıcı adı olarak girin. Parola olarak uygulama gizli anahtarını girin. New-PartnerAccessToken komutu çağrıldığında, kimlik bilgilerini yeniden girmeniz istenir. Kullanmakta olduğunuz 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 bkz. Multi-Factor Authentication makalesi.