سلام
Machine Key in mvc5 چیست وکاربرد ان در mvc5 چگونه است
این ماژول به کاربران کمک می کند تا از داده های view stat و کوکی های هویت سنجی (از طریق تعریف رمزهای عبور) محافظت کنید. با تعریف این ماژول تگی با نام <MachineKey > در فایل web.config ساخته می شود. Viewstat نیز تکنیکی است که در صفحات وب asp.net به منظور ذخیره سازی عملیات postback مورداستفاده قرار می گیرد تا در دفعات بعدی نیازی به وارد کردن مجدد این اطلاعات نباشد.
به عنوان مثال فرض کنید فرمی را پر و سپس ارسال می کنید و سرور خطایی مبنی بر وجود اطلاعات غلط را باز می گرداند. بنابراین بایستی سایر اطلاعات را اصلاح و مجدد وارد کنید. در این حالت می توان گفت که سایت شما از viewstat استفاده نکرده است. اما با فعال بودن viewstat اطلاعات فرم هنگام تحویل به سرور پاک نخواهند شد. در واقع view stat اطلاعات ارسالی کاربر به سرور را نگهداری می کند. درصورتیکه راهنمای <%@ Page EnableViewState=”false” %> دارای مقدار false باشد view stat غیرفعال و اگر true باشد فعال خواهد بود.
کار اصلی ماژول MachineKey تولید کلیدهای تصادفی برای اعتبار سنجی ، رمزگذاری /رمزگشایی viewstate است .
viewstate مفهومی در برنامه های ASP.NET برای حفظ وضعیت کنترل های صفحه در هنگام PostBack هست.
صفات MachineKey به شکل کلید های زیر می باشند که نمونه ای از تعریف آن در ادامه ی مقاله قابل مشاهده می باشد. این کلیدها در تگ MachineKey موجود در فایل web.config قرار داده می شوند.
برای درک بهتر کلید های MachineKey ابتدا باید با مفهوم MAC (Message Authentication Check) آشنا شویم :
MAC قابلیتی از asp.net است که تنظیمات یک فرم یا اطلاعات وارد شده در آن (یا همان view state)را تحلیل کرده تا از صحت آنها مطمئن شود و از دستکاری شدنشان هنگام بازگشت از سرور جلوگیری به عمل آید.
کلید Validation :این کلید کد پیام MAC را تحلیل کرده تا از جامعیت و درستی داده ها اطمینان حاصل کند.
کلید Decryption :از آن برای رمزگذاری و رمزگشایی داده های فرم ها و viewstate ها استفاده می شود.
خاصیت این کلید رمزگذاری تنظمیات سرویس هایی مانند viewstate ، هویت سنجی اطلاعات وارد شده در فرم ها ، اعضا و role آنها و شناسایی افراد ناشناس می باشد.
همچنین کلیه viewstate ها در صفحه به صورت رمز شده ذخیره می شوند و هر برنامه دات نت در ابتدای اجرا یک کلید برای رمز کردن و رمزگشایی viewstate ها به صورت تصادفی ایجاد می کند.
می توان گفت Machine key یک کلید رمزگشایی ۲۵۶ بیتی و همچنین یک کلید اعتبار سنجی ۵۱۲ بیتی تولید می نماید که به رشته ای از کاراکترهای هگزادسیمال تبدیل می شوند.
ابتدا وارد سایت http://www.allkeysgenerator.com شوید تب "Machine Key" را انتخاب کنید
هیچ کاربری تا کنون از این پست تشکر نکرده است
با ما تماس بگیرید تا در این مسیر همراهتان باشیم :)