Commit 394fa3a7664e0671d8111ce867cf010c8c53d04a
1 parent
41b2d68e
v1.7.2
- a web alkalmazás regisztrálása elvégzi a pool account beállítást is
Showing
2 changed files
with
48 additions
and
20 deletions
Show diff stats
Vrh.Log4Pro.MaintenanceConsole/Manager - WebApplicationManager.cs
| ... | ... | @@ -331,7 +331,7 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS |
| 331 | 331 | foreach (var p in sr.SelectedParameterList) |
| 332 | 332 | { |
| 333 | 333 | WebApplication wa=p.Parameters as WebApplication; |
| 334 | - WebApplicationManagerCore.RegisterWebApplication(wa.Xml_SiteName, wa.Xml_PoolName, wa.Xml_AppName, wa.Xml_AppPhysicalPath, wa.Xml_SitePhysicalPath, 8080, wa.Xml_RecreatePool, wa.Xml_RecreateSite, wa.Xml_RecreateApp, wa.Xml_PoolPipeLineMode,wa.Xml_VirtualDirectoryList); | |
| 334 | + WebApplicationManagerCore.RegisterWebApplication(wa.Xml_SiteName, wa.Xml_PoolName, wa.Xml_AppName, wa.Xml_AppPhysicalPath, wa.Xml_SitePhysicalPath, 8080, wa.Xml_RecreatePool, wa.Xml_RecreateSite, wa.Xml_RecreateApp, wa.Xml_PoolPipeLineMode,wa.Xml_VirtualDirectoryList,wa.Xml_PoolIdentitytype,wa.Xml_PoolUsername,wa.Xml_PoolPassword); | |
| 335 | 335 | ColorConsole.WriteLine($"{wa.Xml_AppName} is registered in site {wa.Xml_SiteName} using pool {wa.Xml_PoolName}."); |
| 336 | 336 | } |
| 337 | 337 | return o; |
| ... | ... | @@ -454,27 +454,26 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS |
| 454 | 454 | foreach (var p in sr.SelectedParameterList) |
| 455 | 455 | { |
| 456 | 456 | var wa = p.Parameters as WebApplication; |
| 457 | - GetPoolIdentityInfo(wa, out string username, out string password); | |
| 457 | + GetPoolIdentityInfo(wa, out string username, out string password, out ProcessModelIdentityType poolidentitytype); | |
| 458 | 458 | if (username == "EX" || password == "EX") { return o; } |
| 459 | 459 | string olduserinfo = WebApplicationManagerCore.GetCurrentPoolIdentityInfo(wa); |
| 460 | - WebApplicationManagerCore.SetPoolUserAccount(wa.Xml_AppName, wa.Xml_SiteName, username, password); | |
| 460 | + WebApplicationManagerCore.SetPoolUserAccount(wa.Xml_AppName, wa.Xml_SiteName, username, password, poolidentitytype); | |
| 461 | 461 | ColorConsole.WriteLine($"Pool identity changed for webapp {wa.Xml_AppName}."); |
| 462 | 462 | ColorConsole.WriteLine($"From '{olduserinfo}' to '{WebApplicationManagerCore.GetCurrentPoolIdentityInfo(wa)}'"); |
| 463 | 463 | } |
| 464 | 464 | return o; |
| 465 | 465 | } |
| 466 | - private static void GetPoolIdentityInfo(WebApplication wa, out string username, out string password) | |
| 466 | + private static void GetPoolIdentityInfo(WebApplication wa, out string username, out string password,out ProcessModelIdentityType poolidentitytype) | |
| 467 | 467 | { |
| 468 | - username = ""; password = ""; | |
| 469 | 468 | if (Menu.IsCommandMode()) |
| 470 | 469 | { |
| 471 | 470 | username = wa.Xml_PoolName; |
| 472 | 471 | password = wa.Xml_PoolPassword; |
| 472 | + poolidentitytype = wa.Xml_PoolIdentitytype; | |
| 473 | 473 | } |
| 474 | 474 | else |
| 475 | 475 | { |
| 476 | 476 | var defaultinxml = WebApplicationManagerCore.GetDefaultPoolIdentityInfo(wa); |
| 477 | - username=""; password = ""; | |
| 478 | 477 | string olduserinfo = WebApplicationManagerCore.GetCurrentPoolIdentityInfo(wa); |
| 479 | 478 | ColorConsole.WriteLine($"Current user info: {olduserinfo}"); |
| 480 | 479 | var un = $"Empty from XML={defaultinxml}."; |
| ... | ... | @@ -485,12 +484,16 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS |
| 485 | 484 | ColorConsole.WriteLine($" (LSY) {nameof(ProcessModelIdentityType.LocalSystem)}"); |
| 486 | 485 | ColorConsole.WriteLine($" (NSE) {nameof(ProcessModelIdentityType.NetworkService)}"); |
| 487 | 486 | username = ColorConsole.ReadLine().ToUpper(); |
| 487 | + password = ""; | |
| 488 | + poolidentitytype = ProcessModelIdentityType.SpecificUser; | |
| 488 | 489 | if (username == "EX") { return; } |
| 489 | - else if (string.IsNullOrEmpty(username)) { username=wa.Xml_PoolUsername; password = wa.Xml_PoolPassword; } | |
| 490 | - else if (username == "API" || username == nameof(ProcessModelIdentityType.ApplicationPoolIdentity)) { username = nameof(ProcessModelIdentityType.ApplicationPoolIdentity); } | |
| 491 | - else if (username == "LSE" || username == nameof(ProcessModelIdentityType.LocalService)) { username = nameof(ProcessModelIdentityType.LocalService); } | |
| 492 | - else if (username == "LSY" || username == nameof(ProcessModelIdentityType.LocalSystem)) { username = nameof(ProcessModelIdentityType.LocalSystem); } | |
| 493 | - else if (username == "NSE" || username == nameof(ProcessModelIdentityType.NetworkService)) { username = nameof(ProcessModelIdentityType.NetworkService); } | |
| 490 | + | |
| 491 | + if (string.IsNullOrEmpty(username)) { username=wa.Xml_PoolUsername; password = wa.Xml_PoolPassword; } | |
| 492 | + | |
| 493 | + if (username == "API" || username == nameof(ProcessModelIdentityType.ApplicationPoolIdentity)) { username = ""; password = ""; poolidentitytype = ProcessModelIdentityType.ApplicationPoolIdentity; } | |
| 494 | + else if (username == "LSE" || username == nameof(ProcessModelIdentityType.LocalService)) { username = ""; password = ""; poolidentitytype = ProcessModelIdentityType.LocalService; } | |
| 495 | + else if (username == "LSY" || username == nameof(ProcessModelIdentityType.LocalSystem)) { username = ""; password = ""; poolidentitytype = ProcessModelIdentityType.LocalSystem; } | |
| 496 | + else if (username == "NSE" || username == nameof(ProcessModelIdentityType.NetworkService)) { username = ""; password = ""; poolidentitytype = ProcessModelIdentityType.NetworkService; } | |
| 494 | 497 | else |
| 495 | 498 | { |
| 496 | 499 | ColorConsole.WriteLine("Enter password.[Enter]=finish input.Empty=no password.EX=exit"); |
| ... | ... | @@ -666,7 +669,7 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS |
| 666 | 669 | } |
| 667 | 670 | |
| 668 | 671 | #region private method:RegisterWebApplication |
| 669 | - public static void RegisterWebApplication(string sitename, string poolname, string appname, string poolphypath, string sitephypath, int siteport, bool recreatepool, bool recreatesite, bool recreateapp,ManagedPipelineMode plmode,List<WebApplication.VirtualDirectory> vdlist) | |
| 672 | + public static void RegisterWebApplication(string sitename, string poolname, string appname, string poolphypath, string sitephypath, int siteport, bool recreatepool, bool recreatesite, bool recreateapp,ManagedPipelineMode plmode,List<WebApplication.VirtualDirectory> vdlist,ProcessModelIdentityType poolidentitytype, string poolusername,string pooluserpassword) | |
| 670 | 673 | { |
| 671 | 674 | using (ServerManager serverManager = new ServerManager()) |
| 672 | 675 | { |
| ... | ... | @@ -683,6 +686,7 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS |
| 683 | 686 | else if (recreateapp) { RemoveWebApp(serverManager, appname, sitename); CreateWebApp(serverManager, appname, poolname, sitename, poolphypath, vdlist); } |
| 684 | 687 | |
| 685 | 688 | CommitChanges(serverManager, poolname); |
| 689 | + WebApplicationManagerCore.SetPoolUserAccount(appname, sitename, poolusername, pooluserpassword, poolidentitytype); | |
| 686 | 690 | } |
| 687 | 691 | } |
| 688 | 692 | #endregion private method:RegisterWebApplication |
| ... | ... | @@ -715,20 +719,44 @@ namespace Vrh.Log4Pro.MaintenanceConsole.WebApplicationManagerNS |
| 715 | 719 | } |
| 716 | 720 | #endregion private method:SetImpersonateIdentity |
| 717 | 721 | #region private method:SetPoolUserAccount |
| 718 | - public static void SetPoolUserAccount(string appname, string sitename, string username, string password) | |
| 722 | + //public static void SetPoolUserAccountOLD(string appname, string sitename, string username, string password, ProcessModelIdentityType poolidentitytype) | |
| 723 | + //{ | |
| 724 | + // using (var sm = new ServerManager()) | |
| 725 | + // { | |
| 726 | + // //var pool = GetPool(GetPoolName(sitename, appname)); | |
| 727 | + // var pool = GetPool(sm, sitename, appname); | |
| 728 | + // if (username == nameof(ProcessModelIdentityType.ApplicationPoolIdentity) | |
| 729 | + // || username == nameof(ProcessModelIdentityType.LocalService) | |
| 730 | + // || username == nameof(ProcessModelIdentityType.LocalSystem) | |
| 731 | + // || username == nameof(ProcessModelIdentityType.NetworkService)) | |
| 732 | + // { | |
| 733 | + // pool.ProcessModel.UserName = null; | |
| 734 | + // pool.ProcessModel.Password = null; | |
| 735 | + // pool.ProcessModel.IdentityType = (ProcessModelIdentityType)Enum.Parse(typeof(ProcessModelIdentityType), username); | |
| 736 | + // } | |
| 737 | + // else // if (ProcessModelIdentityType.SpecificUser) | |
| 738 | + // { | |
| 739 | + // pool.ProcessModel.UserName = username; | |
| 740 | + // pool.ProcessModel.Password = password; | |
| 741 | + // pool.ProcessModel.IdentityType = ProcessModelIdentityType.SpecificUser; | |
| 742 | + // } | |
| 743 | + // CommitChanges(sm, pool.Name); | |
| 744 | + // } | |
| 745 | + //} | |
| 746 | + public static void SetPoolUserAccount(string appname, string sitename, string username, string password, ProcessModelIdentityType poolidentitytype) | |
| 719 | 747 | { |
| 720 | 748 | using (var sm = new ServerManager()) |
| 721 | 749 | { |
| 722 | 750 | //var pool = GetPool(GetPoolName(sitename, appname)); |
| 723 | 751 | var pool = GetPool(sm, sitename, appname); |
| 724 | - if (username == nameof(ProcessModelIdentityType.ApplicationPoolIdentity) | |
| 725 | - || username == nameof(ProcessModelIdentityType.LocalService) | |
| 726 | - || username == nameof(ProcessModelIdentityType.LocalSystem) | |
| 727 | - || username == nameof(ProcessModelIdentityType.NetworkService)) | |
| 752 | + if (poolidentitytype == ProcessModelIdentityType.ApplicationPoolIdentity | |
| 753 | + || poolidentitytype == ProcessModelIdentityType.LocalService | |
| 754 | + || poolidentitytype == ProcessModelIdentityType.LocalSystem | |
| 755 | + || poolidentitytype == ProcessModelIdentityType.NetworkService) | |
| 728 | 756 | { |
| 729 | 757 | pool.ProcessModel.UserName = null; |
| 730 | 758 | pool.ProcessModel.Password = null; |
| 731 | - pool.ProcessModel.IdentityType = (ProcessModelIdentityType)Enum.Parse(typeof(ProcessModelIdentityType), username); | |
| 759 | + pool.ProcessModel.IdentityType = poolidentitytype; | |
| 732 | 760 | } |
| 733 | 761 | else // if (ProcessModelIdentityType.SpecificUser) |
| 734 | 762 | { | ... | ... |
Vrh.Log4Pro.MaintenanceConsole/Properties/AssemblyInfo.cs
| ... | ... | @@ -32,5 +32,5 @@ using System.Runtime.InteropServices; |
| 32 | 32 | // You can specify all the values or you can default the Build and Revision Numbers |
| 33 | 33 | // by using the '*' as shown below: |
| 34 | 34 | // [assembly: AssemblyVersion("1.0.*")] |
| 35 | -[assembly: AssemblyVersion("1.7.1.0")] | |
| 36 | -[assembly: AssemblyFileVersion("1.7.1.0")] | |
| 35 | +[assembly: AssemblyVersion("1.7.2.0")] | |
| 36 | +[assembly: AssemblyFileVersion("1.7.2.0")] | ... | ... |