Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. info
Çalışma zamanında almak üzere verileri depolamak istediğiniz durumlar olabilir. Bu veriler, API proxy'si mantığınıza sabit kodlanmaması gereken ve süresi dolmayan verilerdir. Anahtar değer eşlemeleri (KVM'ler) bu amaç için idealdir. KVM, şifrelenmiş veya şifrelenmemiş anahtar/değer dizesi çiftlerinden oluşan özel bir koleksiyondur. Aşağıda iki örnek verilmiştir:

Diğer kalıcılık türleri hakkında bilgi edinmek için Önbelleğe alma ve kalıcılık ekleme başlıklı makaleyi inceleyin.
KVM senaryoları
KVM'lerin kullanışlı olduğu bazı durumlar şunlardır:
- Bir test ortamında bir hedef (veya hizmet çağrısı) URL'sini, üretim ortamında ise başka bir hedef URL'yi çağırması gereken bir API proxy'niz var. URL'leri ara sunucunuza sabit kodlamak yerine, ara sunucunun hangi ortamda olduğunu algılamasını, ilgili Anahtar Değer Haritası İşlemleri politikasını yürütmesini ve oluşturduğunuz KVM'lerden birinden doğru hedef URL'yi almasını sağlayabilirsiniz. Daha sonra hedeflerinizden biri veya her ikisi değişirse KVM'leri yeni URL'lerle güncellemeniz yeterlidir. Proxy, yeni değerleri alır ve proxy'nin yeniden dağıtılması gerekmez.
- Kimlik bilgilerini, özel anahtarları veya jetonları (ör. harici hizmetler için jetonlar, OAuth jetonları oluşturmak için gereken kimlik bilgileri ya da şifreleme veya JSON Web Token (JWT) imzalamak için Java Callout'larda ya da JavaScript'te kullanılan özel anahtarlar) depolamak istiyorsunuz. İsteklerde kimlik bilgilerini, anahtarları veya jetonları iletmek ya da bunları proxy mantığınıza sabit kodlamak yerine, bunları KVM'de (her zaman şifrelenmiş) depolayabilir ve bunları gerektiren hedeflere yapılan çağrılarda dinamik olarak alabilirsiniz.
Anahtar/değer dize çiftlerinin depolanmasının yararlı olduğu başka durumlar da keşfedeceksiniz. Genel olarak, KVM'leri şu durumlarda kullanmayı düşünebilirsiniz:
- Kodunuzdaki belirli yerler, çalışma zamanında farklı değerler gerektirir.
- Hassas veriler, sabit kodlanmadan iletilmelidir.
- Önbellek gibi süresi dolmayan değerleri depolamak istiyorsanız.
KVM'lerin kapsamı vardır
Kapsam, "KVM'nin kullanılabildiği yer" anlamına gelir. KVM'ler şu kapsamlarda oluşturulabilir:
organization, environment ve apiproxy.
Örneğin, yalnızca bir API proxy'sinin KVM'deki verilere ihtiyacı varsa KVM'yi apiproxy kapsamda oluşturabilirsiniz. Bu durumda, verilere yalnızca söz konusu API proxy'si erişebilir.
Alternatif olarak, test ortamınızdaki tüm API proxy'lerinin bir anahtar/değer eşlemesine erişmesini isteyebilirsiniz. Bu durumda, ortam kapsamında bir anahtar/değer eşlemesi oluşturursunuz. "Prod" ortamında dağıtılan proxy'ler, "test" ortamı kapsamındaki KVM'lere erişemez. Aynı KVM anahtarlarının üretimde de kullanılabilmesini istiyorsanız "prod" ortamıyla kapsamı belirlenmiş paralel bir KVM oluşturun.
Tüm ortamlardaki tüm proxy'lerin aynı KVM'ye erişmesini istiyorsanız KVM'yi organization kapsamında oluşturun.
Şifrelenmiş KVM'ler hakkında
Şifrelenmiş KVM'ler, Apigee tarafından oluşturulan bir AES-128 şifreleme anahtarıyla şifrelenir. Bir KVM'yi şifrelemek için kullanılan anahtar, KVM'nin kapsamına göre depolanır. Örneğin, bir kuruluşta ortam kapsamında oluşturduğunuz tüm şifrelenmiş KVM'ler aynı ortam kapsamlı anahtar kullanılarak oluşturulur.
Edge, şifrelenmiş değerlerin gösterilmesini aşağıdaki şekillerde ele alır. (Şifrelenmiş KVM'ler oluşturma hakkında bilgi için KVM'leri yönetme ve kullanma başlıklı makaleyi inceleyin.)
Edge kullanıcı arayüzü
Şifrelenmiş anahtar değeri haritaları, kullanıcı arayüzünde yıldız işaretleriyle maskelenmiş değerleri (*****) gösterir. Örneğin:

