إشعار
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تسجيل الدخول أو تغيير الدلائل.
يتطلب الوصول إلى هذه الصفحة تخويلاً. يمكنك محاولة تغيير الدلائل.
ينطبق على: تطبيقات اللوحة
طلب قيمة غير محددة لعمود مؤمن لسجل Microsoft Dataverse واحد.
Description
Dataverse.Unmask تقرأ الدالة عمودا بشكل غير متزامن وترجع قيمة واحدة بنوع Power Fx للعمود. ولا يرجع سجلا أو جدولا، أو يحدث السجل المصدر، أو يغير قاعدة الإخفاء، أو يستبدل القيم المقنعة في مكان آخر في تطبيقك.
يفرض Dataverse أذونات المستخدم. لا تمنح الدالة الوصول أو تتجاوز الأمان على مستوى العمود. لقراءة قيمة غير محددة، يحتاج المستخدم إلى الوصول إلى الجدول والسجل، وإذن قراءة العمود، وإذن القراءة غير المحدد المناسب في ملف تعريف أمان العمود.
أضف جدول Dataverse كمصدر بيانات في تطبيق اللوحة وقم بتمكين الأمان على مستوى العمود على العمود. لتكوين الإخفاء، قم بتطبيق قاعدة إخفاء مدعومة في بيئة مدارة. لا يحتوي العمود المؤمن بالضرورة على قاعدة إخفاء. راجع الأمان على مستوى العمودوإنشاء قواعد الإخفاء وإدارتها للتكوين وخيارات الأذونات وأنواع قواعد الإخفاء المدعومة.
مهم
افرض على المسؤول اختيار الإذن المناسب للقراءة غير المنسجمة للسيناريو. لا تمنح كافة السجلات فقط لتمكين مثال سجل واحد. اختبر قيود الوصول باستخدام حساب غير مسؤول لأن الأمان على مستوى العمود لا يخفي البيانات من مسؤولي النظام.
بناء الجملة
Dataverse.Unmask( Record, Column )
- سجل - مطلوب. سجل يحتفظ بهوية سجل Dataverse الخاص به ويقترن بمصدر بيانات Dataverse واحد بالضبط.
- عمود - مطلوب. معرف عمود عددي مؤمن ومدعم في هذا السجل. قم بتوفير معرف عمود، وليس تعبيرا نصيا يحتوي على اسم العمود.
يمكنك استخدام اسم عرض صالح أو اسم منطقي للعمود. استخدم علامات اقتباس مفردة حول اسم عرض يحتوي على مسافات، مثل 'Sensitive reference'. تنشئ علامات الاقتباس المزدوجة قيمة حرفية للنص ولا تكون مكافئة. يقوم Power Apps بحل المعرف إلى الاسم المنطقي للعمود.
متطلبات السجل والعمود
يمكن استخدام سجل معرض محدد أو سجل تم إرجاعه بواسطة LookUp أو سجل مخزن في متغير أو مجموعة إذا احتفظ بهوية Dataverse واقترانه بمصدر Dataverse واحد بالضبط. لا يؤدي إنشاء سجل مجهول بنفس قيم الحقول إلى تأسيس هذه الهوية.
لا تقم بتعيين سجلات من جداول Dataverse مختلفة لنفس متغير السجل المستخدم من قبل Dataverse.Unmask. يرتبط هذا المتغير بمصادر متعددة ويتم رفضه، حتى إذا كانت الجداول تحتوي على أعمدة مؤمنة بأسماء مطابقة. استخدم متغيرات أو استدعاءات منفصلة ذات مصدر واحد.
يجب تأمين العمود الهدف وأن يكون له نوع عددي معتمد. لا تعد قيم البحث والسجل والجدول والملف والصورة والأعمدة غير المصممة أهدافا مدعومة. تختلف قراءة سجل من خلال بحث عن إلغاء تعيين عمود ذي قيمة بحث. راجع وثائق قاعدة الإخفاء لسيناريوهات الإخفاء المدعومة؛ لا يثبت قبول نوع الصيغة أنه يمكن تكوين قاعدة إخفاء لعمود.
القيمة المرجعة والأخطاء
تحتوي النتيجة على نفس نوع Power Fx مثل العمود الهدف. على سبيل المثال، يقوم عمود نص بإرجاع نص، وليس سجلا يحتوي على نص.
استخدم IfError لمعالجة عمليات القراءة الفاشلة. يحدد Dataverse الاستجابة عند تقييد الوصول؛ لا تفترض أن كل رفض إذن ينتج عنه خطأ HTTP.
| الوضع | السلوك |
|---|---|
| لا يحتوي السجل على مصدر Dataverse مقترن أو يحتوي على مصادر Dataverse متعددة. | يرفض Power Apps Studio وسيطة السجل. |
| العمود غير معروف أو غير آمن أو يحتوي على نوع غير معتمد. | يرفض Power Apps Studio وسيطة العمود. |
| لا يحتوي السجل غير المحمي على هوية صالحة في وقت التشغيل، أو لا يمكن حل مصدر Dataverse الخاص به. | ترجع الدالة خطأ سجل غير صحيح. |
| فشل طلب Dataverse. | ترجع الدالة خطأ Power Fx الذي يمكنك التعامل معه باستخدام IfError. |
| لا يرجع الطلب الناجح أي صف، أو يحذف العمود المطلوب، أو يرجع قيمة خالية. | النتيجة فارغة. |
لا تحدد النتيجة الفارغة وحدها مشكلة في الإذن. تحقق من السجل المحدد وقيمته ووصول المستخدم قبل التعامل مع نتيجة فارغة على أنها فشل.
أمثلة
تستخدم هذه الأمثلة جدول Dataverse توضيحي Customers مع عمود نص آمن يسمى 'Sensitive reference'. أضف الجدول كمصدر بيانات، وقم بتكوين قاعدة إخفاء، واستخدم السجلات الاصطناعية مع مستخدم اختبار لديه الأذونات المناسبة. استبدل أسماء الجداول والأعمدة بأسماء الأعمدة الخاصة بك.
قراءة سجل محدد
قم بتعيين الخاصية Items الخاصة بمعرض إلى Customers. مع تحديد سجل محفوظ، تطلب هذه الصيغة مرجعها غير المحدد:
Dataverse.Unmask( Gallery1.Selected, 'Sensitive reference' )
إذا كانت القيمة المخزنة هي "REF-12345" وكان لدى المستخدم إذن بقراءتها دون خريطة، فإن النتيجة المتوقعة هي النص "REF-12345". لا تغير الصيغة القيمة المقنعة المقروءة من خلال Gallery1.Selected.'Sensitive reference'.
معالجة خطأ للحصول على نتيجة نصية
استخدم الصيغة التالية في الخاصية Text الخاصة بتسمية نصية حيث تنوي عرض القيمة غير المنسجمة:
IfError(
Dataverse.Unmask( Gallery1.Selected, 'Sensitive reference' ),
"Unable to show this value."
)
قيمة الاستبدال هي نص لأن 'Sensitive reference' عمود نص. بالنسبة لنوع عمود معتمد مختلف، استخدم قيمة استبدال متوافقة أو قم بتحويل النتيجة قبل إرجاع رسالة نصية.
IfError يعالج الأخطاء، وليس نتائج فارغة ناجحة.
للحصول على تفاعل كامل للكشف والإخفاء، راجع الكشف عن قيمة عمود Dataverse مقنعة.
معالجة البيانات
يمكن للتقييمات المتكررة إعادة استخدام النتائج المخزنة مؤقتا بدلا من إجراء طلبات شبكة جديدة. لا تعتمد على تقييم آخر لإعادة التحقق من الأذونات التي تم تغييرها مؤخرا. إخفاء عنصر تحكم ليس حد تخويل ولا مسح القيم المخزنة مؤقتا.
لا تحتفظ بالقيم غير المخفية باستخدام SaveData، أو اكتبها في السجلات، أو انسخها إلى مصدر بيانات أقل حماية. تجنب الكشف عن البيانات غير المغمورة في لقطات الشاشة أو مرفقات التشخيص.