internal static WebServer GetAssociatedWebServer(int packageId) { int serviceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Web); // return(WebServerController.GetWebServer(serviceId)); }
private static List <string> GetImportableCustomItems(int packageId, int itemTypeId) { List <string> items = new List <string>(); PackageInfo packageInfo = PackageController.GetPackage(packageId); if (packageInfo == null) { return(items); } switch (itemTypeId) { case -100: List <UserInfo> users = UserController.GetUsers(packageInfo.UserId, true); foreach (UserInfo user in users) { List <PackageInfo> packages = PackageController.GetPackages(user.UserId); foreach (PackageInfo package in packages) { List <WebSite> webSites = WebServerController.GetWebSites(package.PackageId, false); foreach (WebSite webSite in webSites) { items.Add(user.Username + "|" + user.UserId.ToString() + "|" + package.PackageId.ToString() + "|" + webSite.SiteId + "|" + webSite.Id); } } } break; } return(items); }
public static int SetFilePermissions(int packageId, string path, UserPermission[] users, bool resetChildPermissions) { // check account int accountCheck = SecurityContext.CheckAccount(DemandAccount.NotDemo | DemandAccount.IsActive); if (accountCheck < 0) { return(accountCheck); } // place log record TaskManager.StartTask("FILES", "SET_PERMISSIONS", path, packageId); try { OS.OperatingSystem os = GetOS(packageId); string fullPath = GetFullPackagePath(packageId, path); // get users OU defined on web server string usersOU = WebServerController.GetWebUsersOU(packageId); os.GrantGroupNtfsPermissions(fullPath, users, usersOU, resetChildPermissions); return(0); } catch (Exception ex) { throw TaskManager.WriteError(ex); } finally { TaskManager.CompleteTask(); } }
public static void EnableLoadUserProfile(int serverId) { int serviceId = getWebServiceId(serverId); if (serviceId != -1) { WebServerController.GetWebServer(serviceId).EnableLoadUserProfile(); } }
public static bool CheckLoadUserProfile(int serverId) { int serviceId = getWebServiceId(serverId); if (serviceId != -1) { return(WebServerController.GetWebServer(serviceId).CheckLoadUserProfile()); } return(false); }
public static GalleryApplicationsResult GetGalleryApplicationsByServiceId(int serviceId) { GalleryApplicationsResult result; // try { TaskManager.StartTask(TASK_MANAGER_SOURCE, GET_SRV_GALLERY_APPS_TASK); // if (SecurityContext.CheckAccount(DemandAccount.IsAdmin) != 0) { return(WAG_MODULE_NOT_AVAILABLE <GalleryApplicationsResult>()); } // WebServer webServer = WebServerController.GetWebServer(serviceId); // ERROR: WAG is unavailable if (!webServer.IsMsDeployInstalled()) { return(WAG_MODULE_NOT_AVAILABLE <GalleryApplicationsResult>()); } // result = webServer.GetGalleryApplications(String.Empty); // if (!result.IsSuccess) { foreach (string errorMessage in result.ErrorCodes) { TaskManager.WriteError(errorMessage); } // return(WAG_GENERIC_MODULE_ERROR <GalleryApplicationsResult>()); } } catch (Exception ex) { TaskManager.WriteError(ex); // return(WAG_GENERIC_MODULE_ERROR <GalleryApplicationsResult>()); } finally { TaskManager.CompleteTask(); } // return(result); }
public static GalleryApplicationsResult GetGalleryApplicationsByServiceId(int serviceId) { GalleryApplicationsResult result; // try { TaskManager.StartTask(TASK_MANAGER_SOURCE, GET_SRV_GALLERY_APPS_TASK); int accountCheck = SecurityContext.CheckAccount(DemandAccount.IsAdmin); if (accountCheck < 0) { return(Warning <GalleryApplicationsResult>((-accountCheck).ToString())); } // check if WAG is installed WebServer webServer = WebServerController.GetWebServer(serviceId); if (!webServer.IsMsDeployInstalled()) { return(Error <GalleryApplicationsResult>(GalleryErrors.MsDeployIsNotInstalled)); } // get applications result = webServer.GetGalleryApplications(String.Empty); if (!result.IsSuccess) { return(Error <GalleryApplicationsResult>(result, GalleryErrors.GetApplicationsError)); } } catch (Exception ex) { TaskManager.WriteError(ex); return(Error <GalleryApplicationsResult>(GalleryErrors.GeneralError, ex.Message)); } finally { TaskManager.CompleteTask(); } // return(result); }
public void Setup() { IFileSystem fileSystem = new WindowsFileSystem(); IApplicationInfo applicationInfo = new ApplicationInfo(); ITimeService timeService = new RealTimeService(); ISignal serverStopSignal = new ManualResetSignal(false); IWebServerConfiguration configuration = new WebServerConfiguration(); IRazorCompiler razorCompiler = new InMemoryRazorCompiler(); IRazorViewRenderingEngine viewRenderingEngine = new RazorViewRenderingEngine(fileSystem, razorCompiler); IWebServerController webServerController = new WebServerController(serverStopSignal); IFileMimeTypesMap fileMimeTypesMap = new FileMimeTypesMap(); IFileCache fileCache = new FileCache(); List <IWebRequestRoute> routes = new List <IWebRequestRoute>(); string contentRootDirectory = Path.Combine(TestContext.CurrentContext.TestDirectory, "sample-content"); ContentCommand contentCommand = new ContentCommand(contentRootDirectory, fileSystem, fileCache); routes.Add(new RegexWebRequestRoute("^content/(?<path>.+)$", HttpMethod.GET, contentCommand)); // ReSharper disable once CollectionNeverUpdated.Local List <IWebPolicy> policies = new List <IWebPolicy>(); const string ExternalUrl = "http://localhost"; const int Port = 12345; testServiceUrl = "{0}:{1}/".Fmt(ExternalUrl, Port); host = new TestHost( configuration, ExternalUrl, Port, null, fileSystem, applicationInfo, timeService, viewRenderingEngine, fileMimeTypesMap, webServerController, routes, policies); host.Start(); IWebConfiguration webConfiguration = new WebConfiguration("Syborg.Tests"); restClientFactory = new RestClientFactory(webConfiguration); }
public static UserPermission[] GetFilePermissions(int packageId, string path) { try { // get all accounts UserPermission[] users = GetAvailableSecurityAccounts(packageId); OS.OperatingSystem os = GetOS(packageId); string fullPath = GetFullPackagePath(packageId, path); // get users OU defined on web server string usersOU = WebServerController.GetWebUsersOU(packageId); users = os.GetGroupNtfsPermissions(fullPath, users, usersOU); return(users); } catch (Exception ex) { throw TaskManager.WriteError(ex); } }
private static UserPermission[] GetAvailableSecurityAccounts(int packageId) { List <UserPermission> users = new List <UserPermission>(); // all web sites List <WebSite> sites = WebServerController.GetWebSites(packageId, false); int webServiceId = PackageController.GetPackageServiceId(packageId, ResourceGroups.Web); if (webServiceId > 0) { List <string> siteIds = new List <string>(); foreach (WebSite site in sites) { siteIds.Add(site.SiteId); } WebServer web = WebServerController.GetWebServer(webServiceId); string[] siteAccounts = web.GetSitesAccounts(siteIds.ToArray()); for (int i = 0; i < sites.Count; i++) { UserPermission user = new UserPermission(); user.DisplayName = sites[i].Name; user.AccountName = siteAccounts[i]; users.Add(user); } } // add "network service" UserPermission ns = new UserPermission(); ns.DisplayName = "NETWORK SERVICE"; ns.AccountName = "NETWORK SERVICE"; users.Add(ns); return(users.ToArray()); }
private void RollbackInstallation(InstallationInfo inst) { // remove virtual dir if (inst[PROPERTY_VDIR_CREATED] != null) { // delete virtual directory WebServerController.DeleteAppVirtualDirectory(inst.WebSiteId, inst.VirtualDir); // delete folder FilesController.DeleteFiles(inst.PackageId, new string[] { inst[PROPERTY_CONTENT_PATH] }); } // remove database if (inst[PROPERTY_DATABASE_CREATED] != null) { DatabaseServerController.DeleteSqlDatabase(inst.DatabaseId); } // remove database user if (inst[PROPERTY_USER_CREATED] != null) { DatabaseServerController.DeleteSqlUser(inst.UserId); } }
public List <WebVirtualDirectory> GetVirtualDirectories(int siteItemId) { return(WebServerController.GetVirtualDirectories(siteItemId)); }
public WebSite GetWebSite(int siteItemId) { return(WebServerController.GetWebSite(siteItemId)); }
public List <WebSite> GetWebSites(int packageId, bool recursive) { return(WebServerController.GetWebSites(packageId, recursive)); }
public DataSet GetRawWebSitesPaged(int packageId, string filterColumn, string filterValue, string sortColumn, int startRow, int maximumRows) { return(WebServerController.GetRawWebSitesPaged(packageId, filterColumn, filterValue, sortColumn, startRow, maximumRows)); }
public List <SSLCertificate> GetPendingCertificates(int siteItemId) { return(WebServerController.GetPendingCertificates(siteItemId)); }
public int DeleteWebSitePointer(int siteItemId, int domainId) { return(WebServerController.DeleteWebSitePointer(siteItemId, domainId)); }
public ResultObject DeleteCertificate(int siteId, SSLCertificate certificate) { return(WebServerController.DeleteCertificate(siteId, certificate)); }
public byte[] ExportCertificate(int siteId, string serialNumber, string password) { return(WebServerController.ExportCertificate(siteId, serialNumber, password)); }
public ResultObject CheckSSLForDomain(string domain, int siteID) { return(WebServerController.CheckSSLForDomain(domain, siteID)); }
public int CheckSSLForWebsite(int siteID, bool renewal) { return(WebServerController.CheckSSL(siteID, renewal)); }
public SSLCertificate GetSiteCert(int siteID) { return(WebServerController.GetSiteCert(siteID)); }
public SSLCertificate GetSSLCertificateByID(int Id) { return(WebServerController.GetSslCertificateById(Id)); }
public WebVirtualDirectory GetVirtualDirectory(int siteItemId, string vdirName) { return(WebServerController.GetVirtualDirectory(siteItemId, vdirName)); }
public List <DomainInfo> GetWebSitePointers(int siteItemId) { return(WebServerController.GetWebSitePointers(siteItemId)); }
public ResultObject ImportCertificate(int siteId) { return(WebServerController.ImportCertificate(siteId)); }
public ResultObject CheckCertificate(int siteId) { return(WebServerController.CheckCertificate(siteId)); }
public ResultObject DeleteCertificateRequest(int siteId, int csrID) { return(WebServerController.DeleteCertificateRequest(siteId, csrID)); }
public List <SSLCertificate> GetCertificatesForSite(int siteId) { return(WebServerController.GetCertificatesForSite(siteId)); }
public ResultObject InstallPfx(byte[] certificate, int siteItemId, string password) { return(WebServerController.InstallPfx(certificate, siteItemId, password)); }