نمای کلی
به عنوان بخشی از یکپارچهسازی رابط API hub، آپلود فراداده برای پروکسی API و بستههای جریان مشترک با API Hub همگامسازی میشوند. این بستهها ممکن است حاوی اطلاعات شخصی قابل شناسایی (PII) یا سایر دادههای حساس در پیکربندیهای سیاست باشند. این ویژگی به شما امکان میدهد قبل از آپلود بستهها در API hub، فیلدهای PII شناسایی شده را پنهان کنید و از حریم خصوصی دادهها و انطباق آنها با محیط Edge for Private Cloud خود اطمینان حاصل کنید.
رویکرد ماسکینگ
پوشش PII با استفاده از عبارات XPath برای هدف قرار دادن عناصر خاص در پیکربندیهای سیاست با فرمت XML درون بستهها اعمال میشود. این ویژگی به دو بخش تقسیم میشود.
ماسکهای پیشفرض
Apigee Edge برای Private Cloud شامل یک لیست از پیش تعریف شده و داخلی از عبارات XPath (به نام ماسکهای پیشفرض ) است که به طور خودکار فیلدهایی را که به عنوان منابع بالقوه PII در سیاستهای مختلف شناخته میشوند، هدف قرار میدهد.
منابع بالقوه PII و ماسکهای پیشفرض
جدول زیر سیاستها و عناصری را که پوشش پیشفرض برای آنها اعمال میشود، فهرست میکند:
| نام سیاست | عنصر حساس | ماسک پیشفرض XPath | منطق |
|---|---|---|---|
BasicAuthentication | نام کاربری هاردکد شده | //BasicAuthentication/User | مستقیماً هویت کاربر را به صورت متن واضح ذخیره میکند. |
BasicAuthentication | رمز عبور کدگذاری شده | //BasicAuthentication/Password | رمز عبور را مستقیماً به صورت متن واضح ذخیره میکند. |
GenerateJWT | کلید متقارن (مخفی) | //GenerateJWT/SecretKey/Value | کلید رمزگذاری/امضای متقارنِ کدگذاریشده. |
GenerateJWT | کلید خصوصی | //GenerateJWT/PrivateKey/Value | کلید خصوصی رمزگذاری شده با PEM برای امضای نامتقارن. |
GenerateJWT | رمز عبور کلید خصوصی | //GenerateJWT/PrivateKey/Password | رمز عبور برای رمزگشایی کلید خصوصی. |
GenerateJWS | کلید متقارن (مخفی) | //GenerateJWS/SecretKey/Value | کلید رمزگذاری/امضای متقارنِ کدگذاریشده. |
GenerateJWS | کلید خصوصی | //GenerateJWS/PrivateKey/Value | کلید خصوصی رمزگذاری شده با PEM برای امضای نامتقارن. |
GenerateJWS | رمز عبور کلید خصوصی | //GenerateJWS/PrivateKey/Password | رمز عبور برای رمزگشایی کلید خصوصی. |
VerifyJWT | کلید متقارن (مخفی) | //VerifyJWT/SecretKey/Value | کلید متقارن کدگذاری شده برای تأیید. |
VerifyJWS | کلید متقارن (مخفی) | //VerifyJWS/SecretKey/Value | کلید متقارن کدگذاری شده برای تأیید. |
HMAC | کلید مخفی مشترک | //HMAC/SecretKey | کلید مخفی کدگذاری شده برای محاسبه HMAC. |
KeyValueMapOperations | مقدار هاردکد شده (Put) | //KeyValueMapOperations/Put/Value | رمز عبور به صورت کدنویسی شده در KVM نوشته میشود. |
ServiceCallout | نام کاربری مجوز پایه | //ServiceCallout//Authentication/BasicAuth/UserName | نام کاربری کدگذاری شده برای احراز هویت در بخش مدیریت. |
ServiceCallout | رمز عبور اصلی احراز هویت** | //ServiceCallout//Authentication/BasicAuth/Password | رمز عبور کدگذاری شده برای احراز هویت در بخش مدیریت. |
SAMLAssertion | مقدار کلید خصوصی | //SAMLAssertion//PrivateKey/Value | کلید خصوصی برای رمزگشایی/امضا. |
SAMLAssertion | رمز عبور کلید خصوصی | //SAMLAssertion//PrivateKey/Password | رمز عبور برای رمزگشایی کلید خصوصی. |
ماسکهای سفارشی
برای فیلدهایی که به عنوان PII شناسایی میکنید اما توسط ماسکهای پیشفرض پوشش داده نمیشوند (مانند پیکربندی سفارشی در سیاستها)، میتوانید لیست خودتان از عبارات XPath ( ماسکهای سفارشی ) را ارائه دهید.
ماسکهای سفارشی با بهروزرسانی یک ویژگی پیکربندی در فایل uapim-connector.properties در سیستم Edge for Private Cloud شما مدیریت میشوند.
پیکربندی ماسکهای سفارشی
برای افزودن مسیرهای پوشش سفارشی، ویژگی 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'] | مقدار آماری (که در آن name='caller') | هویت حساس تماسگیرنده را پنهان میکند. |
//AssignMessage/AssignVariable[Name='password']/Value | مقدار متغیر را اختصاص دهید (جایی که نام = 'رمز عبور') | مقادیر رمز عبور کدگذاری شده را میپوشاند. |
سیاستهای پنهان
مقدار عناصر مورد نظر پنهان خواهد شد. این محتوای پنهان شده در API hub آپلود میشود.
سیاست نمونه ۱ (StatisticsCollector - Masked):
<StatisticsCollector name="publishPurchaseDetails"> <Statistics> <Statistic name="caller" type="string">****</Statistic> <Statistic name="location" type="string">****</Statistic> </Statistics> </StatisticsCollector>