खास जानकारी
एपीआई हब कनेक्टर इंटिग्रेशन के तहत, एपीआई प्रॉक्सी और शेयर किए गए फ़्लो बंडल के लिए मेटाडेटा अपलोड करने की प्रोसेस को एपीआई हब के साथ सिंक किया जाता है. इन बंडलों में, नीति के कॉन्फ़िगरेशन के तहत व्यक्तिगत पहचान से जुड़ी जानकारी (पीआईआई) या अन्य संवेदनशील डेटा शामिल हो सकता है. इस सुविधा की मदद से, पहचान की जानकारी (पीआईआई) वाले फ़ील्ड को एपीआई हब पर बंडल अपलोड करने से पहले मास्क किया जा सकता है. इससे, Edge for Private Cloud एनवायरमेंट के लिए डेटा की निजता और अनुपालन को पक्का किया जा सकता है.
मास्क करने का तरीका
बंडलों में मौजूद, एक्सएमएल फ़ॉर्मैट वाले नीति कॉन्फ़िगरेशन में मौजूद चुनिंदा एलिमेंट को टारगेट करने के लिए, XPath एक्सप्रेशन का इस्तेमाल करके, व्यक्तिगत पहचान से जुड़ी जानकारी को मास्क किया जाता है. इस सुविधा को दो हिस्सों में बांटा गया है.
डिफ़ॉल्ट मास्क
Apigee Edge for Private Cloud में, XPath एक्सप्रेशन की पहले से तय की गई, इन-बिल्ट सूची (इसे डिफ़ॉल्ट मास्क कहा जाता है) शामिल होती है. यह सूची, अलग-अलग नीतियों में पीआईआई के संभावित सोर्स के तौर पर जाने जाने वाले फ़ील्ड को अपने-आप टारगेट करती है.
संभावित पीआईआई सोर्स और डिफ़ॉल्ट मास्क
इस टेबल में, उन नीतियों और एलिमेंट की सूची दी गई है जिनके लिए डिफ़ॉल्ट मास्किंग लागू होती है:
| नीति का नाम | संवेदनशील एलिमेंट | डिफ़ॉल्ट मास्क XPath | वजह |
|---|---|---|---|
BasicAuthentication |
हार्डकोड किया गया उपयोगकर्ता नाम | //BasicAuthentication/User |
यह कुकी, उपयोगकर्ता की पहचान को सीधे तौर पर सादे टेक्स्ट में सेव करती है. |
BasicAuthentication |
हार्डकोड किया गया पासवर्ड | //BasicAuthentication/Password |
यह कुकी, पासवर्ड को सीधे तौर पर सेव करती है. |
GenerateJWT |
सिमेट्रिक कुंजी (सीक्रेट) | //GenerateJWT/SecretKey/Value |
सिमेट्रिक एन्क्रिप्शन/हस्ताक्षर करने की कुंजी को हार्डकोड किया गया है. |
GenerateJWT |
निजी पासकोड | //GenerateJWT/PrivateKey/Value |
असमानता वाली साइनिंग के लिए, PEM-encoded निजी पासकोड. |
GenerateJWT |
निजी पासकोड का पासवर्ड | //GenerateJWT/PrivateKey/Password |
निजी पासकोड को डिक्रिप्ट करने के लिए पासवर्ड. |
GenerateJWS |
सिमेट्रिक कुंजी (सीक्रेट) | //GenerateJWS/SecretKey/Value |
सिमेट्रिक एन्क्रिप्शन/हस्ताक्षर करने की कुंजी को हार्डकोड किया गया है. |
GenerateJWS |
निजी पासकोड | //GenerateJWS/PrivateKey/Value |
असमानता वाली साइनिंग के लिए, PEM-encoded निजी पासकोड. |
GenerateJWS |
निजी पासकोड का पासवर्ड | //GenerateJWS/PrivateKey/Password |
निजी पासकोड को डिक्रिप्ट करने के लिए पासवर्ड. |
VerifyJWT |
सिमेट्रिक कुंजी (सीक्रेट) | //VerifyJWT/SecretKey/Value |
पुष्टि के लिए, हार्डकोड की गई सिमेट्रिक कुंजी. |
VerifyJWS |
सिमेट्रिक कुंजी (सीक्रेट) | //VerifyJWS/SecretKey/Value |
पुष्टि के लिए, हार्डकोड की गई सिमेट्रिक कुंजी. |
HMAC |
शेयर की गई सीक्रेट कुंजी | //HMAC/SecretKey |
एचएमएसी की गिनती के लिए, हार्डकोड की गई सीक्रेट कुंजी. |
KeyValueMapOperations |
हार्डकोड की गई वैल्यू (Put) | //KeyValueMapOperations/Put/Value |
केवीएम में हार्डकोड किया गया सीक्रेट लिखा जा रहा है. |
ServiceCallout |
बुनियादी पुष्टि के लिए उपयोगकर्ता नाम | //ServiceCallout//Authentication/BasicAuth/UserName |
बैकएंड की पुष्टि के लिए, हार्डकोड किया गया उपयोगकर्ता नाम. |
ServiceCallout |
बुनियादी पुष्टि के लिए पासवर्ड** | //ServiceCallout//Authentication/BasicAuth/Password |
बैकएंड की पुष्टि करने के लिए, हार्डकोड किया गया पासवर्ड. |
SAMLAssertion |
निजी पासकोड की वैल्यू | //SAMLAssertion//PrivateKey/Value |
डिक्रिप्ट/हस्ताक्षर करने के लिए निजी पासकोड. |
SAMLAssertion |
निजी पासकोड का पासवर्ड | //SAMLAssertion//PrivateKey/Password |
निजी पासकोड को डिक्रिप्ट करने के लिए पासवर्ड. |
कस्टम मास्क
जिन फ़ील्ड को आपने पीआईआई के तौर पर मार्क किया है, लेकिन वे डिफ़ॉल्ट मास्क में शामिल नहीं हैं (जैसे कि नीतियों में कस्टम कॉन्फ़िगरेशन), उनके लिए XPath एक्सप्रेशन (कस्टम मास्क) की अपनी सूची दी जा सकती है.
कस्टम मास्क को मैनेज करने के लिए, Edge for Private Cloud सिस्टम पर मौजूद uapim-connector.properties फ़ाइल में कॉन्फ़िगरेशन प्रॉपर्टी को अपडेट किया जाता है.
कस्टम मास्क कॉन्फ़िगर करना
कस्टम मास्किंग पाथ जोड़ने के लिए, कनेक्टर कॉन्फ़िगरेशन फ़ाइल में मौजूद conf_uapim_connector.uapim.mask.xpaths प्रॉपर्टी को अपडेट करें:
- कॉन्फ़िगरेशन फ़ाइल का पाथ:
/opt/apigee/customer/application/uapim-connector.properties - प्रॉपर्टी:
conf_uapim_connector.uapim.mask.xpaths
यह प्रॉपर्टी, कॉमा लगाकर अलग किए गए XPath एक्सप्रेशन की सूची स्वीकार करती है. ये एक्सप्रेशन, उन खास एलिमेंट को टारगेट करते हैं जिनकी वैल्यू आपको मास्क करनी हैं.
कॉन्फ़िगरेशन के लिए उदाहरण
कस्टम वैरिएबल वैल्यू और आंकड़ों वाले फ़ील्ड को मास्क करने के लिए, प्रॉपर्टी को इस तरह सेट करें:
conf_uapim_connector.uapim.mask.xpaths=//StatisticsCollector/Statistics/Statistic[@name='caller'],//StatisticsCollector/Statistics/Statistic[@name='location'],//AssignMessage/AssignVariable[Name='password']/Value
| XPath एक्सप्रेशन | मास्क किया गया एलिमेंट | मकसद |
|---|---|---|
//StatisticsCollector/Statistics/Statistic[@name='caller'] |
आंकड़े की वैल्यू (where name='caller') | इससे कॉल करने वाले की संवेदनशील जानकारी को मास्क किया जाता है. |
//AssignMessage/AssignVariable[Name='password']/Value |
AssignVariable Value (where Name='password') | यह हार्डकोड की गई पासवर्ड वैल्यू को मास्क करता है. |
मास्क की गई नीतियां
टारगेट किए गए एलिमेंट की वैल्यू को मास्क कर दिया जाएगा. मास्क किए गए इस कॉन्टेंट को API हब पर अपलोड किया जाता है.
नीति 1 का उदाहरण (StatisticsCollector - Masked):
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="caller" type="string">****</Statistic> <Statistic name="location" type="string">****</Statistic> </Statistics> </StatisticsCollector>