Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Important
Le Kit de développement logiciel (SDK) Python a été mis à jour de la piste 1 à la piste 2. Nous vous recommandons de migrer vers le Kit de développement logiciel (SDK) track 2 dès que possible. Pour obtenir des instructions, consultez ce guide de migration.
Le SDK Python prend en charge les profils de version d’API pour cibler différentes plateformes cloud, telles qu’Azure Stack Hub et Azure global. Utilisez des profils d’API pour créer des solutions pour un cloud hybride.
Les instructions de cet article nécessitent un abonnement Microsoft Azure. Si vous n’en avez pas, vous pouvez obtenir un compte d’essai gratuit.
Profils de version de Python et d’API
Le Kit de développement logiciel (SDK) Python prend en charge les profils d’API suivants :
dernier
Ce profil cible les versions d’API les plus récentes pour tous les fournisseurs de services de la plateforme Azure.2020_09_01_hybrid
Ce profil cible les dernières versions d’API pour tous les fournisseurs de ressources de la plateforme Azure Stack Hub pour les versions 2102 ou ultérieures.2019_03_01_hybrid
Ce profil cible les dernières versions d’API pour tous les fournisseurs de ressources de la plateforme Azure Stack Hub pour les versions 1904 ou ultérieures.Pour plus d’informations sur les profils d’API et Azure Stack Hub, consultez Gérer les profils de version d’API dans Azure Stack Hub.
Installer le Kit de développement logiciel (SDK) Azure Python
Profils
Pour les profils contenant des dates, pour utiliser un autre profil ou version du SDK, remplacez la date dans v<date>_hybrid. Par exemple, pour la version 2008, le profil est 2019_03_01et la chaîne devient v2019_03_01_hybrid. Notez que parfois l’équipe du Kit de développement logiciel (SDK) modifie le nom des packages. Par conséquent, il se peut que le remplacement de la date d’une chaîne par une date différente ne fonctionne pas. Consultez le tableau suivant pour l’association de profils et de versions d’Azure Stack.
| Version d’Azure Stack | Profil |
|---|---|
| 2311 | 2020_09_01 |
| 2301 | 2020_09_01 |
| 2206 | 2020_09_01 |
| 2108 | 2020_09_01 |
| 2102 | 2020_09_01 |
| 2008 | 2019_03_01 |
Pour plus d’informations sur les profils Azure Stack Hub et API, consultez le résumé des profils d’API.
Consultez les profils du Kit de développement logiciel (SDK) Python.
Abonnement
Si vous n’avez pas encore d’abonnement, créez un abonnement et enregistrez l’ID d’abonnement à utiliser ultérieurement. Pour plus d’informations sur la création d’un abonnement, consultez ce document.
Service Principal
Un principal de service et ses informations d’environnement associées doivent être créées et enregistrées quelque part. Le principal de service avec owner un rôle est recommandé, mais en fonction de l’exemple, un contributor rôle peut suffire. Reportez-vous au fichier README dans l’exemple de référentiel pour connaître les valeurs requises. Vous pouvez lire ces valeurs dans n’importe quel format pris en charge par le langage sdk, par exemple à partir d’un fichier JSON (que nos exemples utilisent). Selon l’exemple en cours d’exécution, toutes ces valeurs ne peuvent pas être utilisées. Consultez l’exemple de référentiel pour obtenir des informations supplémentaires ou des exemples de code mis à jour.
ID du locataire
Pour rechercher l’ID d’annuaire ou de locataire de votre Azure Stack Hub, suivez les instructions de cet article.
Inscrire des fournisseurs de ressources
Inscrivez les fournisseurs de ressources requis en suivant ce document. Ces fournisseurs de ressources sont requis en fonction des exemples que vous souhaitez exécuter. Par exemple, si vous souhaitez exécuter un exemple de machine virtuelle, l’inscription du Microsoft.Compute fournisseur de ressources est requise.
Point de terminaison Azure Stack Resource Manager
Azure Resource Manager (ARM) est un framework de gestion qui permet aux administrateurs de déployer, gérer et surveiller des ressources Azure. Azure Resource Manager peut gérer ces tâches en tant que groupe, plutôt que individuellement, dans une seule opération. Vous pouvez obtenir les informations de métadonnées à partir du point de terminaison Resource Manager. Le point de terminaison retourne un fichier JSON avec les informations requises pour exécuter votre code.
-
ResourceManagerEndpointUrl dans le Kit de développement Azure Stack (ASDK) est :
https://management.local.azurestack.external/. -
ResourceManagerEndpointUrl dans les systèmes intégrés est :
https://management.region.<fqdn>/, où<fqdn>est votre nom de domaine complet. - Pour récupérer les métadonnées requises :
<ResourceManagerUrl>/metadata/endpoints?api-version=1.0. Pour connaître les versions d’API disponibles, consultez les spécifications de l’API rest Azure. Par exemple, dans la2020-09-01version du profil, vous pouvez modifier laapi-versionvaleur du2019-10-01fournisseur demicrosoft.resourcesressources.
Exemple JSON :
{
"galleryEndpoint": "https://portal.local.azurestack.external:30015/",
"graphEndpoint": "https://graph.windows.net/",
"portal Endpoint": "https://portal.local.azurestack.external/",
"authentication":
{
"loginEndpoint": "https://login.windows.net/",
"audiences": ["https://management.yourtenant.onmicrosoft.com/3cc5febd-e4b7-4a85-a2ed-1d730e2f5928"]
}
}
Approuver le certificat racine de l’autorité de certification Azure Stack Hub
Si vous utilisez le SDK ASDK, vous devez approuver explicitement le certificat racine de l’autorité de certification sur votre ordinateur distant. Vous n’avez pas besoin d’approuver le certificat racine de l’autorité de certification avec les systèmes intégrés Azure Stack Hub.
Fenêtres
Recherchez l’emplacement du magasin de certificats Python sur votre ordinateur. L’emplacement peut varier en fonction de l’emplacement où vous avez installé Python. Ouvrez une invite de commandes ou une invite PowerShell avec élévation de privilèges, puis tapez la commande suivante :
python -c "import certifi; print(certifi.where())"Notez l’emplacement du magasin de certificats ; par exemple, ~/lib/python3.5/site-packages/certifi/cacert.pem. Votre chemin d’accès particulier dépend de votre système d’exploitation et de la version de Python que vous avez installée.
Faites confiance au certificat racine de l’autorité de certification Azure Stack Hub en l’ajoutant au certificat Python existant :
$pemFile = "<Fully qualified path to the PEM certificate; for ex: C:\Users\user1\Downloads\root.pem>" $root = New-Object System.Security.Cryptography.X509Certificates.X509Certificate2 $root.Import($pemFile) Write-Host "Extracting required information from the cert file" $md5Hash = (Get-FileHash -Path $pemFile -Algorithm MD5).Hash.ToLower() $sha1Hash = (Get-FileHash -Path $pemFile -Algorithm SHA1).Hash.ToLower() $sha256Hash = (Get-FileHash -Path $pemFile -Algorithm SHA256).Hash.ToLower() $issuerEntry = [string]::Format("# Issuer: {0}", $root.Issuer) $subjectEntry = [string]::Format("# Subject: {0}", $root.Subject) $labelEntry = [string]::Format("# Label: {0}", $root.Subject.Split('=')[-1]) $serialEntry = [string]::Format("# Serial: {0}", $root.GetSerialNumberString().ToLower()) $md5Entry = [string]::Format("# MD5 Fingerprint: {0}", $md5Hash) $sha1Entry = [string]::Format("# SHA1 Fingerprint: {0}", $sha1Hash) $sha256Entry = [string]::Format("# SHA256 Fingerprint: {0}", $sha256Hash) $certText = (Get-Content -Path $pemFile -Raw).ToString().Replace("`r`n","`n") $rootCertEntry = "`n" + $issuerEntry + "`n" + $subjectEntry + "`n" + $labelEntry + "`n" + ` $serialEntry + "`n" + $md5Entry + "`n" + $sha1Entry + "`n" + $sha256Entry + "`n" + $certText Write-Host "Adding the certificate content to Python Cert store" Add-Content "${env:ProgramFiles(x86)}\Python35\Lib\site-packages\certifi\cacert.pem" $rootCertEntry Write-Host "Python Cert store was updated to allow the Azure Stack Hub CA root certificate"
Remarque
Si vous utilisez virtualenv pour le développement avec le Kit de développement logiciel (SDK) Python, vous devez ajouter le certificat précédent à votre magasin de certificats d’environnement virtuel. Le chemin d’accès peut ressembler à : ..\mytestenv\Lib\site-packages\certifi\cacert.pem.
Échantillons
Consultez cet exemple de référentiel pour obtenir l’exemple de code update-to-date (track 2). Consultez cet exemple de référentiel pour suivre 1 exemple de code. La racine README.md décrit les exigences générales et chaque sous-répertoire contient un exemple spécifique avec son propre README.md exemple qui décrit comment exécuter cet exemple.
Consultez cet exemple applicable à la version 2008 ou au profil 2019-03-01 Azure Stack et ci-dessous.