أنت تعرض مستندات Apigee Edge.
انتقل إلى
مستندات Apigee X. معلومات
عند تصحيح أخطاء طلبات البيانات من واجهات برمجة التطبيقات في Edge، يمكن أن يحتوي المحتوى أحيانًا على بيانات حساسة، مثل بطاقات الائتمان أو المعلومات الصحية التي تحدّد الهوية الشخصية والتي يجب حجبها
توفر Edge طرقًا مختلفة لإخفاء أو إخفاء البيانات الحساسة من Trace الجلسات وتصحيح الأخطاء
إخفاء البيانات الحساسة
ويمكنك منع ظهور البيانات الحساسة في أداة التتبُّع وجلسات تصحيح الأخطاء من خلال إنشاء
المتغيّرات المخصّصة البادئة بـ "private.
".
على سبيل المثال، عند استخدام سياسة "عمليات ربط القيم الرئيسية" لاسترداد القيم من قيمة المفتاح المشفّر، وتنسيق أسماء المتغيرات على النحو التالي لضمان عدم ظهور القيم في جلسات التتبع أو تصحيح الأخطاء:
<Get assignTo="private.hiddenData">
إخفاء المتغيرات الحساسة هو بديل لاستخدام إخفاء البيانات، كما هو موضح بعد ذلك. تشير رسالة الأشكال البيانية والفرق بين الإخفاء والإخفاء هو أن المتغيرات المخفية لا تظهر على الإطلاق، يتم استبدال القيم بعلامات نجمية في جلسات التتبع وتصحيح الأخطاء.
المتغيّرات بدون "private.
" يتم عرض البادئة بنص واضح في Trace
حتى إذا كانت البيانات واردة من تخزين بيانات مشفّر، مثل قيمة مفتاح مشفّر
الخريطة. استخدم الإخفاء (أدناه) إذا كنت تريد إخفاء هذه القيم.
إخفاء البيانات الحساسة
تتيح لك شبكة Edge تحديد "تكوينات القناع" لإخفاء بيانات محددة في جلسات التتبع وتصحيح الأخطاء. يمكن ضبط إعدادات الإخفاء على مستوى العالم (على مستوى المؤسسة) أو محليًا (على واجهة برمجة التطبيقات). الخادم الوكيل).
وعند إخفاء البيانات، يتم استبدالها بعلامات نجمية في نتائج التتبع. مثلاً:
<description>**********</description>
استخدام تكوينات الأقنعة
وجه يرتدي قناعًا من تحديد البيانات الحساسة في المصادر التالية:- حمولات XML: باستخدام XPath، يمكنك تحديد عناصر XML التي ستتم فلترتها من الطلب أو حمولات رسائل الاستجابة.
- حمولات JSON: باستخدام JSONPath، يمكنك تحديد خصائص JSON التي تريد الفلترة منها. الحمولات الأساسية لرسائل طلب أو رد
- متغيّرات التدفق: يمكنك تحديد قائمة بالمتغيّرات التي يجب إخفاؤها في عملية تصحيح الأخطاء.
الإخراج. عندما تحدد
request.content
وresponse.content
أوmessage.content
متغير التدفق، فسيكون نص الطلب/الاستجابة أيضًا مخفي.
يتم عرض البنية الأساسية لإعداد القناع من خلال تمثيل XML التالي:
<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>
تكوين قناع مورد الإعداد
حدد تهيئة القناع باستخدام العناصر التالية.
اسم الحقل | الوصف | تلقائي | مطلوب؟ |
---|---|---|---|
XPathsRequest | يشير هذا المصطلح إلى قائمة بتعبيرات XPath التي سيتم تقييمها مقابل حمولات XML (إن وُجدت) في مسار الطلب. وسينتج عن أي مسارات XPath يتم حلها بنجاح قيمة XML العنصر المخفي. | لا ينطبق | لا |
XPathsResponse | يشير هذا المصطلح إلى قائمة بتعبيرات XPath التي سيتم تقييمها مقابل حمولات XML (إن وُجدت) في الاستجابة. وسينتج عن أي مسارات XPath يتم حلها بنجاح قيمة XML العنصر المخفي. | لا ينطبق | لا |
JSONPathsRequest | قائمة بتعبيرات JSONPath التي سيتم تقييمها مقابل حمولات JSON (إن وُجدت) في مسار الطلب. وستؤدي أي مسارات JSONPath التي يتم حلها بنجاح إلى عرض قيمة جارٍ إخفاء سمة JSON. | لا ينطبق | لا |
JSONPathsResponse | قائمة بتعبيرات JSONPath التي سيتم تقييمها مقابل حمولات JSON (إن وُجدت) في مسار الاستجابة. وستؤدي أي مسارات JSONPath التي يتم حلها بنجاح إلى عرض قيمة جارٍ إخفاء سمة JSON. | لا ينطبق | لا |
XPathsFault | يشير هذا المصطلح إلى قائمة بتعبيرات XPath التي سيتم تقييمها مقابل حمولات XML (إن وُجدت) في تدفق الخطأ (والذي يتم تنفيذه في حال حدوث خطأ في أي مرحلة من التدفق). أي مسارات XPath بنجاح سوف ينتج عنه إخفاء قيمة عنصر XML. | لا ينطبق | لا |
JSONPathsFault | هذه قائمة بتعبيرات JSON التي سيتم تقييمها مقابل حمولات JSON (إن وُجدت) في تدفق الخطأ (والذي يتم تنفيذه في حال حدوث خطأ في أي مرحلة من التدفق). أي مسارات JSONPath إذا تم حله بنجاح إلى أن يتم إخفاء قيمة خاصية JSON. | لا ينطبق | لا |
المتغيرات |
قائمة بالمتغيّرات (إما محدّدة مسبقًا أو مخصَّصة) التي سيتم إخفاء قيمها. بالنسبة إلى قائمة بالمتغيّرات التلقائية، يُرجى الاطّلاع على مرجع المتغيّرات. |
لا ينطبق | لا |
واجهة برمجة تطبيقات إعداد القناع
يتم تحديد إعدادات الأقنعة على أنّها ملفات بتنسيق XML أو JSON يمكنك تحميلها وتنزيلها. باستخدام واجهة برمجة تطبيقات إدارة RESTful. للحصول على قائمة كاملة بواجهات برمجة التطبيقات لإخفاء البيانات، يُرجى الاطّلاع على مقالة أقنعة البيانات.
للاطلاع على تكوينات الأقنعة الحالية، يمكنك ببساطة استدعاء مورد واجهة برمجة التطبيقات
"/maskconfigs
" في مؤسستك:
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/maskconfigs \ -u email
يوضح هذا المثال البنية الأساسية. للمصادقة. قد تتمكن من استخدام أنواع أخرى من المصادقة، مثل Oauth2 أو SAML:
للاطلاع على عمليات تهيئة القناع المحددة للخوادم الوكيلة المحددة لواجهة برمجة التطبيقات، يمكنك طلب
واجهة برمجة تطبيقات /maskconfigs
:
$ curl https://api.enterprise.apigee.com/v1/o/{org_name}/apis/{api_name}/maskconfigs \ -u email
للاطّلاع على إعدادات القناع الخاصة، حدِّد اسم القناع:
$ 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
لإنشاء إعداد قناع، استخدم الفعل POST لإرسال حمولة تحدد القناع. التكوين:
$ 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 emailلإنشاء إعداد للقناع مرتبط بخادم وكيل محدّد لواجهة برمجة التطبيقات:
$ 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
يمكنك حذف إعداد القناع باستخدام الفعل DELETE:
$ curl -X DELETE \ https://api.enterprise.apigee.com/v1/o/{org_name}/apis/{api_name}/maskconfigs/{maskconfig_name} \ -u email
يوضح هذا المثال البنية الأساسية. للمصادقة. قد تتمكن من استخدام أنواع أخرى من المصادقة، مثل Oauth2 أو SAML:
الاستجابة لعملية "الحذف" هي رمز HTTP يتضمّن 204
بدون رسالة
المحتوى.
الإخفاء لمساحات أسماء XML
لا يتطلّب إعداد القناع العنصر <Namespace>
في XPATH.
ما لم يتم تحديد مساحة اسم في حمولة XML. ينطبق ذلك أيضًا إذا كانت حمولة XML
تستخدم مساحة اسم افتراضية.
على سبيل المثال، لا تحدد حمولة XML مساحة الاسم:
<employee> <name>abc</name> <age>50</age> </employee>
لذلك، لا يتطلب إعداد القناع العنصر <Namespace>
:
<MaskDataConfiguration> <XPathsRequest> <XPathRequest>/employee/name</XPathRequest> <XPathsRequest> </MaskDataConfiguration>
إذا كانت حمولة XML تحتوي على مساحة اسم وبادئة:
<myco:employee xmlns:myco="http://example.com"> <myco:name>xyz</myco:name> <myco:age>50</myco:age> </myco:employee>
بعد ذلك، يجب أن يحتوي تعريف إعداد القناع على <Namespace>
.
العنصر:
<MaskDataConfiguration> <Namespaces> <Namespace prefix="myco">http://example.com</Namespace> </Namespaces> <XPathsRequest> <XPathRequest>/myco:employee/myco:name</XPathRequest> <XPathsRequest> </MaskDataConfiguration>
إذا كانت حمولة XML تتضمن مساحة اسم بدون بادئة، ما يعني مساحة الاسم التلقائية:
<employee xmlns="http://example.com"> <name>xyz</name> <age>50</age> </employee>
بعد ذلك، يجب أن تتضمّن إعدادات القناع العنصر <Namespace>
:
<MaskDataConfiguration> <Namespaces> <Namespace prefix="myco">http://example.com</Namespace> </Namespaces> <XPathsRequest> <XPathRequest>/myco:employee/myco:name</XPathRequest> <XPathsRequest> </MaskDataConfiguration>