أمان ClickOnce
ClickOnceتطبيقات خاضعة لقيود الأمان الوصول إلى تعليمات برمجية في.NET Framework للمساعدة في الحد من وصول أن تعليمات برمجية له لحماية موارد و العمليات. لهذا السبب، من المهم أن تفهم ضمانات الأمان الوصول إلى تعليمات برمجية للكتابة الخاصة بك ClickOnceالتطبيقات وفقا لذلك. يمكن للتطبيقات استخدام "الثقة كاملة" أو تستخدم مناطق جزئي، مثل مناطق إنترنت وإنترانت، إلى تقييد الوصول.
بالإضافة إلى ذلك، تستخدم ClickOnce الشهادات للتحقق من أصالة الناشر الخاص بتطبيق، ولتسجيل تطبيق و توزيع الملفات الظاهرة لإثبات أن الملفات قد لا يتم العبث. التوقيع هو an اختياري but recommended step for securing your applications.
المفتاح Zones
Applications that are deployed using ClickOnce التقنية are restricted إلى a التعيين of أذونات و الاجراءات that are defined بواسطة the الأمان منطقة. الأمان zones are defined في إنترنت مستكشف, و are based تشغيل the الموقع of the تطبيق. The following جدول lists the الافتراضي أذونات based تشغيل the توزيع الموقع:
الموقع توزيع |
منطقة الأمان |
---|---|
تشغيل من ويب |
منطقة إنترنت |
يثّبت من ويب |
منطقة إنترنت |
يثّبت من شبكة يجعله مشتركًا الملفات |
منطقة إنترانت المحلية |
يثّبت من قرص مضغوط |
ثقة تامة |
The الافتراضي أذونات are based تشغيل the الموقع من which the الأصلي الإصدار of the تطبيق was deployed; تحديثات إلى the تطبيق will يورث those أذونات. If the تطبيق هو configured إلى تحقق من تحديثات from a ويب أو الموقع الشبكة و a newer الإصدار هو متوفر, the الأصلي installation can receive أذونات for the إنترنت أو إنترانت منطقة instead of كامل-الثقة أذونات. إلى منع مطالبة المستخدمين، يمكن تحديد Administraإلىr النظام نهج ClickOnce نشر يحدد الناشر تطبيق محدد كمصدر موثوق. For computers تشغيل which this سياسة هو deployed, أذونات will be granted automatically و the مستخدم will not be prompted. لمزيد من المعلومات، راجع نظرة عامة على نشر التطبيق موثوق به. إلى تكوين موثوق به تطبيق توزيع, the شهادة can be installed إلى the آلة أو مؤسسة المستوى. لمزيد من المعلومات، راجع كيفية: إضافة Publisher الموثوق بها إلى جهاز كمبيوتر عميل لتطبيقات ClickOnce.
الأمان الوصول إلى تعليمات برمجية Policies
أذونات for an تطبيق are determined بواسطة the إعدادات في the <trustInfo> Element (ClickOnce Application) عنصر of the بيان تطبيق. Visual Studio automatically generates this معلومات based تشغيل the إعدادات تشغيل the مشروع's الأمان صفحة الخصائص. A ClickOnce تطبيق هو granted فقط the specific أذونات that it requests. For مثال, الموقع ملف الوصول يتطلب كامل-الثقة أذونات, if the تطبيق requests ملف-الوصول إذن, it will فقط be granted ملف-الوصول إذن, not كامل-الثقة أذونات. When developing your ClickOnce تطبيق, you should make sure that you طلب فقط the specific أذونات that the تطبيق needs. في most cases, you can استخدم the إنترنت أو محلي إنترانت zones إلى limit your تطبيق إلى جزئي الثقة. لمزيد من المعلومات، راجع كيفية: تعيين منطقة الأمان الخاصة تطبيق ClickOnce. If your تطبيق يتطلب مخصص أذونات, you can إنشاء a مخصص منطقة. لمزيد من المعلومات، راجع كيفية: تعيين أذونات مخصصة لتطبيق ClickOnce.
Including a إذن that ليس part of the الافتراضي إذن التعيين for the منطقة من which the تطبيق هو deployed will cause the إنهاء مستخدم إلى be prompted إلى grant إذن at يثّبت أو تحديث الوقت. لمنع المستخدمين من المطالبة، يمكن تحديد المسؤول عن نظام نهج ClickOnce نشر التي تعرف ناشر تطبيق معينة مصدر موثوق. تشغيل computers الموقع this سياسة هو deployed, أذونات will automatically be granted و the مستخدم will not be prompted.
كـ a developer, it هو your responsibility إلى make sure that your تطبيق will تشغيل مع the appropriate أذونات. If the تطبيق requests أذونات outside of a منطقة during تشغيل الوقت, a الأمان استثناء may appear. Visual Studio enables you إلى يصحح your تطبيق في the الهدف الأمان منطقة. و provides تعليمات في developing secure applications. لمزيد من المعلومات، راجع كيفية: تصحيح أخطاء تطبيقات ClickOnce مع الأذونات المقيدة.
ل المزيد من المعلومات حول الأمان الوصول إلى تعليمات برمجية و ClickOnce، راجع أمان الوصول التعليمات البرمجية لتطبيقات ClickOnce.
تعليمات برمجية-التوقيع Certificates
إلى ينشر an تطبيق بواسطة using ClickOnce توزيع, you can sign the تطبيق و توزيع بيانات for the تطبيق بواسطة using a public/private المفتاح ينشئ ازدواجًا. The أدوات for التوقيع a بيان are متوفر تشغيل the التوقيع الصفحة of the مشروع مصمم. لمزيد من المعلومات، راجع صفحة تسجيل الدخول، مصمم المشروع. Alternatively, you can sign the بيانات مع a المفتاح ملف during the النشر عملية, using the معالج النشر. Also, the عدة تطوير برامج Windows (SDK) يتضمن a ملف-التوقيع أداة, SignTool.exe (أداة التوقيع), that enables you إلى sign the بيان.
بعد the بيانات are signed, the الناشر معلومات based تشغيل the Authenticode توقيع will be displayed إلى the مستخدم في the أذونات حوار صندوق during installation, إلى إظهار the مستخدم that the تطبيق originated من a موثوق به المصدر.
For المزيد معلومات حول ClickOnce و certificates, see ClickOnce و رموز المصادقة.
ASP.NET نموذج-Based مصادقة
If you want إلى عنصر تحكم which deployments each مستخدم can الوصول, you should not تمكين anonymous الوصول إلى ClickOnce applications deployed تشغيل a ويب الخادم. Rather, you would تمكين users الوصول إلى the deployments you have installed based تشغيل a مستخدم's الهوية (using Windows NT مصادقة).
إذا كنت نشر لبيئة دون مصادقة Windows NT، قد يكون حلاً لمحاولة استخدام المصادقة المستندة إلى نموذج ASP.NET لمصادقة مستخدم. ومع ذلك، ClickOnceإلى عدم اعتماد نماذج مصادقة المستندة إلى لأنها تستخدم ملفات تعريف الارتباط الدائمة؛ هذه موجودة مخاطرة أمان لأنه توجد فيه ذاكرة تخزين مؤقت لبرنامج إنترنت مستكشف و يمكن أن تكون hacked. ولذلك، إذا كنت بصدد نشر ClickOnceالتطبيقات، أي سيناريو المصادقة بالإضافة إلى مصادقة Windows NT هو غير معتمد.
وسيطات التمرير
يحدث عين اعتبار الأمان إضافي إذا كان لديك في تمرر الوسيطات في في ClickOnceتطبيق. ClickOnceتمكن المطورين لتوفير سلسلة إستعلام للتطبيقات التي تم نشرها على ويب. سلسلة إستعلام تأخذ شكل سلسلة من أزواج الاسم-القيمة في إنهاء عنوان URL يستخدم إلى يبدأ تطبيق:
http://إسمالخادم.adatum.com/WindowsApp1.تطبيق?اسم المستخدم=joeuser
بواسطة الافتراضي، يتم معطّل الوسيطات سلسلة الاستعلام. إلى تمكنها السمة trustUrlParametersيجب أن يتم تعيين في ملف البيان نشر تطبيق. يمكنك تعيين هذه القيمة من Visual Studioو من MageUI.exe. لمعرفة خطوات تفصيلية حول إلى تمكين تمرير سلاسل الاستعلام، راجع كيفية: استرداد سلسلة الاستعلام عن معلومات في تطبيق ClickOnce.
فيجب عدم تمرير الوسيطات التي تم استردادها من خلال سلسلة استعلام إلى قاعدة بيانات أو إلى سطر الأوامر بدون يتم الآن التدقيق من الوسيطات إلى التأكد من أنها آمنة. الوسيطات غير الآمنة هي تلك التي تحتوي على أحرف الهروب بقاعدة بيانات أو سطر الأوامر التي قد تسمح لمستخدم ضار في التعامل مع تطبيق الخاص بك في في تنفيذ الأوامر إجبارية.
ملاحظة
الوسيطات سلسلة الاستعلام هي الطريقة الوحيدة لتمرير الوسيطات إلى ClickOnceتطبيق عند بدء التشغيل. لا يمكن تمرير الوسيطات إلى ClickOnceتطبيق من سطر الأوامر.
نشر تجميعات مظلل
قد تحتاج إلى تطبيق الخاص بك تشوش بواسطة استخدام Dotfuscator لمنع الآخرين من إجراء هندسة عكسية للتعليمات البرمجية. ومع ذلك، obfuscation تجميع هو غير المتكاملة IDE Studio Vهوual أو عملية نشر ClickOnce. ولذلك، سيكون لديك إلى تنفيذ obfuscation خارج عملية نشر، وربما استخدام خطوة بعد البناء. بعد انتهائك من بنية مشروع، عليك تنفيذ الخطوات التالية يدوياً، خارج Visual Studio:
القيام obfuscation بواسطة استخدام Dotfuscator.
استخدم Mage.exe أو MageUI.exe إلى إنشاء بيانات ClickOnce وتوقيعها. للمزيد من المعلومات، راجع Mage.exe (إنشاء البيان و أداة التحرير) وMageUI.exe (إنشاء بيان و تحرير أداة رسومية للعميل).
ينشر يدوياً (نسخ) الملفات إلى موقع مصدر التوزيع (خادم ويب أو يجعله مشتركًا UNC أو محرك الأقراص المضغوطة).