حرکت های زيرکانه Windows .NET Server

بررسی ميزان افزايش امنيت ، يکپارچگی و فايده های Windows .NET Server برای برنامه نويسان

مايکروسافت حرفهای بزرگی درباره امکانات ويندوز آينده اش می زند . Windows .NET Server در اوايل سال 2003 ارائه خواهد شد . برای داشتن يک پيش زمينه درباره آن نويسنده مجله دات نت ، Patrick Meader با رييس بخش محصولات مايکروسافت ، Jay Paulus صحبت کرده است . ببينيم مايکروسافت چه چيزهايی را در ويندوز آينده اش برای برنامه نويسان ايجاد کرده و اينکه آيا ادعای مايکروسافت درباره امنيت اين سيستم صحت دارد ؟

Jay Paulus

مجله دات نت يا NM  : کليف ريو معاون مديريت در بخش تجاری Windows .NET Server گفته است ، بزرگترين تغيير در Windows .NET Server تاکيد بر روی برنامه نويس هاست . لطفا ً کمی توضيح دهيد .
Jay Paulus يا JP :دات نت Framework را از ابتدا در Windows .NET Server قرار داديم . مايکروسافت در حال دور شدن از طرح قديمی و کلاسيک Application Server ها و استفاده از COM+ است . مانند IIS و AD يا Active Directory که از آن روش ها استفاده می کنند . هم اکنون برنامه نويس می تواند از تمام مزيت های دات نت و XML WebService ها استفاده کند . با Windows .NET Server نسل جديدی از برنامه ها را بوجود آورديم که شرکتهای تجاری بوسيله سيستم های قبلی امکان ايجاد آن را نداشته اند . شما به Application Server به عنوان بخشی از يک Application Platform احتياج داريد . اين يکپارچگی به اين معنی است که برنامه نويس و Admin سيستم با اجرای اين برنامه ها به صورت Web Based مانند بخش بندی کردن هر برنامه برای جلوگيری از تداخل آنها و بحثهای امنيتی ؛ به تمام اجزای آنها کنترل دارند .

NM : شما جنبه يکپارچگی را ذکر کرديد ، خيلی از اين امکانات برای يکپارچگی و ديگر قدرت های Windows .NET Server هم اکنون در Service Pack ها و برنامه های جنبی وجود دارد و می توان آنها را بر روی ويندوزهای فعلی نصب کرد . وقتی چنين امکاناتی وجود دارد چه احتياجی به Windows .NET Server است ؟

JP : اين سوالات را زياد شنيده ايم ؛ "من هم اکنون می توانم از دات نت در ديگر ويندوز ها استفاده کنم ، Windows .NET Server چه امکان ويژه جديدی دارد ؟" ، جواب اين سوالات به دو بخش مربوط می شود . يکپارچگی در دات نت تنها از نقطه نظر انتشار(deploy) نرم افزار مورد نظر است . ديگر نيازی به نگرانی برای انتشار نرم افزارها نيست و می دانم که مطمئنا ً نرم افزار من بدون مشکل بر روی سيستم ديگری کار خواهد کرد . نکته دوم يکپارچگی در IIS6 که يک بار ديگر از اول نوشته شده است می باشد . در ساختار جديد IIS کنترل بيشتری بر روی محدود کردن نرم افزار های تحت وب و استفاده مجدد(Application Recycling) از آنها داريم . می توانيم تعداد يک يا چند برنامه را در pool قرار دهيم و هر pool تنظيمات مربوط خودش را دارد . همچنين برنامه های در هنگام اجرا در يک محيط مجزا اجرا می شود . (isolated)
اين تخييرات از نظر برنامه نويس با اينکه در نحوه نوشتن برنامه ها تغيير خواصی صورت نمی گيرد ولی يک مزيت به شمار می آيد . زيرا سرعت بيشتر در اجرا ، امنيت بيشتر و قابليت توسعه نرم افزارها را به برنامه نويس می دهد . همه اينها به خاطر اين است که اين pool ها مستقيما ً با Kernel-Mode HTTP Listener در ارتباط هستند . اين امکانی که در Windows .NET Server وجود دارد مسئول اجرای تمامی درخواست هايی است که از IIS می رسد . همچنين UDDI نيز به شکل پيش فرض در Windows .NET Server جای گرفته است .
UDDI در حالت يک Yellow Page برای منابع برنامه نويسی است . شرکت های بزرگ اين امکانات را می خواهند اما پشت فايروال های خودشان . برای همين ، امکان Authentication را از روی AD به UDDI هم اضافه کرديم ، بنابراين به غير از لايه های امنيتی که در UDDI وجود داشت لايه ديگری نيز به آن افزوده شد . اين امکانات زمان طراحی بودند .
از ديدگاه زمان اجرای برنامه ها Windows .NET Server امکان ساختن برنامه های پويا را به شما می دهد . برای مثال ، فرض کنيد که يک شرکت مالی را مديريت می کنيد فرض کنيد که سيستمی می خواهيد که بازرگانان اطلاعات مورد نياز خود را در آن پيدا کنند . مطمئنا ً شما می خواهيد که آن ها از آخرين اطلاعات به شکل پويا استفاده کنند . حالا فرض کنيد که می خواهيد مدلی که برای آنها ايجاد کرده ايد را با مدل جديدتری جابجا کنيد . شما آن مدل را در UDDI ثبت کرده ايد و در تعريف آن گفته ايد که به صورت پويا دنبال نسخه های جديد مدل خود بگردد و اگر پيدا کرد آن را با سيستم فعلی عوض کند . اين روش برای گردش به دنبال سرويس های جديد يک استاندارد خواهد شد .
يک سناريو ديگر ، فرض کنيد شما دفاتر فرعی برای شرکتتان داريد و می خواهيد که يک برنامه مرکزی از فروش آنها گزارش کلی تهيه کند . اگر از UDDI برای ثبت آن دفاتر استفاده کنيد ، وقتی که يک دفتر جديد به سيستم اضافه شود شما آن را در UDDI ثبت می کنيد . اين بدين معنی است که برنامه مرکزی می فهمد يک دفتر جديد به ليست اضافه شده است و از آن نيز در گرفتن اطلاعات استفاده می کند . تمام کاری که شما به عنوان برنامه نويس بايد انجام دهيد ثبت سرور جديد در UDDI است ديگر احتياجی به تغييری در برنامه مرکزی نداريد . در حقيقت شما چيزی شبيه Late-Binding Web Service – يک برنامه کاملا ً پويا که از UDDI به عنوان يکی از هسته های مرکزی خود استفاده می کند – داريد .

