معرفی
این مقاله توضیحی در مورد نحوه گرفتن یک برنامه ASP.NET موجود در حال اجرا در سرویس Azure App ارائه می دهد و بدون لمس کد C#، آن را به گونه ای پیکربندی می کند که مقادیر پیکربندی حساس خود را به جای وب آن از یک Key Vault بازیابی کند. فایل config یا App.Config.
روشی که برنامه امروز پیکربندی را میخواند، به عنوان مثال ConfigurationManager.AppSettings["MyDatabaseConnectionString"]، این مقدار مستقیماً از یک راز در Key Vault میآید، بدون اینکه چیزی در کد منبع واقعی برنامه شما تغییر کند.
این نیز بدون ذخیره رشته اتصال Key Vault یا اعتبارنامه ها در فایل پیکربندی برنامه شما است و باعث می شود آن را به راحتی در محیط ها مجدداً بازگردانی کنید.
فریم ورک و پیکربندی ساز
این راهنما برای یک پروژه ASP.NET است که .NET Framework 4.7.1 یا جدیدتر و Configuration Builders را هدف قرار می دهد که فقط در نسخه های اخیر چارچوب موجود هستند.
سازندگان پیکربندی در ASP.NET راهی برای تغییر و/یا نادیده گرفتن مقادیری که از فایل های پیکربندی شما می آیند ارائه می کنند (
Web.config
در مورد ASP.NET) با استفاده از منابع مختلف (متغیرهای محیطی، Key Vault و غیره). این بدان معنی است که شما می توانید مقادیر پیکربندی خود را در مکان های دیگری غیر از آن فایل ها ذخیره کنید بدون اینکه بخش هایی از برنامه خود را که وابسته به آن مقادیر هستند تغییر دهید.
مراحل پیاده سازی
- رازها را به Key Vault اضافه کنید: اسرار را به Key Vault اضافه کنید و مهم است که اسرار باید همان نام تنظیمات برنامه ای باشد که می خواهید با آنها جایگزین کنید. بنابراین، برای مثال، اگر یک تنظیمات برنامه با کلید MyDatabaseConnectionString در خود دارید
Web.config
فایل، باید یک راز با همان نام و مقدار مربوطه در Key Vault ایجاد کنید.
مراحل ایجاد Key Vault
- به اسرار ذخیره شده در Key Vault به برنامه وب خود دسترسی پیدا کنید. رویکرد توصیه شده استفاده از ویژگی هویت مدیریت شده Web App است. این ویژگی یک وب اپلیکیشن را با هویت خاص خود در اکتیو دایرکتوری Azure ارائه میکند و برنامه میتواند با استفاده از آن هویت با Key Vault احراز هویت کند. مزیت این کار این است که تنها اطلاعاتی که برای ارسال به برنامه مورد نیاز است، نام نمونه Key Vault برای اتصال به آن است.آ. شناسه مدیریت شده سیستم را در برنامه وب فعال کنید:
ب با مجوزهای مربوطه، به برنامه وب در Key Vault اجازه دسترسی بدهید
- به صندوق کلید خود بروید و به خط مشی های دسترسی در ناوبری سمت چپ بروید:
![یکپارچه سازی Azure Key Vaults با برنامه های کلاسیک ASP.NET](http://pezhvak24.ir/dl/codenevis/firstcode/article/integrating-azure-key-vaults-with-classic-asp-net-applications/Images/AccessPolicy.jpg)