Jeton oluşturma işlemini otomatikleştirin

Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin.
bilgi

Edge API ile SAML kullanılırken SAML onayından OAuth2 erişim ve yenileme jetonları almak için kullandığınız işleme geçiş kodu akışı adı verilir. Şifre kodu akışında, tek kullanımlık bir şifre kodu almak için tarayıcıyı kullanırsınız. Bu kodu daha sonra OAuth2 jetonlarını almak için kullanırsınız.

Ancak ortamınız, test otomasyonu veya sürekli entegrasyon/sürekli dağıtım (CI/CD) gibi yaygın geliştirme görevleri için otomasyonu destekleyebilir. SAML etkinleştirildiğinde bu görevleri otomatikleştirmek için tarayıcıdan bir geçiş kodu kopyalayıp yapıştırmanıza gerek kalmadan OAuth2 jetonlarını alıp yenilemenin bir yolunu bulmanız gerekir.

Makine kullanıcıları hakkında

Apigee Edge, SAML'nin etkin olduğu kuruluşunuzda makine kullanıcılarını destekler. Makine kullanıcıları yalnızca otomasyon için kullanılır ve doğrudan bir kişi tarafından erişilmez.

Bir makine kullanıcısı, geçiş kodu belirtmek zorunda kalmadan OAuth2 jetonları alabilir. Bu sayede, Edge API'yi kullanarak OAuth2 jetonlarını alma ve yenileme sürecini tamamen otomatikleştirebilirsiniz.

Jeton oluşturma sürecini otomatikleştirme adımları

Jeton oluşturma sürecini otomatikleştirmek için:

Adım Açıklama
1 SAML kimlik bölgenizde bir makine kullanıcısı oluşturma
2 Edge kuruluşunuzdaki makine kullanıcısına gerekli rolleri atayın
3 Makine kullanıcılarının OAuth2 jetonlarını alma

Video: Makine kullanıcısı kimlik bilgilerini kullanarak Apigee Edge API'lerine erişimi nasıl otomatikleştireceğinizi öğrenmek için kısa bir video izleyin.

SAML kimlik bölgeleri için makine kullanıcılarını yönetme

Apigee, makine kullanıcı hesapları oluşturmak ve yönetmek için makine kullanıcısı yönetimi komut satırı arayüzünü (KSA) sağlar. Makine kullanıcı yönetimi KSA'sını kullanma adımları aşağıdaki bölümlerde açıklanmıştır.

KSA'yı kullanma

Makine kullanıcı yönetimi KSA'sını kullanmak için önce aşağıdaki dosyayı indirip açın: usermgmt.tar.gz(1)

KSA'yı çağırma biçimi aşağıdaki gibidir:

usermgmt_platform [command] [flags]

Aşağıdaki tabloda, desteklenen platformlar ve makine kullanıcı yönetimi KSA'sını çağırmak için kullanılan ilgili komut özetlenmektedir. (Yürütülebilir dosyalar usermgmt dizininde bulunur.)

Platform 32 bit 64 bit
Linux usermgmt_linux_386 usermgmt_linux_amd64
Mac usermgmt_darwin_386 usermgmt_darwin_amd64
Windows usermgmt_windows_386 usermgmt_windows_amd64

Aşağıdaki tabloda, belirtilebilecek komutlar özetlenmektedir.

Komut Daha fazla bilgi
create Kimlik bölgesinde makine kullanıcısı oluşturma
delete Kimlik bölgesinde makine kullanıcısını silme
help KSA'yı kullanma konusunda yardım alma
list Kimlik bölgesindeki tüm makine kullanıcılarını listeleme
reset Kimlik bölgesindeki bir makine kullanıcısının şifresini sıfırlama

İsteğe bağlı olarak, belirtilen komutla ilgili yardımı görüntülemek için aşağıdaki işaretlerden birini iletebilirsiniz: -h veya --help

KSA'da oturum açma

CLI'yı 24 saatlik bir süre içinde ilk kez çalıştırdığınızda zoneadmin hesap kimlik bilgilerinizi girmeniz istenir.

