Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Güvenli mağaza hizmeti API'lerini kullanma
Güvenli mağaza hizmeti, arka uç hizmetlerinin güvenlik kimlik bilgileri gibi hassas verileri şifrelenmiş biçimde saklamanıza olanak tanır. Böylece, bu veriler yetkisiz kullanıma karşı korunur. Bu güvenli depolama alanlarına "kasa" adı verilir ve Apigee Edge'de kuruluş veya ortam düzeyleriyle sınırlandırılabilir.
Örneğin, güvenli mağaza, bir Node.js uygulamasının veritabanı sunucusu gibi korumalı bir kaynağa ulaşmak için gereken şifreyi depolamak üzere kullanılabilir. Şifreyi dağıtımdan önce bir API aracılığıyla güvenli depoda saklayabilir ve uygulama, çalışma zamanında değeri arayabilir.
Bu nedenle, şifrenin kaynak kodu kontrol sistemine dahil edilmesi veya Node.js kaynak koduyla birlikte Apigee Edge'e dağıtılması gerekmez. Bunun yerine, değer Apigee tarafından şifrelenmiş biçimde depolanır ve yalnızca uygulamanın ihtiyacı olduğunda alınır.
Güvenli depolama API'leri ile ilgili dokümanlar için Kasalar bölümüne bakın. Aşağıdaki bölümlerde güvenli depolama API'sinin kullanımıyla ilgili genel bilgiler de verilmektedir.
Verileri kuruluşa göre depolama
Her Apigee Edge kuruluşunun bir dizi güvenli deposu vardır ve her ortamda ek bir depo bulunur. Bu sayede, farklı arka uçlar için farklı güvenlik gereksinimleri olan kuruluşlar farklı güvenli değerler depolayabilir. Bu bölümde, kuruluşa göre depolama açıklanmaktadır.
Kullanım
- Tüm güvenli mağazaların adlarını alın:
GET /o/{organization}/vaults
- Adlandırılmış bir kasadan girişlerin listesini (ancak şifrelenmiş değerlerini değil) alma
GET /o/{organization}/vaults/{name}
-
Tek bir girişi (şifrelenmiş değeri hariç) alabilirsiniz.
GET /o/{organization}/vaults/{name}/entries/{entryname}
-
Değer içermeyen "ad" adlı yeni bir kasa oluşturun:
POST /o/{organization}/vaults { "name": "{name}" } curl https://api.enterprise.apigee.com/v1/o/testorg/vaults -H "Content-Type: application/json" -d '{"name": "test2" }' -X POST
-
Belirtilen ad ve güvenli değerle kasaya yeni bir giriş yerleştirin.
POST /o/{organization}/vaults/{vaultname}/entries { "name": "{entryname}", "value": "{securevalue}" } curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries -H "Content-Type: application/json" -d '{"name": "value1", "value": "verysecret" }' -X POST
-
Belirtilen girişin değerini yeni bir değerle değiştirin:
PUT /o/{organization}/vaults/{vaultname}/entries/{entryname} curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries/value1 -d 'verymoresecret' -X PUT
-
Belirtilen değer, mağazada bulunan değerle eşleşiyorsa "true", eşleşmiyorsa "false" değerini döndürür. Her iki durumda da 200 HTTP durum kodu kullanılır. Bu, mağazanın içeriğini doğrulamak için kullanılabilir. Şifrelenmemiş değer depolandıktan sonra bu değeri almak için API olmadığını unutmayın:
POST /o/{organization}/vaults/{vaultname}/entries/{entryname}?action=verify curl https://api.enterprise.apigee.com/v1/o/testorg/vaults/test2/entries/value1?action=verify -d 'verymoresecret' -X POST
- Belirtilen kasa girişini silme:
DELETE /o/{organization}/vaults/{vaultname}/entries/{entryname}
-
Kasanın tamamını silme
DELETE /o/{organization}/vaults/{name}
Verileri ortama göre depolama
Verileri Apigee Edge ortamına göre de depolayabilirsiniz. Bu durumda, veriler bir ortamla (ör. "prod") sınırlandırılır. Bu özellik sayesinde, Node.js komut dosyasının çalıştığı yere bağlı olarak çalışma zamanında farklı değerler depolanabilir.
Kullanım
GET /o/{organization}/e/{env}/vaults GET /o/{organization}/e/{env}/vaults/{name} GET /o/{organization}/e/{env}/vaults/{name}/entries/{entryname} POST /o/{organization}/e/{env}/vaults POST /o/{organization}/e/{env}/vaults/{vaultname}/entries PUT /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname} POST /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname}?action=verify DELETE /o/{organization}/e/{env}/vaults/{vaultname}/entries/{entryname} DELETE /o/{organization}/e/{env}/vaults/{name}
Node.js'de güvenli depodan değerleri alma
apigee-access'i yükleme
Node.js kodunuzda apigee-access kullanmak için önce yüklemeniz gerekir. Örneğin:
- Projenizin kök dizinine gidin.
- Yürüt:
npm install apigee-access --save
İşlevler
apigee-access getVault() işlevi, belirli bir kasayı kuruluş başına veya Node.js kodunun çalıştığı mevcut ortama göre almak için kullanılır.
getVault() iki parametre alır:
- Alınacak güvenli mağazanın adı.
- Kapsam.
organizationveyaenvironmentolabilir. Belirtilmezseorganizationdeğeri varsayılır.
getVault() tarafından döndürülen nesnenin iki işlevi vardır:
- getKeys(callback): Belirtilen kasadaki tüm anahtarların adlarını içeren bir dizi döndürür. Geri çağırma işlevi iki bağımsız değişkenle çağrılır: İşlem başarısız olursa hata, başarısız olmazsa "undefined" ve ikinci bağımsız değişken olarak gerçek dizi.
- get(key, callback): Belirli bir anahtarla ilişkili güvenli değeri döndürür. Geri çağırma işlevi iki bağımsız değişkenle çağrılır: İşlem başarısız olursa hata, başarısız olmazsa "undefined" ve ikinci bağımsız değişken olarak gerçek değer.
Örnek
Bir kasadan nasıl değer alınacağını gösteren bir Node.js örneğini burada bulabilirsiniz. Bu kodun çalışması için daha önce açıklandığı gibi apigee-access modülü yüklenmelidir.
var apigee = require('apigee-access'); var orgVault = apigee.getVault('vault1', 'organization'); orgVault.get('key1', function(err, secretValue) { // use the secret value here });