Apigee Edge belgelerini görüntülüyorsunuz.
Apigee X belgelerine gidin. bilgi
Edge'de API çağrılarında hata ayıkladığınızda içerik, bazen kredi kartları veya maskelenmesi gereken kimliği tanımlayabilecek sağlık bilgileri (PHI) gibi hassas veriler içerebilir.
Edge, İzleme ve hata ayıklama oturumlarındaki hassas verileri gizlemek veya maskelemek için farklı yöntemler sunar.
Hassas verileri gizleme
Önünde "private.
" olan özel değişkenler oluşturarak, hassas verilerin İzleme aracında ve hata ayıklama oturumlarında görünmesini engelleyebilirsiniz.
Örneğin, şifrelenmiş anahtar/değer eşlemesinden değer almak için Anahtar/Değer Eşleme İşlemleri politikasını kullanırken değerlerin İzleme veya hata ayıklama oturumlarında görünmemesi için değişken adlarını aşağıdaki gibi biçimlendirin:
<Get assignTo="private.hiddenData">
Hassas değişkenleri gizlemek, veri maskelemeyi kullanmaya bir alternatiftir (ileride açıklandığı gibi). Gizleme ile maskeleme arasındaki fark, gizli değişkenlerin hiç görünmemesi ve maskelenmiş değerlerin İzleme ve hata ayıklama oturumlarında yıldız işaretleriyle değiştirilmesidir.
"private.
" öneki olmayan değişkenler, veriler şifrelenmiş anahtar/değer eşlemesi gibi şifrelenmiş bir veri deposundan gelse bile, Trace ve hata ayıklama oturumlarında açık metin olarak gösterilir. Bu değerleri maskelemek istiyorsanız maskeleme (aşağıda) seçeneğini kullanın.
Hassas verileri maskeleme
Edge, izleme ve hata ayıklama oturumlarındaki belirli verileri maskelemek için "maske yapılandırmaları" tanımlamanızı sağlar. Maskeleme yapılandırmaları genel (kuruluş düzeyinde) veya yerel olarak (API proxy düzeyinde) ayarlanabilir.
Maskelenen veriler, iz çıktısında yıldız işaretleriyle değiştirilir. Örneğin:
<description>**********</description>
Maske Yapılandırmalarını Kullanma
Maske yapılandırmaları, aşağıdaki kaynaklardaki hassas verileri tanımlayabilmenizi sağlar:- XML yükleri: XPath kullanarak istek veya yanıt mesajı yüklerinden filtrelenecek XML öğelerini tanımlarsınız.
- JSON yükleri: JSONPath kullanarak istek veya yanıt mesajı yüklerinden filtrelenecek JSON özelliklerini tanımlarsınız.
- Akış değişkenleri: Hata ayıklama çıktısında maskelenmesi gereken değişkenlerin listesini belirtebilirsiniz.
request.content
,response.content
veyamessage.content
akış değişkenlerini belirttiğinizde istek/yanıt gövdesi de maskelenir.
Maske yapılandırmasının temel yapısı aşağıdaki XML gösterimiyle gösterilmektedir:
<MaskDataConfiguration name="default"> <Namespaces> <Namespace prefix="myco">http://example.com</Namespace> </Namespaces> <XPathsRequest> <XPathRequest>/myco:Greeting/myco:User</XPathRequest> </XPathsRequest> <XPathsResponse> <XPathResponse>/myco:Greeting/myco:User</XPathResponse> </XPathsResponse> <JSONPathsRequest> <JSONPathRequest>$.store.book[*].author</JSONPathRequest> </JSONPathsRequest> <JSONPathsResponse> <JSONPathResponse>$.store.book[*].author</JSONPathResponse> </JSONPathsResponse> <XPathsFault> <XPathFault>/myco:Greeting/myco:User</XPathFault> </XPathsFault> <JSONPathsFault> <JSONPathFault>$.store.book[*].author</JSONPathFault> </JSONPathsFault> <Variables> <Variable>request.header.user-agent</Variable> <Variable>request.formparam.password</Variable> </Variables> </MaskDataConfiguration>
Maske yapılandırma kaynağını yapılandırma
Aşağıdaki öğeleri kullanarak bir maske yapılandırması tanımlayın.
Alan adı | Açıklama | Varsayılan | Zorunlu mu? |
---|---|---|---|
XPathsRequest | İstek yolundaki XML yüklerine (varsa) göre değerlendirilecek XPath ifadelerinin listesi. Başarıyla çözümlenen tüm XPath'ler, XML öğesinin değerinin maskelenmesiyle sonuçlanır. | Yok | Hayır |
XPathsResponse | Yanıt yolundaki XML yüklerine (varsa) göre değerlendirilecek XPath ifadelerinin listesi. Başarıyla çözümlenen tüm XPath'ler, XML öğesinin değerinin maskelenmesiyle sonuçlanır. | Yok | Hayır |
JSONPathsRequest | İstek yolundaki JSON yüklerine (varsa) göre değerlendirilecek JSONPath ifadelerinin listesi. Başarıyla çözümlenen tüm JSONPath'ler, JSON özelliğinin değerinin maskelenmesine neden olur. | Yok | Hayır |
JSONPathsResponse | Yanıt yolundaki JSON yüklerine (varsa) göre değerlendirilecek JSONPath ifadelerinin listesi. Başarıyla çözümlenen tüm JSONPath'ler, JSON özelliğinin değerinin maskelenmesine neden olur. | Yok | Hayır |
XPathsFault | Hata akışındaki (akışın herhangi bir noktasında hata verilirse yürütülür) XML yüklerine (varsa) göre değerlendirilecek olan XPath ifadelerinin listesi. Başarıyla çözümlenen tüm XPath'ler, XML öğesinin değerinin maskelenmesine neden olur. | Yok | Hayır |
JSONPathsFault | Hata akışındaki (akışın herhangi bir noktasında hata verilirse yürütülür) JSON yüklerine (varsa) göre değerlendirilecek olan JSON ifadelerinin listesi. Başarıyla çözümlenen tüm JSONPath'ler, JSON özelliğinin değerinin maskelenmesine neden olur. | Yok | Hayır |
Değişkenler |
Değerleri maskelenecek değişkenlerin bir listesi (önceden tanımlanmış veya özel). Varsayılan değişkenlerin listesi için Değişkenler referansı bölümüne bakın. |
Yok | Hayır |
Maske yapılandırma API'sı
Maske yapılandırmaları, RESTful Management API kullanarak yükleyip indirdiğiniz XML veya JSON biçimli dosyalar olarak tanımlanır. Veri maskeleme API'lerinin tam listesi için Veri Maskeleri başlıklı makaleyi inceleyin.
Mevcut maske yapılandırmalarını görmek için kuruluşunuzdaki /maskconfigs
API kaynağını çağırmanız yeterlidir:
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/maskconfigs \ -u email
Bu örnekte, kimlik doğrulama için Temel söz dizimi gösterilmektedir. Oauth2 veya SAML gibi diğer kimlik doğrulama türlerini kullanabilirsiniz.
Belirli API proxy'leri için tanımlanmış maske yapılandırmalarını görmek için /maskconfigs
API'yi çağırabilirsiniz:
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/apis/{api_name}/maskconfigs \ -u email
Belirli bir maske yapılandırmasını görmek için maskenin adını belirtin:
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/maskconfigs/default \ -u email
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/apis/{api_name}/maskconfigs/default \ -u email
Maske yapılandırması oluşturmak için POST fiilini kullanarak maske yapılandırmasını tanımlayan bir yük gönderin:
$ curl -H "Content-type:text/xml" -X POST -d \ '<MaskDataConfiguration name="default"> <Namespaces> <Namespace prefix="myco">http://example.com</Namespace> </Namespaces> <XPathsRequest> <XPathRequest>/myco:Greeting/myco:User</XPathRequest> </XPathsRequest> <XPathsResponse> <XPathResponse>/myco:Greeting/myco:User</XPathResponse> </XPathsResponse> <JSONPathsRequest> <JSONPathRequest>$.store.book[*].author</JSONPathRequest> </JSONPathsRequest> <JSONPathsResponse> <JSONPathResponse>$.store.book[*].author</JSONPathResponse> </JSONPathsResponse> <XPathsFault> <XPathFault>/myco:Greeting/myco:User</XPathFault> </XPathsFault> <JSONPathsFault> <JSONPathFault>$.store.book[*].author</JSONPathFault> </JSONPathsFault> <Variables> <Variable>request.header.user-agent</Variable> <Variable>request.formparam.password</Variable> </Variables> </MaskDataConfiguration>' \ https://api.enterprise.apigee.com/v1/o/{org_name}/maskconfigs \ -u emailKapsamı belirli bir API proxy'sine ayarlanmış bir maske yapılandırması oluşturmak için:
$ curl -H "Content-type:text/xml" -X POST -d \ '<MaskDataConfiguration name="default"> <Namespaces> <Namespace prefix="myco">http://example.com</Namespace> </Namespaces> <XPathsRequest> <XPathRequest>/myco:Greeting/myco:User</XPathRequest> </XPathsRequest> <XPathsResponse> <XPathResponse>/myco:Greeting/myco:User</XPathResponse> </XPathsResponse> <JSONPathsRequest> <JSONPathRequest>$.store.book[*].author</JSONPathRequest> </JSONPathsRequest> <JSONPathsResponse> <JSONPathResponse>$.store.book[*].author</JSONPathResponse> </JSONPathsResponse> <XPathsFault> <XPathFault>/myco:Greeting/myco:User</XPathFault> </XPathsFault> <JSONPathsFault> <JSONPathFault>$.store.book[*].author</JSONPathFault> </JSONPathsFault> <Variables> <Variable>request.header.user-agent</Variable> <Variable>request.formparam.password</Variable> </Variables> </MaskDataConfiguration>' \ https://api.enterprise.apigee.com/v1/o/{org_name}/apis/{api_name}/maskconfigs \ -u email
Bir maske yapılandırmasını, SİL fiilini kullanarak silebilirsiniz:
$ curl -X DELETE \ https://api.enterprise.apigee.com/v1/o/{org_name}/apis/{api_name}/maskconfigs/{maskconfig_name} \ -u email
Bu örnekte, kimlik doğrulama için Temel söz dizimi gösterilmektedir. Oauth2 veya SAML gibi diğer kimlik doğrulama türlerini kullanabilirsiniz.
DELETE işleminin yanıtı, mesaj içeriği olmayan bir HTTP kodu 204
olur.
XML ad alanları için maskeleme
XML yükünde bir ad alanı tanımlanmadığı sürece maske yapılandırması, XPATH tanımında <Namespace>
öğesini gerektirmez. Bu durum, XML yükü varsayılan bir ad alanı kullandığında da geçerlidir.
Örneğin, XML yükü bir ad alanı tanımlamaz:
<employee> <name>abc</name> <age>50</age> </employee>
Bu nedenle, maske yapılandırması <Namespace>
öğesini gerektirmez:
<MaskDataConfiguration> <XPathsRequest> <XPathRequest>/employee/name</XPathRequest> <XPathsRequest> </MaskDataConfiguration>
XML yükü bir ad alanı ve ön ek içeriyorsa:
<myco:employee xmlns:myco="http://example.com"> <myco:name>xyz</myco:name> <myco:age>50</myco:age> </myco:employee>
Bu durumda maske yapılandırması tanımı, <Namespace>
öğesini içermelidir:
<MaskDataConfiguration> <Namespaces> <Namespace prefix="myco">http://example.com</Namespace> </Namespaces> <XPathsRequest> <XPathRequest>/myco:employee/myco:name</XPathRequest> <XPathsRequest> </MaskDataConfiguration>
XML Yük'te ad alanı olmasına rağmen ön eki yoksa varsayılan ad alanı:
<employee xmlns="http://example.com"> <name>xyz</name> <age>50</age> </employee>
Bu durumda maske yapılandırması hâlâ <Namespace>
öğesini içermelidir:
<MaskDataConfiguration> <Namespaces> <Namespace prefix="myco">http://example.com</Namespace> </Namespaces> <XPathsRequest> <XPathRequest>/myco:employee/myco:name</XPathRequest> <XPathsRequest> </MaskDataConfiguration>