Edge Mikro Ağ Geçidi'ni kurma ve yapılandırma

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

Edge Microgateway v. 2.3.x

Genel Bakış

Bu eğitimde, Edge Microgateway örneğini etkin ve çalışır hale getirmek için gereken adımlar açıklanmaktadır.

Buradaki adımları tamamladıktan sonra, API isteklerini işleyebilen, tam olarak yapılandırılmış ve çalışan bir Edge Microgateway kurulumunuz olur. Edge Microgateway üzerinden bir arka uç hedefine güvenli API çağrıları yaparak kurulumu test edeceksiniz. Ayrıca Microgateway'e ani yükselmeyi önleme eklentisini nasıl ekleyeceğinizi de öğreneceksiniz.

Bu kılavuz aşağıdaki bölümlere ayrılmıştır:

Ön koşul: Edge Microgateway'i yükleyin

Edge Microgateway'i yükleme başlıklı makaledeki talimatları uygulayın. Yükleme işlemini tamamladığınızda bu eğitimdeki adımları uygulamaya hazır olursunuz.

Yükleme işlemini tamamladığınızda bir sonraki bölüm olan "1. Bölüm: Edge Microgateway'i yapılandırma"ya geçin.

1. bölüm: Edge Microgateway'i yapılandırma

Bu bölümde, Edge Microgateway'i Apigee Edge ile iletişim kuracak şekilde yapılandırmak için bir komut satırı arayüzü (KSA) komutu kullanacaksınız. Apigee Edge Cloud kullanıyorsanız Apigee Edge Cloud yapılandırma adımlarını uygulayın. Apigee Private Cloud kullanıyorsanız Apigee Edge Private Cloud'a yönelik adımları uygulayın.

Apigee Edge Cloud yapılandırma adımları

Edge Microgateway'i Apigee Edge Cloud ile kullanmak için aşağıdaki adımları uygulayın:

  1. Daha önce yapmadıysanız Edge Microgateway'i başlatın (bu adımı yalnızca bir kez yapmanız gerekir):
    edgemicro init
  2. (İsteğe bağlı) edgemicro configure komutuyla ilgili yardım çıktısı alın:
    edgemicro configure -h
  3. Edge Microgateway'i yapılandırmak için aşağıdaki komutu çalıştırın:
    edgemicro configure -o [org] -e [env] -u [username] 

    Burada:

    • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
    • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
    • username, Apigee hesabınızla ilişkili e-posta adresidir.

Örnek

edgemicro configure -o docs -e test -u jdoe@example.com

Çıkış

./edgemicro configure -o docs -e test -u jdoe@apigee.com
password:
current nodejs version is v6.1.0
current edgemicro version is 2.2.3-beta
password:
file doesn't exist, setting up
Give me a minute or two... this can take a while...
App edgemicro-auth deployed.
creating vault
adding private_key
adding public_key
configuring host edgemicroservices-us-east-1.apigee.net for region us-east-1

saving configuration information to: /Home/.edgemicro/wwitman-test-config.yaml

vault info:
 -----BEGIN CERTIFICATE-----
MIICpDCCAYwCCQCaDpaTttaDANBgkqhkiG9w0BAQsFADAUMRIwEAYDVQQDEwls
b2NhbGhvc3QwHhcNMTYxAxMjA0NzIyWhcNMTYxMTAyMjA0NzIyWjAUMRIwEAYD
VQQDEwlsb2NhbGhvcwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDA
YbtbsFe50GgBrI8QTih5yzxxxvCfdubGrLWmovwwCCFthno3u8lS54ekOL9jQu
JTJsocJfNhZxvnXifDsCk5Muwx87Z/D0BYLw9ZhM8TMyA2MCkXgC6RfKT69IdJ
jT3X+3D0s+apr3lACsDhgOfaeQfeHAm1SSwH/VemaJqdImGkQMtM8uscMDwG6k
vBbCSNS+hh6ZH1m3tAkcKXqvj/E1hbrHNTWr+uiYFRByUzeo1I607daQD4Lxid
il4Ng3hr3LC1gEzvobWgVyhQ2ovYB57T886H7dGghTnOUxLm2y/TwmQya+44SL
JSsDwauArMF38cRKZZ7VAgMBAAEwDQYJKoZIhvcNAQELBQADEBAHwwu+gOn8Tq
jKOYBTXtOX11HPMTxmyvZ/I57R4roE7Z/lXg/DXwbiFpFG2uamXNKq7yTDJH2i
iiqdERZOGfv7TJMjRlxEnfVHoCV7UKguKq4zeeAEU2x55yFwpWNrarx0kMXRwI
v3WgGfo2bimFQrCjDCNIkDKmYYt4SXIF5zUJmBWPCaK9aJoQb7ARXQO9s2zoOI
XZ5bCUDbehQZ+6LyqC0hgDXiIZYy7R0j93yCbQgoHaHUMEprJEEjE24SHdsWBO
nxGZxB20JLq5AHTm8lbZp7XtvbU0jVpxyrBo2/olFnmpvBVOq9eIp042IVD7nT
J4rPejdK6C4=
-----END CERTIFICATE-----

The following credentials are required to start edge micro
  key: e88ec9d5da17cd88ca338d532b7c7a8c4f43ddd3da139d95955ab345af30352d
  secret: d7f64854eb6889d06b809dd7c161dba5eeba4a2657277fd819921bf992221a8f

