عنصر machineKey (مخطط إعدادات ASP.NET)

تكوين مفاتيح لاستخدامها في التشفير و فك التشفير من نماذج بيانات ملف تعريف الارتباط المصادقة و بيانات بحالة العرض و للتحقق من حالة تعريف جلسة عمل متوقفة عن العمل.

عنصر تكوين (مخطط إعدادات عام)
  النظام.ويب عنصر (مخطط إعدادات ASP.NET)
    عنصر machineKey (مخطط إعدادات ASP.NET)

<machineKey 
  validationKey="AutoGenerate,IsolateApps" [String]
  decryptionKey="AutoGenerate,IsolateApps" [String]
  validation="HMACSHA256" [SHA1 | MD5 | 3DES | AES | HMACSHA256 | 
    HMACSHA384 | HMACSHA512 | alg:algorithm_name]
  decryption="Auto" [Auto | DES | 3DES | AES | alg:algorithm_name]
/>

السمات والعناصر

تصف المقاطع التالية سمات، عناصر تابعة وعناصر الأصل.

السمات

السمة

الوصف

decryption

سمة String اختيارية.

تعيّن نوع خوارزمية التجزئة المستخدمة من أجل فك تشفير البيانات.

يمكن أن تكون هذه السمة إحدى القيم الممكنة التالية.

Valueالوصف
Auto تعيّن أن ASP.NET يحدد خوارزمية التشفير التي يجب استخدامها ، استناداً إلى إعدادات التكوين.هذه هي القيمة الافتراضية لفك تشفير machineKey.
AES يحدد ما إذا كان ASP.NET يستخدم خوارزيمة (Rijndeal) في فك التشفير البيانات.AES هذه هي الخوارزمية الافتراضية لفك تشفير البيانات.
3DES يحدد ما إذا كان ASP.NET يستخدم خوارزيمة (Rijndeal) في فك التشفير البيانات.خوارزمية TripleDES ( 3DES) تستخدم التكرار ثلاث مرات متتابعة من خوارزمية DES.
DES يحدد ما إذا كان ASP.NET يستخدم خوارزيمة (Rijndeal) في فك التشفير البيانات.
alg:algorithm_name يحدد ما إذا كان ASP.NET يستخدم خوارزمية مخصصة في التنسيق "alg: اسم الخوارزيمة " لتشفير البيانات حيث يمكن أن يكون خوارزمية التشفير أي تطبيق مشتق من SymmetricAlgorithm.
ملاحظةملاحظة
هذه السمة الجديد في ‏‫NET Framework. الإصدار 2.0.

decryptionKey

سمة String مطلوبة.

يعين المفتاح الذي يتم استخدامه لتشفير وفك تشفير البيانات أو العملية التي يتم بواسطتها إنشاء المفتاح. هذه السمة يتم استخدامها لتشفير مصادقة النماذج وفك التشفير و التشفير بحالة العرض عند validation تعيينه إلى TripleDES الحقل.

معدّل القيمة يشير إلى أن ASP.NET يقوم بإنشاء مفتاح مشفر فريد لكل تطبيق باستخدام معرف التطبيق. IsolateApps مُضمن كجزء من القيمة الافتراضية.

إذا كنت في حاجة إلى دعم تكوين عبر شبكة الخوادم ويب (تكتّل ويب) عين هذه السمة يدوياً للتأكد من تناسق تكوين. لمزيد من المعلومات حول كيفية إنشاء القيم يدوياً validationKey و decryptionKey السمات، راجع كيف : تكوين MachineKey في ‏‫ASP.NET 2.0.

يمكن أن تكون هذه السمة إحدى القيم الممكنة التالية. يكون الإعداد الافتراضي هو AutoGenerate,IsolateApps.

