اتوماسیون و تفویض اسکریپت های PowerShell با ScriptRunner

در بسیاری از تیم های فناوری اطلاعات ، از PowerShell برای اهداف اتوماسیون استفاده می شود. این معمولاً باعث ایجاد مشکلاتی در مدیریت غیر مرکزی ، تغییرات غیرقابل کنترل و نمایندگی محدود اسکریپت ها می شود. به دلیل این مشکل ، من به نرم افزار Scriptrunner از AppSphere رسیدم ، که مشکلات ذکر شده در بالا را حل می کند.

نصب ScriptRunner

نصب سرویس Scripttrunner و وب مورد نیاز در یک ویندوز سرور 2019 هسته ، که عضو یک دامنه است ، انجام می شود. است البته نصب بر روی ویندوز سرور 2019 با نمایشگر دسکتاپ نیز امکان پذیر است.

برای نصب ScriptRunner نیاز به Server Core Feature on Demand (FOD) است که با یک فرمان DISM نصب شده است.

 DISM / آنلاین / قابلیت افزودن / قابلیت دسترسی / نام خانوادگی: "ServerCore.AppCompatibility~~~~0.0.1.0 "/ منبع: drive_letter_of_mounted_ISO: / LimitAccess 

پس از نصب FOD ، نقش سرور وب (IIS) روی سرور نصب می شود.

 Install-WindowsFeature -Name Web server 

سرور وب برای برنامه های وب مورد نیاز است و عملکردهای اصلی نرم افزار را فراهم می کند.

خدمات Scriptrunner می تواند پس از آن نصب شود.

 ScriptRunnerService_x.x. xxxx.x.psd -s -Force -EnablePS 

پارامتر -s نصب را در حالت بدون نظارت اجرا می کند. EnablePS از راه دور PowerShell روی میزبان را فعال می کند. درگاه استاندارد 8091 را می توان با پارامتر -Port و فهرست نصب با پارامتر -Instdir تنظیم کرد.

اگر سرویس با موفقیت نصب شد ، برنامه های وب با دستور زیر قابل نصب هستند:

 
ScriptRunnerWebApps_x. x.xxxx.x.psd -s -Admin -Delegate -IISConfig -BackendURI = "http: // localhost: 8091 / ScriptRunner /"

WebApps توابع اصلی را برای مدیریت و تفویض اسکریپت ها از طریق یک فراهم می کند رابط وب آماده است.

اکثر تنظیمات را می توان با ماژول PowerShell "ScriptRunnerSetting" پیکربندی کرد. دستورات ماژول را می توان با cmdlet نمایش داد:

 Get-Command -Module ScriptRunnerSettings 

مدیریت اسکریپت های PowerShell

ScriptRunner از قبل چندین اسکریپت PowerShell را از طریق "بسته های اکشن" تهیه می کند تا انواع کارهای استاندارد را ترسیم کند. قادر بودن بسته های اکشن همچنین کار با ScriptRunner را آسان تر می کند.

اسکریپت ها در کتابخانه اسکریپت مرکزی ذخیره می شوند و بطور پیش فرض در این آدرس قرار دارند:

 C:  ProgramData  AppSphere  ScriptMgr 

با دستور ، می توان مسیر را تنظیم کرد ، به عنوان مثال برای ردیابی اسکریپت ها با یک سیستم کنترل نسخه نحوه اطمینان از GitHub.

 Set-ASRSettings -ScriptLibraryPath D:  Skripte -Restart 

در AdminApp می توانید از فهرست "" اسکریپت ها | Cmdlets «اسکریپت های PowerShell را می توان بارگذاری و برچسب گذاری کرد. از طرف دیگر ، افزودنی ISE نیز می تواند برای چنین کارهایی مورد استفاده قرار گیرد. این افزونه همچنین عملکرد check-in / check-out را ارائه می دهد و می تواند بر روی مشتری های مورد نظر نصب شود.

 اسکریپت های جدید را به کتابخانه بارگذاری کنید
اسکریپت های جدید را به کتابخانه بارگذاری کنید

در مورد فهرست "حساب های اداری" اطلاعات ورود به سیستم ذخیره می شود که برای استفاده از اسکریپت ها استفاده می شود. میزبان ScriptRunner برای این کار از فروشگاه Windows Credential استفاده می کند. مدیران رمزعبور مانند Pleasant ، Thycotic یا CyperArk نیز می توانند به یکدیگر متصل شوند. به منظور پرداختن به سیستم های هدف که اسکریپت ها بر روی آن اجرا می شوند ، این موارد را می توان در فهرست منوی "سیستم های هدف" مدیریت کرد. برای اینکه بتوانید نمایش داده شد و گزارشهای بعدی را بطور مؤثرتر طراحی کنید ، برچسب ها نیز در اینجا ذخیره می شوند.

ایجاد اقدامات و تفویض

منابع ScriptRunner ذکر شده در بالا می تواند با اقدامات ترکیب شود. با کنترل یک برنامه ، اینها می توانند به عنوان مثال مقادیر پارامتر خاصی را به آدرس ایمیل ذخیره شده ارسال کنند.

 ScriptRunner اقداماتی را ایجاد کرد
ScriptRunner اقداماتی را ایجاد کرد

همچنین ، این اقدامات را می توان به کارمندان غیر اداری نیز واگذار کرد.

برای ایجاد یک اقدام جدید ، اطلاعات زیر باید در جادوگر مشخص شود:

  • انتخاب اسکریپت های قبلاً بارگذاری شده
  • نام و برچسب ها
  • سیستم هدف
  • گزینه های تمدید شده PowerShell (اختیاری)
  • پارامترهای اسکریپت را می توان از پیش تعیین کرد یا به یک جستجوی فعال اختصاص داد
  • گزینه ها برای نتایج و اعلان ها
  • برنامه ( اختیاری)
  • نمایندگی به گروه های اداری یا هویت

اگر اقدامات به کارمندان واگذار شود ، می توانند آنها را از طریق رابط وب دیگری (DelegateApp) انجام دهند. کارمند با مدارک معتبر خود وارد سیستم می شود و می تواند بدون مجوز و اعتبار بیشتر ، اقدام به انجام کار بر روی سیستم هدف کند. کارمند گزارشی را با مقادیر بازگشتی ذخیره شده در اسکریپت بلافاصله پس از انجام عمل دریافت می کند.

 تنظیم ویژگی های کاربر AD از طریق DelegateApp
تنظیم ویژگی های کاربر AD از طریق DelegateApp

کلیه اقدامات انجام شده همچنین می تواند از طریق AdminApp انجام شود. و گزارش ها را مشاهده کنید این اطلاعات اساسی را ارائه می دهد مانند "چه کسی چه کاری را انجام داده است" و رویدادی که این عمل به اتمام رسیده است. همچنین می توان گزارش را به صورت .txt صادر کرد و آن را از طریق ایمیل ارسال کرد.

 گزارش اقدام اسکریپترنر
گزارش اقدام اسکریپترنر