Azure Pipelines Azure Key Vault gizli dizileri kullanınUse Azure Key Vault secrets in Azure Pipelines

Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019Azure Pipelines | Azure DevOps Server 2020 | Azure DevOps Server 2019

Not

Bu makale, işlem hattınızda Azure Anahtar Kasası ile çalışırken size kılavuzluk eder.This article will guide you through working with Azure key vault in your pipeline. gizli değişkenler veya başvuru değişkeni grupları ayarlamak istiyorsanız, daha fazla ayrıntı için bkz. değişkenleri tanımlama .if you want to set secret variables or reference variable groups, see Define variables for more details.

Azure Key Vault kullanıcıların hassas bilgileri güvenli bir şekilde depolamasına, yönetmesine ve erişmesine izin verir.Azure Key Vault allows users to securely store, manage, and access sensitive information. Gizli diziler API anahtarları, kimlik bilgileri, sertifikalar vb. olabilir.Secrets can be API keys, credentials, certificates, etc.

Azure Key Vault hizmet iki tür kapsayıcıyı destekler: kasa ve yönetilen HSM (donanım güvenlik modülü) havuzları.Azure Key Vault service supports two types of containers: vaults and managed HSM (hardware security module) pools. Kasalar, yazılım ve HSM destekli anahtarlar, gizlilikler ve sertifikalar depolamayı destekler, ancak yönetilen HSM havuzları yalnızca HSM destekli anahtarları destekler.Vaults support storing software and HSM-backed keys, secrets, and certificates, while managed HSM pools only support HSM-backed keys.

Bu öğreticide şunların nasıl yapıldığını öğrenirsiniz:In this tutorial, you will learn how to:

  • Azure CLı kullanarak Azure Key Vault oluşturmaCreate an Azure Key Vault using Azure CLI
  • Gizli dizi ekleyin ve Azure Anahtar Kasası 'na erişimi yapılandırınAdd a secret and configure access to Azure key vault
  • İşlem hattınızda gizli dizileri kullanmaUse secrets in your pipeline

ÖnkoşullarPrerequisites

Azure Key Vault oluşturmaCreate an Azure Key Vault

Azure Anahtar kasaları Azure portal veya Azure CLı aracılığıyla oluşturulup yönetilebilir.Azure key vaults can be created and managed through the Azure portal or Azure CLI. Azure anahtar kasanızı oluşturmak için bu öğreticide Azure CLı kullanacağız.We will use Azure CLI in this tutorial to create our Azure Key vault.

Azure portalındaoturum açın ve sağ üst köşedeki Cloud Shell düğmesini seçin.Sign in to the Azure Portal, and then select the Cloud Shell button in the upper-right corner.

  1. Hesabınızla ilişkili birden fazla Azure aboneliğiniz varsa, varsayılan bir abonelik belirtmek için aşağıdaki komutu kullanın.If you have more than one Azure subscription associated with your account, use the command below to specify a default subscription. az account listAboneliklerinizin bir listesini oluşturmak için ' i kullanabilirsiniz.You can use az account list to generate a list of your subscriptions.

    az account set --subscription <your_subscription_name_or_ID>
    
  2. Varsayılan Azure bölgenizi ayarlamak için aşağıdaki komutu çalıştırın.Run the following command to set your default Azure region. az account list-locationsKullanılabilir bölgelerin bir listesini oluşturmak için ' i kullanabilirsiniz.You can use az account list-locations to generate a list of available regions.

    az configure --defaults location=<your_region>
    

    Örneğin, bu komut westus2 bölgesini seçer:For example, this command will select the westus2 region:

    az configure --defaults location=westus2
    
  3. Yeni bir kaynak grubu oluşturmak için aşağıdaki komutu çalıştırın.Run the following command to create a new resource group. Kaynak grubu, bir Azure çözümüne ilişkin kaynakları tutan bir kapsayıcıdır.A resource group is a container that holds related resources for an Azure solution.

    az group create --name <your-resource-group>
    
  4. Yeni bir Anahtar Kasası oluşturmak için aşağıdaki komutu çalıştırın.Run the following command to create a new key vault.

    az keyvault create \
      --name <your-key-vault> \
      --resource-group <your-resource-group>
    
  5. Anahtar Kasanızda yeni bir gizli dizi oluşturmak için aşağıdaki komutu çalıştırın.Run the following command to create a new secret in your key vault. Gizlilikler anahtar değer çifti olarak depolanır.Secrets are stored as a key value pair. Aşağıdaki örnekte, Password anahtar ve mysecretpassword değeridir.In the example below, Password is the key and mysecretpassword is the value.

    az keyvault secret set \
      --name "Password" \
      --value "mysecretpassword" \
      --vault-name <your-key-vault-name>
    