Valueالوصف
AutoGenerate, IsolateApps AutoGenerate يعين المعدّل أن ASP.NET يقوم بإنشاء مفتاح عشوائي ويخزنه في "مرجع أمان محلي" LSA.يشير المعدّل إلى أن ASP.NET يقوم بإنشاء مفتاح مشفر فريد لكل تطبيق باستخدام معرف التطبيق.هذا الإعداد هو القيمة الافتراضية.
valueتعيين المفتاح المعين يدوياً.يجب تعيين هذه القيمة يدويًا بشكل سلسلة من الأحرف السداسية العشرية للتأكد من تناسق التكوين عبر تكتّل ويب.يجب أن يكون المفتاح 16 حرفاً سداسي عشري في الطول عند استخدام تشفير DES و 48 حرفاً سداسي عشري طويل عند استخدام DES الثلاثي (3DES).عند استخدام AES يمكن أن يكون الطول المفتاح 32 حرفاً (128-بت) 48 حرفاً (192-بت) أو 64 حرفاً (256 بت). التفضيل استخدام 64 حرفاً لتوفير قوة إلى فك التشفير.إذا كان يتم استخدام مفاتيح أقل من الحد الأقصى يجب إنشاء المفاتيح بواسطة وسيلة واقعية عشوائي مثل باستخدام RNGCryptoServiceProvider الفئة.يمكن لـ ASP.NET استخدام DES ثلاثي فقط على أجهزة الكمبيوتر التي يتوفر فيها تشفير من نوع 128 بت.

validation

سمة MachineKeyValidation مطلوبة.

تحديد نوع التشفير المستخدم في التحقق من صحة البيانات.

يمكن أن تكون هذه السمة إحدى القيم الممكنة التالية. يكون الإعداد الافتراضي هو SHA1.

Valueالوصف
AES يحدد ما إذا كان ASP.NET يستخدم خوارزيمة (Rijndeal) في التحقق من صحة البيانات.
MD5 يحدد ما إذا كان ASP.NET يستخدم ملخص الرسالة 5 ( MD5) خوارزمية التجزئة للتحقق من صحة البيانات.تنتج هذه الخوارزمية أداء أفضل من SHA1.
SHA1 يحدد ما إذا كان ASP.NET يستخدم خوارزيمة التجزئة في التحقق من صحة البيانات.استخدم هذه الخوارزمية لأمان متزايد.
3DES يحدد ما إذا كان ASP.NET يستخدم خوارزيمة (Rijndeal) في التحقق من صحة البيانات.خوارزمية TripleDES تستخدم التكرار ثلاث مرات متتابعة من خوارزمية DES.
HMACSHA256 يحدد ما إذا كان ASP.NET يستخدم ASP.NET HMACSHA256 والتي هي تجزئة مفتاحية تستخدم دالة تجزئة SHA256 للتحقق من صحة البيانات.هذا الإعداد هو القيمة الافتراضية.
HMACSHA384 يحدد ما إذا كان ASP.NET يستخدم ASP.NET HMACSHA384 والتي هي تجزئة مفتاحية تستخدم دالة تجزئة SHA256 للتحقق من صحة البيانات.
HMACSHA512 يحدد ما إذا كان ASP.NET يستخدم ASP.NET HMACSHA512 والتي هي تجزئة مفتاحية تستخدم دالة تجزئة SHA256 للتحقق من صحة البيانات.
alg:algorithm_name يحدد ما إذا كان ASP.NET يستخدم خوارزمية مخصصة في التنسيق "alg: اسم الخوارزيمة " للتحقق من صحة البيانات حيث يمكن أن يكون خوارزمية التشفير أي تطبيق مشتق من KeyedHashAlgorithm.

validationKey

سمة String مطلوبة.

تعيّن المفتاح المستخدم للتحقق من صحة البيانات المشفرة. المستخدم عندما يكون enableViewStateMAC لإنشاءتعليمات برمجية لمصادقة الرسائل (MAC) للتأكد من أن حالة العرض لم يتم العبث به. validationKey يُستخدم أيضاً إلى إنشاء معرفات جلسة عمل متوقفة ،و الخاصة بالتطبيق لضمان أن متغيرات حالة جلسة العمل معزولة بين جلسات العمل.

معدّل القيمة يشير إلى أن ASP.NET يقوم بإنشاء مفتاح مشفر فريد لكل تطبيق باستخدام معرف التطبيق. IsolateApps مُضمن كجزء من القيمة الافتراضية.