Yönetim API'si
Yönetim API'sinde şifrelenmiş değerler maskelenmiş olarak döndürülür. Aşağıda, şifrelenmiş KVM alma çağrısıyla ilgili örnek yönetim API yanıtı verilmiştir:
{
"encrypted": true,
"entry": [
{
"name": "Key1",
"value": "*****"
},
{
"name": "Key2",
"value": "*****"
}
],
"name": "secretMap"
}İzleme ve hata ayıklama
Şifrelenmiş KVM değerlerini almak için Anahtar Değer Eşleme İşlemleri politikasını kullandığınızda
değeri depolayacak bir değişkenin adını sağlarsınız. Şifrelenmiş bir değer elde etmek için değişken adına "private." önekini eklemeniz gerekir. Bu, KVM anahtarlarının/değerlerinin izleme ve hata ayıklama oturumlarında görünmesini engeller.
Sınırlar
Temel Kalıcılık Hizmetleri (CPS)'nin etkin olduğu kuruluşlarda:
- KVM adı/tanımlayıcısı büyük/küçük harfe duyarlıdır.
- Anahtar boyutu 2 KB ile sınırlıdır.
- Değer boyutu 10 KB ile sınırlıdır.
Apigee Edge for Private Cloud'da her KVM 15 MB'ı aşmamalıdır (bu, anahtarların ve değerlerin toplam boyutudur). Bu sınırı aşarsanız Apigee Edge for Private Cloud hata döndürür. KVM'lerinizin boyutunu belirlemek için nodetool cfstats komutunu kullanabilirsiniz.
Daha büyük KVM'ler performansta düşüşe neden olabilir. Bu nedenle, performansı artırmak için büyük ve tek parçalı KVM'leri daha küçük olanlara bölmeniz gerekir.
KVM'leri yönetme ve kullanma
KVM'leri çeşitli şekillerde oluşturabilir, yönetebilir ve kullanabilirsiniz. Bu bölümde, hem şifrelenmiş hem de şifrelenmemiş KVM'leri oluşturup alma ile ilgili farklı seçenekler açıklanmaktadır.
KVM oluşturma ve güncelleme
Aşağıdaki yöntemlerle KVM oluşturabilir ve güncelleyebilirsiniz:
-
Anahtar/değer çifti haritası işlemleri politikası (şifreleme yok)
API proxy'leriniz tarafından çalışma zamanında KVM oluşturma ve güncelleme için Key Value Map Operations politikası'nı kullanın. (Politikada, üst öğedeki
mapIdentifierözelliğinde KVM'nin adını belirtirsiniz.)<InitialEntries>öğesi, politikayı kullanıcı arayüzünde kaydettiğiniz veya API proxy'sini dağıttığınız anda (çevrimdışı geliştirdiyseniz) yeni bir KVM'de temel bir giriş grubu oluşturup doldurmanıza olanak tanır. Politikadaki değerler değişirse mevcut değerlerin üzerine yazılır. Yeni anahtarlar/değerler, mevcut anahtarlar/değerlerle birlikte mevcut KVM'ye eklenir.<Put>öğesi, henüz mevcut değilse yeni bir KVM oluşturur ve bir veya daha fazla değere sahip bir anahtar oluşturur. KVM zaten varsa anahtar/değer çiftleri eklenir (veya anahtar zaten varsa güncellenir). Bir KVM politikasında birden fazla<Put>öğesi kullanabilirsiniz. -
Management API
Yönetim API'si, API proxy'lerinizde çalışma zamanında değil, yönetici olarak KVM'lerle çalışmak için kullanılır. Örneğin, yönetim API'sini kullanarak bir test ortamında KVM'leri silip yeniden oluşturan bir dahili komut dosyanız olabilir veya bir anahtarın değerini tüm proxy'lerin alması için bir KVM'de sıfırlamak isteyebilirsiniz. (KVM'lerin çalışma zamanında değiştirilmesi için vekil sunucularınızda Anahtar Değer Eşleme İşlemleri politikası'nı kullanın).
Anahtar/Değer Eşlemeleri Yönetim API'si, şifrelenmiş KVM'leri ve anahtarları/değerleri tüm kapsamlarda (kuruluş, ortam ve apiproxy) oluşturmanıza, güncellemenize ve silmenize olanak tanır.
Yönetim API'si ile şifrelenmiş bir KVM oluşturmak için JSON yüküne
"encrypted" : "true"ekleyin. KVM'leri yalnızca oluştururken şifreleyebilirsiniz. Mevcut bir KVM'yi şifreleyemezsiniz. -
Yönetim kullanıcı arayüzü
Edge yönetim kullanıcı arayüzünde, yalnızca kullanıcı arayüzünde görünen KVM kapsamı olan ortam kapsamlı KVM'ler oluşturabilir ve güncelleyebilirsiniz. Yönetim kullanıcı arayüzü, çalışma zamanında API proxy'leri için KVM verilerini manuel olarak yönetmenin iyi bir yoludur. Daha fazla bilgi için Ortam anahtar/değer eşlemeleri oluşturma ve düzenleme başlıklı makaleyi inceleyin.
KVM'leri alma
Şifrelenmiş ve şifrelenmemiş anahtar/değer eşlemelerini aynı şekilde, Anahtar/Değer Eşlemesi İşlemleri politikası ile alırken küçük bir farkla alırsınız.
- Politika: Şifrelenmiş ve şifrelenmemiş KVM'leri almak için Anahtar/Değer Haritası İşlemleri politikası'nda
<Get>öğesini kullanın. Tek küçük fark, politikayla şifrelenmiş değerleri alırken geçerlidir. Bu durumda, alınan değeri içerecek değişkenin adına "private." önekini eklemeniz gerekir. Bu işlem, referans konusunun Get işlemi bölümünde açıklanmıştır. Bu önek, API proxy'lerini ayıklarken değeri izleme ve hata ayıklama oturumlarından gizler. - Management API: Yönetim amaçlı olarak KVM'leri ve anahtarları/değerleri almak için Ortam anahtarı-değer eşlemeleri oluşturma ve düzenleme'yi kullanabilirsiniz. Örneğin, JSON tanımlarını alıp depolayarak KVM'leri yedeklemek istiyorsanız yönetim API'sini kullanın. Ancak şifrelenmiş değerlerin API yanıtında ***** olarak gösterildiğini unutmayın.
- Yönetim kullanıcı arayüzü: Ortam kapsamlı KVM'lerinizi yönetim kullanıcı arayüzünde görüntülemek için API'ler > Ortam Yapılandırması > Anahtar Değer Haritaları (Klasik Edge) veya Yönetici > Ortamlar > Anahtar Değer Haritaları (Yeni Edge) bölümüne gidin.
KVM örneği
Bir URL'deki değerleri doldurmak için KVM kullanma örneği için Hedef URL'yi ortama göre KVM ile şablonlaştırma başlıklı makaleyi inceleyin.