Proje oluşturmaCreate a project

Azure Pipelinesoturum açın.Sign in to Azure Pipelines. Daha sonra tarayıcınız şuraya gidip https://dev.azure.com/your-organization-name Azure DevOps panonuzu görüntüler.Your browser will then navigate to https://dev.azure.com/your-organization-name and displays your Azure DevOps dashboard.

Kuruluşunuzda henüz bir projeniz yoksa yeni bir proje oluşturmaya başlamak için proje oluştur ' u seçin.If you don't have any projects in your organization yet, select Create a project to get started to create a new project. Aksi takdirde, panonun sağ üst köşesindeki Yeni proje düğmesini seçin.Otherwise, select the New project button in the upper-right corner of the dashboard.

Depo oluşturmaCreate a repo

Komut zincirimizi oluşturmak için YAML kullanacağız, ancak ilk olarak yeni bir depo oluşturmamız gerekiyor.We will use YAML to create our pipeline but first we need to create a new repo.

  1. Azure DevOps kuruluşunuzda oturum açın ve projenize gidin.Sign in to your Azure DevOps organization and navigate to your project.

  2. Repos' a gidin ve ardından BIR Benioku dosyası ile yeni bir depoyu başlatmak için Başlat ' ı seçin.Go to Repos, and then select Initialize to initialize a new repo with a README.

    Depoyu oluşturma

Yeni işlem hattı oluşturmaCreate a new pipeline

  1. İşlem hatları' na gidin ve ardından Yeni işlem hattı' nı seçin.Go to Pipelines, and then select New Pipeline.

  2. Git Azure Repos seçin.Select Azure Repos Git.

    İşlem hattını oluşturma

  3. Daha önce oluşturduğunuz depoyu seçin.Select the repo you created earlier. Azure DevOps projenizle aynı ada sahip olmalıdır.It should have the same name as your Azure DevOps project.

  4. Başlatıcı işlem hattı seçin.Select Starter pipeline.

  5. Varsayılan işlem hattı, Echo komutlarını çalıştıran birkaç komut dosyası içerir.The default pipeline will include a few scripts that run echo commands. Bunları silebilmemiz için bu gerekli değildir.Those are not needed so we can delete them. Yeni YAML dosyanız şimdi şöyle görünür:Your new YAML file will now look like this:

    trigger:
    - main
    
    pool:
      vmImage: 'ubuntu-latest'
    
    steps:
    
  6. Yardımcı panelini genişletmek için yardımcıyı göster ' i seçin.Select Show assistant to expand the assistant panel. Bu panel, işlem hattı görevlerinin rahat ve aranabilir bir listesini sağlar.This panel provides convenient and searchable list of pipeline tasks.

    İşlem hattı yardımcısını gösterme

  7. Kasa araması yapın ve Azure Key Vault görevi seçin.Search for vault and select the Azure Key Vault task.

    Azure Key Vault görevi seçme

  8. Azure aboneliğinizi seçin ve yetkilendirme yapın, ardından Azure Anahtar Kasası görevini seçip Ekle ' yi seçerek işlem hattınıza ekleyin.Select and authorize your Azure subscription then select the Azure key vault task and select Add to add it to your pipeline. Bu görev, işlem hattının Azure Key Vault bağlanmasına ve ardışık düzen değişkenleri olarak kullanılacak gizli dizileri almasına izin verir.This task allows the pipeline to connect to your Azure Key Vault and retrieve secrets to use as pipeline variables.

    Not

    Gizli dizileri tüm iş için kullanılabilir yap özelliği şu anda Azure DevOps Server 2019 ve 2020 ' de desteklenmemektedir.The Make secrets available to whole job feature is not currently supported in Azure DevOps Server 2019 and 2020.

    Azure Key Vault görevini yapılandırma

    İpucu

    YAML, çalışmak için belirli bir Aralık ve girintileme gerektirir.YAML requires a specific spacing and indentation to work. YAML dosyanızın doğru şekilde girintilendiğinizden emin olun.Make sure your YAML file is indented properly.

  9. İşlem hattınızı henüz kaydetme veya çalıştırma.Do not save or run your pipeline just yet. Önce işlem hattımız Azure Key Vault erişim için doğru izinleri vermemiz gerekir.We must first give our pipeline the right permissions to access Azure Key Vault. Çalışma tarayıcınızı açık tutun, Anahtar Kasası izinlerini ayarladıktan sonra burada kalan adımları devam edeceğiz.Keep your working browser tab open, we will resume the remaining steps here once we set up the key vault permissions.