إذا كنت في حاجة إلى دعم تكوين عبر شبكة الخوادم ويب (تكتّل ويب) عين هذه السمة يدوياً للتأكد من تناسق تكوين. لمزيد من المعلومات حول كيفية إنشاء القيم يدوياً validationKey و decryptionKey السمات، راجع كيف : تكوين MachineKey في ‏‫ASP.NET 2.0.

يمكن أن تكون هذه السمة إحدى القيم الممكنة التالية. يكون الإعداد الافتراضي هو "AutoGenerate,IsolateApps".

Valueالوصف
AutoGenerate, IsolateApps AutoGenerate يعين المعدّل أن ASP.NET يقوم بإنشاء مفتاح عشوائي ويخزنه في "مرجع أمان محلي" LSA.يشير المعدّل إلى أن ASP.NET يقوم بإنشاء مفتاح مشفر فريد لكل تطبيق باستخدام معرف التطبيق.هذا الإعداد هو القيمة الافتراضية.
value
تعيين المفتاح المعين يدوياً.يجب تعيين هذه القيمة يدويًا بشكل سلسلة من الأحرف السداسية العشرية للتأكد من تناسق التكوين عبر تكتّل ويب.تُبيّن الجداول التالية طول السلاسل الست عشري الموصى باستخدامها مع كل نوع المفتاح:
Valueالطول الموصى به
AES64
SHA140
3DES48
sha25664
sha38496
sha512128
MD532
ملاحظة هامةهام
لم يعد MD5 مستحسن لأنه لم يعد آمناً.
إذا كان يتم استخدام مفاتيح أقل من الحد الأقصى يجب إنشاء المفاتيح بواسطة وسيلة واقعية عشوائي مثل باستخدام RNGCryptoServiceProvider الفئة.يمكن لـ ASP.NET استخدام DES ثلاثي فقط على أجهزة الكمبيوتر التي يتوفر فيها تشفير من نوع 128 بت.

العناصر التابعة

لا يوجد.

العناصر الأصلية

العنصر

الوصف

configuration

تحديد عنصر الجذر المطلوب في كل ملف تكوين مستخدم من قبل وقت تشغيل اللغة العامة وتطبيقات .NET Framework.

system.web

يحدد عنصر الجذر لإعدادات تكوين ASP.NET في ملف التكوين ويحتوي على عناصر تكوين التي تقوم بتكوين تطبيقات ASP.NET على الويب وتتحكم بسلوكيات التطبيقات .

ملاحظات

يوضح مثال التعليمات البرمجية التالي كيفية تعيين كلا من validationKey و decryptionKey السمات لـ AutoGenerate. isolateApps يتم تحديد قيمة لإنشاء مفاتيح فريدة لكل تطبيق على الملقم.

<machineKey 
   validationKey="AutoGenerate,IsolateApps" 
   decryptionKey="AutoGenerate,IsolateApps" 
   validation="HMACSHA256"
/>

راجع أيضًا:

المهام

الإرشادات التفصيلية: استخدام معلومات حول تكوين تشفير المحمي تكوين

كيفية: تكوين دلائل معينة باستخدام إعدادات الموقع

كيفية: تأمين إعدادات التكوين ASP.NET

المرجع

النظام.ويب عنصر (مخطط إعدادات ASP.NET)

عنصر تكوين (مخطط إعدادات عام)

System.Configuration

System.Web.Configuration

MachineKeySection

MachineKey

المبادئ

مصادقة النماذج عبر تطبيقات

تأمين الأدوار

تأمين عضوية

تأمين خصائص ملف التعريف

تأمين بحالة جلسة العمل

تسلسل هرمي ملف تكوين ASP.NET و الوراثة

تأمين تكوين ASP.NET

وحدات سيناريو التكوين ASP.NET

موارد أخرى

إعدادات التكوين العامة (ASP.NET)

إعدادات تكوين الـ ASP.NET

إدارة مواقع ويب ASP.NET

تكوين ASP.NET API