Enter your Apigee credentials
Username: zoneadmin-username
Password: zoneadmin-password
If your user is opted with MFA, enter MFA code. Otherwise press enter to skip.
MFA: mfa-code_or_enter_to_skip

Makine kullanıcı yönetimi KSA'sı, yerel makinenizde bir erişim jetonu saklar. Böylece 24 saatlik süre içinde yalnızca bir kez oturum açmanız gerekir.

KSA'yı kullanma konusunda yardım alma

usermgmt_platform help komutunu kullanarak CLI kullanım bilgilerini görüntüleyin. Desteklenen platformların listesi için KSA'yı kullanma başlıklı makaleyi inceleyin.

usermgmt_platform help

Aşağıdaki yardım bilgileri gösterilir:

A command-line interface (CLI) to manage machine user accounts to automate
Apigee identity zone management. Use the CLI to create, list, delete,
and reset the password for machine users.

Usage:
  usermgmt [flags]
  usermgmt [command]

Available Commands:
  create  Creates a machine users in an identity zone.
  delete  Deletes a machine users in an identity zone.
  help    Help about any command
  list    Lists the machine users in an identity zone.
  reset   Resets the password for a machine user in an identity zone.

Flags:
  -h, --help               help for usermgmt

Use "usermgmt [command] --help" for more information about a command.

Komut satırında hem komutu hem de -h veya --help işaretini ileterek belirli bir komutla ilgili yardımı görüntüleyin.

Örneğin, list komutuyla ilgili yardım almak için:

usermgmt_platform list -h

Aşağıdaki yardım bilgileri gösterilir:

Lists the machine users in an identity zone.

Usage:
  usermgmt list [flags]

Flags:
  -h, --help   help for list

Kimlik bölgesinde makine kullanıcısı oluşturma

usermgmt_platform create komutunu kullanarak bir kimlik bölgesinde makine kullanıcısı oluşturun. Desteklenen platformların listesi için KSA'yı kullanma başlıklı makaleyi inceleyin.

  1. Şu komutu girin:
    usermgmt_platform create

    Kimlik bölgelerinin listesi gösterilir:

    myzone1
    myzone2
  2. İstemde bir bölge adı girin:
    Enter a zone name: myzone1
  3. Makine kullanıcısı için bir kullanıcı adı girin:
    Create a Machine User
    Username: machineuser1@mycompany.com
  4. Makine kullanıcısı için bir şifre girin. İstendiğinde şifreyi tekrar girin.
    Password: password
    Re-enter password: password 

    Kullanıcı oluşturulur.

    Created machine user machineuser1@mycompany.com

Kimlik bölgesindeki tüm makine kullanıcılarını listeleme

usermgmt_platform list komutunu kullanarak bir kimlik bölgesindeki tüm makine kullanıcılarını listeleyin. Desteklenen platformların listesi için KSA'yı kullanma başlıklı makaleyi inceleyin.

  1. Şu komutu girin:
    usermgmt_platform list
    Kimlik bölgelerinin listesi gösterilir:
    myzone1
    myzone2
  2. İstemde bir bölge adı girin:
    Enter a zone name: myzone1

    Kimlik bölgesindeki makine kullanıcılarının listesi gösterilir:

    Machine users in the zone:
    machineuser1@mycompany.com
        

Kimlik bölgesindeki bir makine kullanıcısının şifresini sıfırlama

usermgmt_platform reset komutunu kullanarak bir kimlik bölgesindeki makine kullanıcısının şifresini sıfırlayın. Desteklenen platformların listesi için KSA'yı kullanma başlıklı makaleyi inceleyin.

  1. Şu komutu girin:
    usermgmt_platform reset

    Kimlik bölgelerinin listesi gösterilir:

    myzone1
    myzone2
  2. İstemde bir bölge adı girin:
    Enter a zone name: myzone1
  3. Şifresini sıfırlamak istediğiniz makine kullanıcısının kullanıcı adını girin:
    Reset User Password
    Enter the username for the machine user
    Username: machineuser1@mycompany.com
  4. Makine kullanıcısı için yeni bir şifre girin. İstendiğinde şifreyi tekrar girin.
    Enter the new password: password
    Re-enter password: password

    Şifre sıfırlanır.

    Reset password for machine user machineuser1@mycompany.com