NM : اجازه بدهيد درباره امنيت که يکی از مشکلات اساسی اين گونه سيستم ها است صحبت کنيم . مايکروسافت چندی پيش تصميم گرفته است که اهميت بيشتری به موضوع امنيت بدهد . چه نقطه با اهميتی در Windows .NET Server وجود دارد که کاربران ، Admin ها و برنامه نويس ها بايد به دنبال اين ويندوز بيايند ؟

JP : مهمترين چيزی که برنامه نويس ها بايد بدانند اين است که کل خدمات اين ويندوز در حالت اوليه بسته شده است . عقيده بر اين است که کل سيستم عامل از ابتدا با درجه امنيت بالا باشد و اين به برنامه نويس ها اين امکان را می دهد که برنامه هايی با امنيت بالاتر بنويسند . اين فقط درباره امنيت در OS نيست بلکه کاربران هم بايد بدانند که چگونه از سيستم ها استفاده کنند تا امنيت نرم افزارهايشان حفظ شود .
بسته بودن خدمات در حالت اول دارای نکات کاربردی مهمی است . برای مثال وقتی برنامه نويس ها ويندوز 2000 را نصب می کردند IIS نيز نصب می شد . در Windows .NET Server خيلی از امکانات به شکل اوليه بسته هستند و برای اينکه از آنها استفاده کنيد بايد از Wizard های موجود استفاده کنيد . حالا فرض کنيد يک سرور داريد که می خواهيد خدمات وب هم بدهد . شما بايد بعد از نصب ويندوز با استفاده از Wizard مخصوص پورت 80 را باز کنيد و IIS را به کار بياندازيد . اما هنوز IIS نيز قفل شده است تمام کاری که در اين حالت انجام می دهد دادن سرويس به صفحه های ايستا است بنابراين ريسک استفاده از آن کم است . برای اجرای برنامه های در IIS بايد از Wizard مخصوص استفاده و آن برنامه را آزاد کنيد . اگر شما سرور Index می خواهيد بايد آن را فعال کنيد ، يا اگر بخواهيد از front-page server extension استفاده کنيد هم بايد آن را فعال کنيد . به همين شکل اگر بخواهيد از ASP و يا ASP.NET استفاده کنيد بايد آنها را نيز فعال کنيد .

NM : شما چگونه همه اين کارهای را انجام می دهيد و شعار استفاده آسان محصولات را می دهيد ؟
JP : Wizard ها کمک خيلی خوبی هستند . اما تغييراتی در رويه مايکروسافت داده شده است . در گذشته مايکروسافت فقط به مفيد بودن و استفاده راحت فکر می کرد . من فکر می کنم که عوام به طور کل به ما می گويند که سادگی استفاده را دوست دارند ولی امنيت در درجه بالاتری قرار دارد . بنابراين هميشه بايد برای هدف هزينه هايی را نيز پرداخت کرد . ما در حال تلاش هستيم که مردم هر دوی اينها را در سيستم های ما داشته باشند .

NM : يک گزارش جديد از گروه گارتنر مشخص کرده است که شرکتها به علت حمله های زيادی که به IIS می شود آن را رها می کنند . مهمترين دليلی که برای اين کار می آورند ناموفق بودن Admin ها در نصب patch هايی است که شما برای ويندوز و IIS می دهيد . آيا مايکروسافت فکری برای اين مشکل کرده است ؟
JP : بله ، ما يک محيط گرافيکی جديد برای نصب patch ها ايجاد کرده ايم که کار مردم را آسان می کند . کار زيادی بر روی کل ساختار اين قسمت از ويندوز شکل گرفته تا کار Admin ها را آسان کند . مدل جديدی ايجاد شده است که شرکت ها برای خود يک Windows Update Server دارند . شرکت ها patch ها را برای اين سرورها قرار می دهند و به شکل خودکار ديگر سرورها patch های مورد نياز خود را از آنجا دريافت می کنند . اين روش کارهايی که برای update شدن ويندوز انجام می شد را کمتر می کند .

با تلخيص
منبع
http://www.fawcette.com/dotnetmag

مترجم : حامد بنايی