edgemicro configuration complete!
    

Apigee Private Cloud yapılandırma adımları

Edge Microgateway'i Apigee Private Cloud ile kullanmak için aşağıdaki adımları uygulayın:

  1. edgemicro private configure komutuyla ilgili yardım bilgilerini yazdırın. Bu şekilde, herhangi bir Edge Microgateway CLI komutu veya komut seçeneği için yardım yazdırabilirsiniz.
    edgemicro private configure -h
  2. Aşağıdaki komutu çalıştırın. Apigee Edge Private Cloud hesabınızla ilgili standart bilgiler (kuruluş adı, ortam adı, kullanıcı adı (e-posta adresi), şifre, yönetim sunucusu IP'si ve yönlendirici IP'si) gerekir. Bu komutu kullanmak için Edge kuruluş yöneticisi olmanız gerekir:
    edgemicro private configure -o [org] -e [env] -u [username] -r [runtime_url] -m [mgmt_url] -v [virtual_host]

    Burada:

    • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
    • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
    • runtime_url, özel bulut örneğinizin çalışma zamanı URL'sidir.
    • mgmt_url, özel bulut örneğinizin yönetim sunucusunun URL'sidir.
    • username, Apigee hesabınızla ilişkili e-posta adresidir.
    • virtual_host, sanal ana makine adlarının virgülle ayrılmış listesidir. Varsayılan değerler default,secure

Örnek

edgemicro private configure -o docs -e test -u jdoe@example.com -r http://192.162.52.106:9001 -m http://192.162.52.106:8080 -v default

veya myorg-test.mycompany.com sanal ana makine takma adınız varsa şöyle bir komut kullanırsınız:

edgemicro private configure -o docs -e test -u jdoe@example.com -r myorg-test.mycompany.com -m http://192.162.52.106:8080 -v default

Çıkış

delete cache config
checking for previously deployed proxies
configuring edgemicro internal proxy
deploying edgemicro internal proxy
deploying  edgemicro-auth  app
copy auth app into tmp dir
copy config into tmp deer
Give me a minute or two... this can take a while...
App edgemicro-auth added to your org. Now adding resources.

checking org for existing vault creating vault adding private_key adding public_key
configuring host http://192.168.52.106:9001 for region dc-1

saving configuration information to: /Users/ApigeeCorporation/.edgemicro/jdoe-test-config.yaml 
vault info: 
-----BEGIN CERTIFICATE----- 
MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0= 
-----END CERTIFICATE----- 

The following credentials are required to start edge micro 
   key: a3f8f3dfe39158fc3c50b274f0af2234246e0d5f6ea4dd09389b645147151ba3 
   secret: 3e9904802fb3c0e8ca408128a11119cf13546d54dac30ace944c097a726a1263

edgemicro configuration complete!
    

Yüklemeyi doğrulama

Yükleme işlemini doğrulamak için bu komutu çalıştırın. Hata bildirilmezse her şey doğru şekilde ayarlanmıştır ve Edge Microgateway'i başarıyla başlatabilirsiniz.

edgemicro verify -o [org] -e [env] -k [key] -s [secret]

Burada:

  • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
  • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
  • key, daha önce configure komutuyla döndürülen anahtardır.
  • secret, daha önce configure komutuyla döndürülen anahtardır.

Örnek

edgemicro verify -o docs -e test -k 93b01fd21d86331459ae52f664ae9aeb13eb94767ce40a4f621d172cdfb7e8e6 -s c8c755be97cf56c21f8b0556d7132afbd03625bbd85dc34ebfefae4f23fbcb3c

Yapılandırma hakkında

Şimdiye kadar yapılan tüm yapılandırmalar, Edge Microgateway'in kendisini Apigee Edge'e önyüklemesine olanak tanır. İlk başlatma işlemi başarılı olduktan sonra Edge Microgateway, Apigee Edge'den ek yapılandırma bilgilerinin bulunduğu bir yükü alır.

Bu yapılandırma bilgileri ne için kullanılır? Bu eğitimin bir sonraki bölümünde göreceğimiz gibi, Edge Microgateway başlatıldığında Apigee Edge'den özel Edge Microgateway'e duyarlı API proxy'lerinin bir listesini alması gerekir. Bu eğitimin bir sonraki bölümünde, Microgateway'e duyarlı bir proxy oluşturacaksınız. Edge Microgateway, istemcilerin yalnızca bu Microgateway'e duyarlı API proxy'leri tarafından desteklenen API'leri çağırmasını kısıtlar ve istemcilerin her çağrı için geçerli bir güvenlik jetonu sunması (varsayılan olarak) gerekir. Bu proxy'ler hakkında daha fazla bilgi edinmek için Edge Microgateway'e genel bakış bölümündeki "Edge Microgateway'e duyarlı proxy'ler hakkında bilmeniz gerekenler" başlıklı makaleyi inceleyin.

Edge kuruluş yöneticisi olarak, Edge Microgateway'e duyarlı proxy'lerin diğer proxy'ler gibi Edge ürünlerine eklenebileceğini bilmek isteyeceksiniz. Ürünleri ve geliştirici uygulamalarını kullanarak Edge Microgateway üzerinden çağrılan API'lere erişimi kontrol etmek için müşteriye özel güvenlik jetonları oluşturabilirsiniz. Burada da söz konusu kalıplar, Apigee Edge'deki herhangi bir API proxy'si, ürün ve geliştirici uygulamasıyla çalışmaya benzerdir. Ürünler hakkında bilgi edinmek istiyorsanız Edge belgelerindeki API ürünü nedir? başlıklı makaleyi okuyarak başlayın.