Kimlik bölgesinde makine kullanıcısını silme

usermgmt_platform delete komutunu kullanarak bir kimlik bölgesindeki makine kullanıcısını silin. Desteklenen platformların listesi için KSA'yı kullanma başlıklı makaleyi inceleyin.

  1. Şu komutu girin:
    usermgmt_platform delete
    Kimlik bölgelerinin listesi gösterilir:
    myzone1
    myzone2
  2. İstemde bir bölge adı girin:
    Enter a zone name: myzone1
  3. Silmek istediğiniz makine kullanıcısının kullanıcı adını girin:
    Delete User
    Enter the username for the machine user
    Username: machineuser1@mycompany.com 

    Makine kullanıcısı silinir.

    Deleted user machineuser1@mycompany.com

Edge kuruluşunuzdaki makine kullanıcısına gerekli rolleri atama

Kullanıcı arayüzünü kullanarak makine kullanıcısını SAML'nin etkin olduğu Edge kuruluşunuza ekleyin ve Kullanıcı ekleme bölümünde açıklandığı gibi gerekli rolleri (ör. kuruluş yöneticisi) atayın.

Makine kullanıcısının OAuth2 jetonlarını alma

Makine kullanıcıları için OAuth2 ve SAML bölgelerindeki makine kullanıcıları başlıklı makalelerde açıklandığı gibi, acurl(1) ve get_token(1) yardımcı programlarını kullanarak jeton oluşturma sürecini otomatikleştirebilir ve makine kullanıcıları için jeton önbelleğe almayı yönetebilirsiniz.

Makine kullanıcısının OAuth2 jetonlarını curl ile manuel olarak almak için:

  1. Makine kullanıcısının kullanıcı adını ve şifresini kodlamak için tercih ettiğiniz URL kodlama aracını kullanın.

    Uyarı: Makine kullanıcı kimlik bilgilerinin güvenliğinin ihlal edilmemesi için dahili bir URL kodlama aracı kullanın.

  2. Aşağıdaki örnekte gösterilen SAML jeton uç noktasını çağırarak ilk erişim ve yenileme jetonlarını oluşturun:
    curl -H "Content-Type: application/x-www-form-urlencoded;charset=utf-8" \
      -H "accept: application/json;charset=utf-8" \
      -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \
      https://zoneName.login.apigee.com/oauth/token -s \
      -d 'grant_type=password&username=machineusername&password=machineuserpassword'

    Yetkilendirme için ayrılmış OAuth2 istemci kimlik bilgisi ZWRnZWNsaTplZGdlY2xpc2VjcmV0 değerini Authorization üstbilgisinde iletin. Çağrı, erişim ve yenileme jetonlarını stdout konumuna yazdırır.

  3. Erişim jetonunu, Taşıyıcı üstbilgisi olarak bir Edge yönetim API'si çağrısına iletin:
    curl -H "Authorization: Bearer ACCESS_TOKEN" \
      https://api.enterprise.apigee.com/v1/organizations/orgName
  4. Erişim jetonunun süresi dolduğunda, aşağıdaki örnekte gösterildiği gibi yenileme jetonunu SAML jetonu uç noktasına göndererek yenileyebilirsiniz:
    curl -H "Content-Type:application/x-www-form-urlencoded;charset=utf-8" \
      -H "Accept: application/json;charset=utf-8" \
      -H "Authorization: Basic ZWRnZWNsaTplZGdlY2xpc2VjcmV0" -X POST \
      https://zoneName.login.apigee.com/oauth/token \
      -d 'grant_type=refresh_token&refresh_token=REFRESH_TOKEN'

(1) Telif Hakkı 2023 Google LLC
usermgmt, acurl ve get_token araçları, https://cloud.google.com/terms/service-terms adresinde bulunan Hizmete Özel Şartlar da dahil olmak üzere Google Cloud Platform kullanımınızı yöneten sözleşme kapsamında "Yazılım" olarak sunulmaktadır.