Azure Key Vault erişim ilkelerini ayarlamaSet up Azure Key Vault access policies

  1. Azure Portalgidin.Go to Azure portal.

  2. Daha önce oluşturduğunuz anahtar kasasını aramak için arama çubuğunu kullanın.Use the search bar to search for the key vault you created earlier.

    Azure Key Vault aranıyor

  3. Ayarlar altında erişim ilkeleri' ni seçin.Under Settings Select Access policies.

  4. Yeni bir ilke eklemek için erişim Ilkesi Ekle ' yi seçin.Select Add Access Policy to add a new policy.

  5. Gizli izinler için Al ve Listele' yi seçin.For Secret permissions, select Get and List.

  6. Hizmet sorumlusu seçme ve kendiniz arama yapma seçeneğini belirleyin.Select the option to select a service principal and search for yours. Güvenlik sorumlusu, Azure kaynaklarına erişim isteyen bir Kullanıcı, Grup, hizmet veya uygulamayı temsil eden bir nesnedir.A security principal is an object that represents a user, group, service, or application that's requesting access to Azure resources.

  7. Ekle ' yi seçerek erişim ilkesini oluşturun ve kaydedin.Select Add to create the access policy, then Save.

İşlem hattını çalıştırma ve gözden geçirmeRun and review the pipeline

  1. Kaldığınız yerden önceki sekmeye dönün.Return to the previous tab where we left off.

  2. Kaydet ' i seçin ve sonra değişikliklerinizi işleyin ve işlem hattını tetikleyin.Select Save then Save again to commit your changes and trigger the pipeline.

    Not

    İstenirse, Azure kaynaklarına işlem hattı erişimine izin vermeniz istenebilir.You may be asked to allow the pipeline access to Azure resources, if prompted select Allow. İşlem hattınızı yalnızca bir kez onaylamanız gerekir.You will only have to approve your pipeline once.

  3. Günlükleri görüntülemek için komut satırı işini seçin.Select the CmdLine job to view the logs. Gerçek gizli dizi 'nın günlüklerin bir parçası olmadığına unutmayın.Note that the actual secret is not part of the logs.

    Komut satırı görevini gözden geçirme

  4. İşlem hattı özetine dönün ve yayımlanan yapıtı seçin.Return to pipeline summary and select the published artifact.

    İşlem hattı Özeti

  5. İş ' ın altında, açmak için secret.txt dosyasını seçin.Under Job select the secret.txt file to open it.

    Yapıtın içinde gizli dizi görüntüleme

  6. Metin dosyası verilerimizi içermelidir: daha önce mysecretpassword .The text file should contain our secret: mysecretpassword from earlier.

Kaynakları temizlemeClean up resources

Oluşturduğunuz kaynakları silmek için aşağıdaki adımları izleyin:Follow the steps below to delete the resources you created:

  1. Projenizi barındırmak için yeni bir kuruluş oluşturduysanız, bkz. kuruluşunuzu silme, yoksa projenizi silme.If you created a new organization to host your project, see how to delete your organization, otherwise delete your project.

  2. Bu öğretici sırasında oluşturulan tüm Azure kaynakları tek bir kaynak grubu altında barındırılır bir ardışık düzen Ineskeyvaultresourcegroup.All Azure resources created during this tutorial are hosted under a single resource group PipelinesKeyVaultResourceGroup. Kaynak grubunu ve tüm kaynaklarını silmek için aşağıdaki komutu çalıştırın.Run the following command to delete the resource group and all of its resources.

    az group delete --name PipelinesKeyVaultResourceGroup
    

Sonraki adımlarNext steps