Ardından, Edge Microgateway'in farkında olan proxy'lerin nasıl oluşturulacağını inceleyeceğiz. Sonrasında ise Edge Microgateway'i başlatıp kurulumu test edeceğiz.

2. bölüm: Apigee Edge'de varlık oluşturma

Bu bölümde Edge'de aşağıdaki varlıkları oluşturacaksınız:

  • Mikro ağ geçidine duyarlı proxy (A): Bu, Edge Microgateway'in başlatıldığında keşfedebileceği özel bir proxy'dir. Microgateway'e duyarlı proxy'lerin uymanız gereken bir adlandırma kuralı vardır: Ad, edgemicro_ ile başlamalıdır. Örneğin, edgemicro_hello veya edgemicro_userinfo. Edge Microgateway başlatıldığında, Edge'den Edge Microgateway'i başlatırken belirttiğiniz Edge kuruluşu ve ortamındaki microgateway'e duyarlı proxy'lerin bir listesini alır.

    Edge Microgateway, her bir mikro ağ geçidi uyumlu proxy için proxy'nin hedef URL'sini ve temel yolunu alır. Microgateway'e duyarlı proxy'ler, Edge Microgateway tarafından oluşturulan analiz verilerini Edge platformundaki bir proxy ile ilişkilendirmenin kolay bir yolunu da sunar. Microgateway, API çağrılarını işlediği için analiz verilerini Edge'e eşzamansız olarak gönderir. Analytics verileri, diğer tüm proxy'lerde olduğu gibi, Edge Analytics kullanıcı arayüzünde microgateway'den haberdar proxy adları altında gösterilir.
  • Ürün, geliştirici ve geliştirici uygulaması: Edge Microgateway, OAuth2 erişim jetonu veya API anahtarı güvenliğini etkinleştirmek için ürünleri, geliştiricileri ve geliştirici uygulamalarını kullanır. Edge Microgateway başlatıldığında, Apigee Edge kuruluşunuzdaki tüm ürün yapılandırmalarını indirir. Bu bilgiler, Edge Microgateway üzerinden API anahtarları veya OAuth2 erişim jetonlarıyla yapılan API çağrılarını doğrulamak için kullanılır.

Daha fazla bilgi: Edge Microgateway'e Genel Bakış bölümündeki "Edge Microgateway'e duyarlı proxy'ler hakkında bilmeniz gerekenler" başlıklı makaleyi de inceleyin.

