كيفية تحديد تجمع التطبيقات الذي يستخدمه تطبيق الخدمة برمجياً؟
-
09-12-2019 - |
سؤال
هل هناك طريقة لتحديد تجمع التطبيقات الذي يستخدمه تطبيق الخدمة برمجياً؟
علاوة على ذلك، أود الحصول على معلومات حول حساب الخدمة الذي يستخدمه مجمع التطبيقات.
المحلول
في استخدام بوويرشيل:
Get-SPServiceApplication | FT DisplayName, ApplicationPool
إذا كنت ترغب في الحصول على العقار في برنامجك الخاص، فأنت بحاجة إلى الحصول على تطبيق الخدمة وإرساله إليه SPIisWebServiceApplication
الذي لديه تجمع التطبيقات ملكية
نصائح أخرى
يمكنك استخدامها في PowerShell الأمر التالي: giveacodicetagpre.
ينتج عن اسم تطبيق الخدمة وحساب تجمع التطبيقات.
يمكنك استخدام SharePoint Management Shell للحصول على المعلومات:
Get-SPServiceApplication | Select Name, @{Name="SPAppPoolName"; Expression={$_.ApplicationPool.Name}}, @{Name="IISAppPoolName"; Expression={$_.ApplicationPool.Id}}, @{Name="ProcessAccountName"; Expression={$_.ApplicationPool.ProcessAccountName}}
يستخدم هذا الأمر تعبيرات لاستخراج الأجزاء المطلوبة من تجمع التطبيقات.
- اسم = اسم تطبيق الخدمة
- SPAppPoolName = يستخدم SharePoint اسمًا مخصصًا يمكنك استخدامه داخل CA ولكنه غير مرئي في عرض إدارة IIS
- IISAppPoolName = هذا هو معرف تجمع تطبيق SP ويتم استخدامه كاسم لمجموعة التطبيق إذا قمت بتسجيل الوصول إلى مدير IIS على الخوادم ، فإن تطبيق الخدمة يعمل على ProcessAccount = هذا هو حساب الخدمة الذي يعمل عليه تجمع التطبيق
يمكنك التحقق (لا ينبغي تحرير) تكوين تجمع التطبيقات في applicationHost.config (C:\Windows\System32\inetsrv\config\applicationHost.config
).ابحث عن المعرف أو انتقل إلى عنصر XML "applicationPools".
يمكنك استخدام System.Security.Principal.WindowsIdentity.GetCurrent().Name
لتحديد الهوية التي يعمل بها التطبيق الحالي. هذا الرابط يوفر أداة مساعدة لطيفة تعرض الهوية التي يتم تشغيل aspx بموجبها.
أو اقرأ هذا سؤال :)
نأمل أن يساعد