1. Edge'de Edge Microgateway'e duyarlı bir API proxy'si oluşturma

  1. Apigee Edge'de kuruluşunuza giriş yapın.
  2. Edge Classic kullanıcı arayüzüne gitmek için KLASİĞE GEÇ'i tıklayın.
  3. Üst menüden API'ler > API Proxy'leri'ni seçin.
  4. API Proxies (API Proxy'leri) sayfasında + API Proxy'yi tıklayın.
  5. Proxy Oluşturma sihirbazında Ters proxy (en yaygın) seçeneğini belirleyin.
  6. İleri'yi tıklayın.
  7. Sihirbazın Ayrıntılar sayfasında aşağıdaki gibi yapılandırın. Sihirbazı tam olarak gösterildiği gibi doldurduğunuzdan emin olun:
    • Proxy Adı: edgemicro_hello
    • Proxy Temel Yolu: /hello
    • Mevcut API: http://mocktarget.apigee.net/
  8. İleri'yi tıklayın.
  9. Sihirbazın Güvenlik sayfasında Geçiş (yok)'u seçin.
  10. İleri'yi tıklayın.
  11. Sihirbazın Sanal Ana Makineler sayfasında varsayılanları kabul edin.
  12. İleri'yi tıklayın.
  13. Sihirbazın Oluşturma sayfasında proxy ayarlarınızı inceleyin. Test ortamının seçili olduğundan emin olun.
  14. Build and Deploy'u (Derle ve Dağıt) tıklayın.

2. Ürün oluşturma

İki proxy içeren bir ürün oluşturun:

  • Mikro ağ geçidi farkında olan proxy'niz: edgemicro_hello
  • Edge Microgateway tarafından yüklenen kimlik doğrulama proxy'si: edgemicro-auth.
  1. Edge kullanıcı arayüzünde (klasik sürüm) Yayınla > Ürünler'e gidin.
  2. Ürünler sayfasında + Ürün'ü tıklayın. Ürün ayrıntıları sayfasını aşağıdaki gibi doldurun:
    • Ad: EdgeMicroTestProduct
    • Görünen Ad: EdgeMicroTestProduct
    • Ortam: test ve prod
    • Erişim: Herkese açık
    • Anahtar Onay Türü: Otomatik
    • Kaynaklar:
      • API Proxy: edgemicro_hello'yu seçin.
      • Sürüm: 1
      • Kaynak yolu: /**
  3. Import Resource'u (Kaynağı İçe Aktar) tıklayın.
  4. Kaynaklar'da +API Proxy'yi tıklayın.
  5. edgemicro-auth'u seçin.
  6. Kaydet'i tıklayın.

3. (İsteğe bağlı) Test geliştiricisi oluşturma

Bu eğitimin amacı doğrultusunda, sonraki adımda (geliştirici uygulaması oluşturma) mevcut geliştiricilerden herhangi birini kullanabilirsiniz. Ancak isterseniz şimdi bir test geliştirici oluşturabilirsiniz:

  1. Yayınla > Geliştiriciler'e gidin.
  2. Ürünler sayfasında + Geliştirici'yi tıklayın.
  3. Test geliştirici oluşturmak için iletişim kutusunu doldurun.

4. Geliştirici uygulaması oluşturma

Edge Microgateway üzerinden güvenli API çağrıları yapmak için bu uygulamadaki istemci kimlik bilgilerini kullanacaksınız:

  1. Yayınla > Geliştirici Uygulamaları'na gidin.
  2. Geliştirici Uygulamaları sayfasında + Geliştirici Uygulaması'nı tıklayın.
  3. Geliştirici Uygulaması sayfasını aşağıdaki gibi doldurun:
    1. Ad: EdgeMicroTestApp
    2. Görünen Ad: EdgeMicroTestApp
    3. Geliştirici: Bir test geliştiricisi oluşturduysanız onu seçin. Dilerseniz bu eğitim için mevcut geliştiricilerden herhangi birini kullanabilirsiniz.
    4. Kimlik bilgileri:
      1. Geçerlilik bitiş tarihi: Asla'yı seçin.
      2. + Ürün'ü tıklayın ve EdgeMicroTestProduct'ı (az önce oluşturduğunuz ürün) seçin.
  4. Kaydet'i tıklayın.
  5. Geliştirici uygulamaları listesi sayfasına geri dönersiniz.
  6. Yeni oluşturduğunuz EdgeMicroTestApp uygulamasını seçin.
  7. Tüketici Anahtarı ve Tüketici Gizli Anahtarı'nın yanındaki Göster'i tıklayın.

3. bölüm: Edge Microgateway'i çalıştırma

Artık yapılandırılmış bir Edge Microgateway'iniz ve Edge'de en az bir Edge Microgateway'e duyarlı proxy'niz olduğuna göre Edge Microgateway'i başlatma zamanı geldi. Yerel makinenizde bir Edge Microgateway HTTP sunucusu çalışır ve API çağrılarını doğrudan bu sunucuya yaparsınız.

1. Edge Microgateway'i başlatma

Edge Microgateway'i başlatmak için edgemicro start komutunu kullanın.

  1. edgemicro configure komutunu çalıştırdığınızda daha önce döndürülen anahtarlara sahip olduğunuzdan emin olun. Bu çıkış şöyle görünüyordu: this:
    You need key and secret while starting edgemicro instance
    
    key: da4778e7c240a5d4585fc559eaba5083328828ac9f3a7f583e8b73e
    secret: 3aad7439708b4aeb38ee08e87189921ad00e6fc1ba8a8ae9f929ee2
  2. (İsteğe bağlı) edgemicro start komutuyla ilgili yardım bilgilerini yazdırın.
    edgemicro start -h
  3. Edge Microgateway'i başlatmak için aşağıdaki komutu yürütün:
    edgemicro start -o [org] -e [env] -k [key] -s [secret]

    Burada:

    • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
    • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
    • key, daha önce configure komutuyla döndürülen anahtardır.
    • secret, daha önce yapılandırma komutu tarafından döndürülen anahtardır.

    Örnek

    edgemicro start -o docs -e test -k 701e70e718ce6dc1880616b3c39177d64a88754d615c7a4e1f78b6181d000723 -s 05c14356e42d136b83dd135cf8a18531ff52d7299134677e30ef4e34ab0cc824

    Çıkış

    Başlatma komutu, Apigee Edge'den çok sayıda yapılandırma bilgisi alır (bu bilgiler terminal penceresinde kaydırılır). Çıkışta, keşfedilen mikro ağ geçidi uyumlu proxy'lerin ve ürünlerin listesini görürsünüz. Çıkışın sonunda aşağıdakine benzer bir ifade görürsünüz:

    ...
    
    PROCESS PID : 9757
    installed plugin from analytics
    installed plugin from oauth
    eb725020-a2b0-11e6-8a52-6de156e3a6e2 edge micro listening on port 8000
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    installed plugin from analytics
    installed plugin from oauth
    eb77ce60-a2b0-11e6-8a88-b96278c0c198 edge micro listening on port 8000
    eb78b8c0-a2b0-11e6-bf36-717b986c91fe edge micro listening on port 8000
    eb77f570-a2b0-11e6-883e-472b9104351e edge micro listening on port 8000

Ne oldu?

edgemicro config komutunu çalıştırdığınız terminale bakın. Standart çıkışta yukarı kaydırarak komutun, Apigee Edge'den Edge Microgateway yapılandırma bilgilerinin bulunduğu bir yükü aldığını görebilirsiniz. Bu bilgiler arasında şunlar bulunur:

  • Daha önce Apigee kasasında oluşturup sakladığımız ortak anahtar.
  • Kuruluşta/ortamda bulunan tüm Edge Microgateway'e duyarlı proxy'lerin JSON gösterimi. Bunlar, edgemicro_ önekiyle adlandırılmış tüm proxy'lerdir.
  • Kuruluşta/ortamda bulunan tüm API ürünlerinin JSON gösterimi.

Bu bilgiler sayesinde Edge Microgateway, hangi proxy'leri ve proxy yollarını işlemesine izin verildiğini bilir. Güvenliği zorunlu kılmak için ürün bilgilerini kullanır (geliştirici uygulaması anahtarlarının ürünlerle ilişkilendirildiği Apigee Edge'deki herhangi bir API proxy'sinin yaptığı gibi). Edge Microgateway'in güvenliğini sağlama adımlarını kısa süre içinde inceleyeceğiz.

2. Edge Microgateway'i test etme

Edge Microgateway çalışırken proxy'yi çağırabilirsiniz. edgemicro_hello proxy'sinin yapılandırması, Edge Microgateway'i başlattığınızda Edge'den indirildi. Unutmayın, proxy temel yolu /hello'dur.

Edge Microgateway'i test etmek için temel yoldan başlayıp /echo kaynak yolunu ekliyoruz. Temel yoldan sonraki her şeyin (sorgu parametreleri dahil) arka uç hedefine doğrudan iletildiğini unutmayın:

curl -i http://localhost:8000/hello/echo
{"error":"missing_authorization","error_description":"Missing Authorization header"}

Bu hata, istekle birlikte geçerli bir API anahtarı veya erişim jetonu göndermediğiniz için oluşur. Edge Microgateway, varsayılan olarak her API çağrısında API anahtarı veya erişim jetonu gerektirir. Eğitici programın sonraki adımında, bu API'nin güvenliğini uygun şekilde sağlayacak ve geçerli bir erişim jetonunu nasıl alıp isteğe ekleyeceğinizi göstereceğiz.

" başlıklı makaledeki "Günlük dosyalarını yönetme" bölümüne bakın.

4. Edge Microgateway'i durdurma

  1. Ayrı bir terminal penceresinde, Edge Microgateway'i başlattığınız aynı dizine cd.
  2. Durdurma komutunu girin:
    edgemicro stop

4. Bölüm: Secure Edge Microgateway

Edge Microgateway üzerinden yapılan API çağrılarını API anahtarı veya erişim jetonu kullanarak güvenli hale getirebilirsiniz.

OAuth2 erişim jetonuyla API çağrılarını güvenli hale getirme

API çağrılarının kimliğini OAuth2 erişim jetonuyla doğrulamak istiyorsanız aşağıdaki adımları uygulayın:

1. Gerekli anahtarları alın

  1. Edge kullanıcı arayüzünde, Bölüm 2: Apigee Edge'de varlık oluşturma bölümünde açıklandığı gibi, daha önce oluşturduğunuz geliştirici uygulamasına gidin. Uygulamanın adı EdgeMicroTestApp'tı.
  2. Geliştirici Uygulaması sayfasında, Tüketici Anahtarı ve Tüketici Gizli Anahtarı'nı gösterip bunları kopyalayın. Bu değerler, sonraki adımda erişim jetonu almak için gereklidir.

2. Erişim jetonu alma

Erişim jetonu almanın iki yolu vardır. Her iki yöntemi de göstereceğiz.

Erişim jetonu almak için KSA'yı kullanma

İlk yöntem kullanışlıdır ve eğitim boyunca kullandığımız kalıbı izler. İkinci yöntem, genellikle jeton istemesi gereken istemci uygulaması geliştiricileri için daha kullanışlıdır. Gerçek jeton uç noktası, Edge Microgateway'i yapılandırdığınızda dağıtılan edgemicro-auth proxy'sinde uygulanır.

  1. (İsteğe bağlı) token get komutuyla ilgili yardım içeriğini görüntüleyin:
    edgemicro token get -h
  2. Aşağıdaki -i ve -s parametrelerinde, Apigee Edge'de oluşturduğunuz geliştirici uygulamasındaki tüketici anahtarı ve tüketici gizli anahtarı değerlerinizi kullanarak jetonu oluşturun:
    edgemicro token get -o [org] -e [env] -i [consumer_key] -s [consumer_secret]

    Burada:

    • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
    • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
    • consumer_id, daha önce oluşturduğunuz geliştirici uygulamasındaki tüketici kimliğidir.
    • consumer_secret , daha önce oluşturduğunuz geliştirici uygulamasındaki Consumer Secret'tır.

    Örnek

    edgemicro token get -o docs -e test -i G0IAeU864EtBo99NvUbn6Z4CBwVcS2 -s uzHTbwNWvoSmOy

    Çıkış (Örnek)

    current nodejs version is v4.4.4
    { token: 'eyJ0eXAiOiJKV1QiLCJhbGciSUzI1NiJ9.eyJhcHBsaWNhdGl
    vbl9uYW1lIjoiNWNiMGY0tOWMzOC00YmJjLWIzNzEtZGMxZTQzOGYxZGMxI
    iwiY2xpZW50X2lkIjoiNVVdBWEdvSU9lbzYwYWV3OTRQN0c1TUFaRTNhSnA
    iLCJzY29wZXMiOltdLCJhcGlfcHJvjdF9saXN0IjpbIkVkZ2VNaWNyb1Rlc
    3RQcm9kdWN0IlmlhdCI6MTQ3ODIwODMzMiwiZXhwIjoxNDc4MjEwMTMxfQ.
    v3Q8Rs0W9FO_XpERwIAMMXhjGamRmmmWgrAy1wJv0-99oajx5ASI5qjNubM
    nCF14xxwlVXHcz1VfedA8Nx7Ih145zhWWuPKL9muzhXXnVBRFeBMeeLqJk4
    QQ7Bhst7xH_68nJSTE20Egu95DHOCUemfrepDFH0VggY4BmzvwLkBNfz_te
    E_YqwKZbpGOLMdKK1vMk0fk0x19SieIMS_aJYeOAklrzUhnFxWJFrsAWsax
    NLx_BbQcZzYfK1JSDUrhRNVBuPHMnGjNA_oHw2J4qa6Hsp62PfchG-DIW_t
    -0BFnYf3rYXmqyNORqFrOMdl4VxqQ' }

(İsteğe bağlı) Jeton almak için API'yi kullanma

Edge proxy'lerini curl veya başka bir HTTP istemcisi kullanarak çağırmaya alışkınsanız edgemicro token komutunu kullanmak yerine doğrudan jeton uç noktasını çağırabileceğinizi bilmek isteyebilirsiniz. Aşağıda bir curl örneği verilmiştir. URL'de kuruluşunuzun ve ortamınızın adlarını değiştirmeniz, iki nokta üst üste işaretiyle ayrılmış Tüketici Anahtarı:Tüketici Gizli Anahtarı değerlerini ise Temel Kimlik Doğrulama üstbilgisinde iletmeniz yeterlidir:

curl -i -X POST --user [client_id]:[client_secret] "http://[org]-[env].apigee.net/edgemicro-auth/token" -d '{"grant_type": "client_credentials"}' -H "Content-Type: application/json"

Burada:

  • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
  • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
  • client_id, daha önce oluşturduğunuz geliştirici uygulamasındaki tüketici kimliğidir.
  • client_secret , daha önce oluşturduğunuz geliştirici uygulamasındaki Consumer Secret'tır.

Çıkış (Örnek)

edgemicro token KSA komutunu kullanmış olsanız da uç noktayı curl ile çağırmış olsanız da komut, istemci çağrıları yapmak için kullanılabilecek imzalı bir erişim jetonu döndürür. Örneğin:

MIICpDCCAYwCCQDpIvWlpaZJGDANBgkqhkiG9w0BAQFADAUMRIwEAYDVQQDEwls 
b2NhbGhvc3QwHhcNMTYwNDA3MTcxNTM5WhcNMTYwND4MTcxNTM5WjAUMRIwEAYD 
VQQDEwlsb2NhbGhvc3QwggEiMA0GCSqGSIb3DQEBAUAA4IBDwAwggEKAoIBAQD3 
OAQ+kf5FH0S0yuj05ITqUODuUJspBPberRMbqOZYHcFswhB0Yvg6JKWxKWBDP9o 
Xl96dtgH7xPFRqIU0zI452jkMQ1fPz2mSaGwik245yfBku7olooXKRKTRKOUoXa 
q3Hld/RPxGSsWtiyyYtKex7tuFdq0Knm1EhowdTRGIgjNvudeYMka/XPRXuykhd 
xIDxWj4rdX+4GPx9qT2eTQC5nOAC7XHVL7ys4KqsAiv28vw10u400KstFFS8Qho 
7FaE0bOKLolKKadKyA60ha1XIw/uSTD6ZQFWQ+XM3OaRbXePWXnSZioSxXcZT7L 
hMUKbsRXw/TCvRB51LgNAgMBAAEwDQYJKoZIhvcNAQELBQADgEBAOuR1OmE/W6j 
gRAarJB5EQuTEpI/9Zpg5c5RAGjzLhkazsycn7pal+IymUjCV7D0oIxTVuTM8ZZ 
57kR5hF/C1ZypDN9i+KGP2ovX8WOCCXYtIQECgZPB/L/7/k7BDuKN4vFBvWUe3X 
s2oyjnVWy+ASqsW8gHfj8ekhe22bP240Oqkbyg9SZP9ol1tvJX6+M0thYwcTwAd 
ft929Icey/MOTQC0jB2qm0gnIx/7KInFXfS5KoFRJoGrWDeckr3RdBo2LhnPaeZ 
1gPYIqphZ3HfisF5KlBXoR8oT/Ilym/nq5COlv+3L4tMIk18F7BQZB60SRazifz 
pFkIxepyr/0=
      

3. Edge Microgateway'deki yapılandırmayı kontrol etme

  1. Dosyayı açın. ~/.edgemicro/org-env-config.yaml. Ayrıca Installing Edge Microgateway (Edge Microgateway'i Yükleme) bölümündeki "Where is Edge Microgateway installed?" (Edge Microgateway nereye yüklenir?) başlıklı makaleyi inceleyin.
  2. Bu OAuth eklentisi özelliklerinin yanlış olarak ayarlandığından emin olun. Bu ayarlar varsayılan olarak devre dışıdır ancak kontrol etmeniz önerilir:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. Ayrıca, org-env-config.yaml dosyasında, oauth eklentisinin plugins:sequence öğesine aşağıdaki gibi eklendiğinden emin olun:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
  4. Dosyada herhangi bir değişiklik yaparsanız değişiklikleri çalışan Edge Microgateway örneğine yeniden yükleyin. Bu komut, Edge Microgateway'i sıfır kapalı kalma süresiyle yeniden yapılandırır:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    Burada:

    • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
    • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
    • key, daha önce configure komutuyla döndürülen anahtardır.
    • secret, daha önce yapılandırma komutu tarafından döndürülen anahtardır.

    Örnek

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

4. API'yi güvenli bir şekilde çağırma

Erişim jetonunuzla artık API çağrısını güvenli bir şekilde yapabilirsiniz. Örneğin:

  curl -i -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiJ9.eyJhcHBsaWNhdGlvbl
9uYW1lIjoiYmU2YmZjYjAtMWQ0Ni00Y2IxLWFiNGQtZTMxNzRlNTAyMDZkIiwiY2xpZW50X2lkIjoiOGxTTTVIRHdyM
VhIT1ZwbmhURExhYW9FVG5STVpwWk0iLCJzY29wZXMiOltdLCJhcGlfcHJvZHVjdF9saXN0IjpbIk1pY3JvZ2F0ZXdh
eVRlQcm9kdWN0Il0sImCI6MTQzNTM0NzY5MiwiZXhwIjoxNDM1MzQ5NDkxfQ.PN30Y6uK1W1f2ONPEsBDB_BT31c6
IsjWGfwpz-p6Vak8r767tAT4mQAjuBpQYv7_IU4DxSrnxXQ_q536QYCP4p4YKfBvyqbnW0Rb2CsPFziy_n8HIczsWO
s0p4czcK63SjONaUpxV9DbfGVJ_-WrSdqrqJB5syorD2YYJPSfrCcgKm-LpJc6HCylElFDW8dHuwApaWcGRSV3l5Wx
4A8Rr-WhTIxDTX7TxkrfI4THgXAo37p3au3_7DPB_Gla5dWTzV4j93xLbXPUbwTHzpaUCFzmPnVuYM44FW5KgvBrV0
64RgPmIFUxSqBWGQU7Z1w2qFmWuaDljrMDoLEreI2g" http://localhost:8000/hello/echo

API, sahte sunucudan başlıkları ve diğer bilgileri döndürür.

API'nin API anahtarıyla güvenliğini sağlama

Yetkilendirme için bir API anahtarı kullanmak istiyorsanız aşağıdaki adımları uygulayın:

1. API anahtarını alma

  1. Edge kullanıcı arayüzünde, Bölüm 2: Apigee Edge'de varlık oluşturma bölümünde açıklandığı gibi, daha önce oluşturduğunuz geliştirici uygulamasına gidin. Uygulamanın adı EdgeMicroTestApp'tı.
  2. Geliştirici uygulaması sayfasında Tüketici Anahtarı'nı gösterin ve kopyalayın. Bu değer API anahtarıdır. Kimliği doğrulanmış API çağrıları yapmak için bu anahtarı kullanırsınız.

2. Edge Microgateway'deki yapılandırmayı kontrol etme

  1. Dosyayı açın. ~/.edgemicro/org-env-config.yaml. Ayrıca Installing Edge Microgateway (Edge Microgateway'i Yükleme) bölümündeki "Where is Edge Microgateway installed?" (Edge Microgateway nereye yüklenir?) başlıklı makaleyi inceleyin.
  2. Bu OAuth eklentisi özelliklerinin yanlış olarak ayarlandığından emin olun. Bu ayarlar varsayılan olarak devre dışıdır ancak kontrol etmeniz önerilir:
    oauth:
       allowNoAuthorization: false
       allowInvalidAuthorization: false
  3. Ayrıca, org-env-config.yaml dosyasında, oauth eklentisinin plugins:sequence öğesine aşağıdaki gibi eklendiğinden emin olun:
    plugins:
       dir: ../plugins
       sequence:
       - oauth
        
  4. Dosyada herhangi bir değişiklik yaparsanız değişiklikleri çalışan Edge Microgateway örneğine yeniden yükleyin. Bu komut, Edge Microgateway'i sıfır kapalı kalma süresiyle yeniden yapılandırır:
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    Burada:

    • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
    • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
    • key, daha önce configure komutuyla döndürülen anahtardır.
    • secret, daha önce yapılandırma komutu tarafından döndürülen anahtardır.

    Örnek

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d

3. API'yi API anahtarıyla güvenli bir şekilde çağırma

API'yi aşağıdaki gibi x-api-key üstbilgisiyle çağırın. Geliştirici uygulamasından kopyaladığınız Tüketici Anahtarı değeri, API anahtarıdır. Edge Microgateway, varsayılan olarak anahtarı x-api-key adlı bir üstbilgide iletmenizi bekler. Örneğin:

curl -i http://localhost:8000/hello/echo -H "x-api-key: [apikey]"

Burada:

  • apikey, EdgeMicroTestApp'ten alınan Tüketici Anahtarı değeridir.

Örneğin:


curl -i http://localhost:8000/hello/echo -H 'x-api-key: XsU1R4zGXz2ERxa0ilYQ5szwuljr5bB'

Artık tam işlevli ve güvenli bir Edge Microgateway'iniz var. Eğitimin bir sonraki bölümünde, Edge Microgateway'e işlevsellik katan eklentilere göz atacağız.

5. Bölüm: Spike Arrest eklentisi ekleme

Bu bölümde, Edge Microgateway örneğinize ani artışları önleme adı verilen bir sıklık sınırlama özelliği ekleyeceğiz.

Eklentiler nedir?

Eklentiler, Edge Microgateway'e işlevsellik ekleyen Node.js modülleridir. Eklenti modülleri tutarlı bir kalıba uyar ve Edge Microgateway tarafından bilinen bir konumda depolanır. Bu sayede microgateway, eklentileri otomatik olarak bulup yükleyebilir. Eklentiler hakkında daha fazla bilgiyi Eklentileri kullanma başlıklı makalede bulabilirsiniz.

Spike Arrest eklentisini ekleme

Spike Arrest, trafik artışlarına karşı koruma sağlar. Bir Edge Microgateway örneği tarafından işlenen isteklerin sayısını sınırlar.

Edge Microgateway'de ani artışları önleme, bir eklenti modülü olarak uygulanır. Bu özelliği etkinleştirmek için Edge Microgateway yapılandırma dosyasına eklemeniz gerekir.

  1. Dosyayı açın. ~/.edgemicro/org-env-config.yaml. Ayrıca Installing Edge Microgateway (Edge Microgateway'i Yükleme) bölümündeki "Where is Edge Microgateway installed?" (Edge Microgateway nereye yüklenir?) başlıklı makaleye bakın.
  2. Aşağıdaki öğeyi ekleyin. Dosyanın herhangi bir yerine ekleyebilirsiniz.
       spikearrest:
          timeUnit: minute   
          allow: 10   
          buffersize: 0   
  3. Aşağıda gösterildiği gibi spikearrest öğesini edgemicro:sequence öğesine ekleyin. Sıra yapılandırma özelliği, Edge Microgateway'e eklenti modüllerinin yürütüleceği sırayı bildirir.
    edgemicro:
      home: ../gateway
      port: 8000
      max_connections: -1
      max_connections_hard: -1
      logging:
        level: info
        dir: /var/tmp
        stats_log_interval: 60
      plugins:
        dir: ../plugins
      sequence:
        - spikearrest
        - oauth 
  4. Yapılandırma dosyasını kaydedin.
  5. Edge Microgateway'i reload komutuyla yeniden yükleyin. Bu komutu, Edge Microgateway'i başlattığınız dizinden çalıştırmanız gerekir.
    edgemicro reload -o [org] -e [env] -k [key] -s [secret]

    Burada:

    • org, Edge kuruluşunuzun adıdır (kuruluş yöneticisi olmanız gerekir).
    • env, kuruluşunuzdaki bir ortamdır (ör. test veya üretim).
    • key, daha önce configure komutuyla döndürülen anahtardır.
    • secret, daha önce yapılandırma komutu tarafından döndürülen anahtardır.

    Örnek

    edgemicro reload -o docs -e test -k 701e70ee718ce6dc188016b3c39177d64a88754d615c74e1f78b6181d
  6. API'yi kısa süre içinde birkaç kez çağırmayı deneyin. İkinci aramadan sonra Edge Microgateway şu hatayı döndürür:
    {"message":"SpikeArrest engaged","status":503}

Bunun nedeni, ani artışları önleme özelliğinin belirtilen zaman biriminde yapılabilecek çağrı sayısını düzeltmesidir. Bu durumda, bir dakikada 10 arama yapabilir veya 6 saniyede bir arama yapabilirsiniz.

Daha fazla bilgi için Eklentileri kullanma bölümündeki "Ani artışları önleme nasıl çalışır?" başlıklı makaleyi inceleyin.

Ek kredi: Kota eklentisini ekleme

Ani artış engellemeyi yapılandırmak için kullanılan aynı kalıbı izleyerek kota eklentisi gibi başka eklentiler de ekleyebilirsiniz. Kota eklentisi, ani artışları engelleme eklentisinde olduğu gibi her Edge Microgateway yüklemesine dahildir. Kota, bir uygulamanın belirli bir zaman aralığında (dakika veya saat) bir API'ye göndermesine izin verilen istek mesajlarının sayısını belirtir.

Kotaların nasıl çalıştığını öğrenmek için Eklentileri kullanma başlıklı makaledeki "Kota eklentisini kullanma" bölümüne bakın.

6. Bölüm: Apigee Edge'de analizleri görüntüleme

Artık tam işlevli bir Edge Microgateway örneğimiz var. Bu örneğin neler yaptığına bakalım. Varsayılan olarak, Edge Micro'ya analiz eklentisi modülü eklenir. Bu modül, Edge Micro'dan Edge Analytics sistemi tarafından kullanılan Apigee Edge'e Analytics verilerini sessizce gönderir. Şimdi de şunlara bakalım:

  1. Apigee Edge'de kuruluşunuza giriş yapın.
  2. Analytics > Proxy Performansı'nı seçin.
  3. Proxy Performansı kontrol panelinde edgemicro_hello proxy'yi seçin.
  4. Grafikte, toplam trafik, ortalama yanıtlama süresi ve ortalama hedef yanıt süresi gibi proxy'nin trafik kalıpları hakkında bilgiler gösterilir.

Edge Analytics gösterge tabloları hakkında daha fazla bilgiyi Edge belgelerindeki Analytics Gösterge Tabloları ana sayfasında bulabilirsiniz. Eklentiler hakkında daha fazla bilgi edinmek için Eklentileri kullanma başlıklı makaleyi inceleyin.