RDS GPO fixes
This commit is contained in:
parent
fce7f6792a
commit
ac46bfbff9
5 changed files with 60 additions and 65 deletions
|
@ -408,24 +408,7 @@ namespace WebsitePanel.EnterpriseServer
|
|||
var rds = GetRemoteDesktopServices(GetRdsServiceId(collection.ItemId));
|
||||
Organization org = OrganizationController.GetOrganization(collection.ItemId);
|
||||
rds.ApplyGPO(org.OrganizationId, collection.Name, settings);
|
||||
|
||||
XmlDocument doc = new XmlDocument();
|
||||
XmlElement nodeProps = doc.CreateElement("properties");
|
||||
|
||||
if (settings != null)
|
||||
{
|
||||
foreach (var setting in settings.Settings)
|
||||
{
|
||||
XmlElement nodeProp = doc.CreateElement("property");
|
||||
nodeProp.SetAttribute("name", setting.PropertyName);
|
||||
nodeProp.SetAttribute("value", setting.PropertyValue);
|
||||
nodeProp.SetAttribute("applyUsers", setting.ApplyUsers ? "1" : "0");
|
||||
nodeProp.SetAttribute("applyAdministrators", setting.ApplyAdministrators ? "1" : "0");
|
||||
nodeProps.AppendChild(nodeProp);
|
||||
}
|
||||
}
|
||||
|
||||
string xml = nodeProps.OuterXml;
|
||||
string xml = GetSettingsXml(settings);
|
||||
|
||||
DataProvider.UpdateRdsServerSettings(serverId, settingsName, xml);
|
||||
|
||||
|
@ -792,8 +775,11 @@ namespace WebsitePanel.EnterpriseServer
|
|||
};
|
||||
|
||||
rds.CreateCollection(org.OrganizationId, collection);
|
||||
rds.ApplyGPO(org.OrganizationId, collection.Name, GetDefaultGpoSettings());
|
||||
collection.Id = DataProvider.AddRDSCollection(itemId, collection.Name, collection.Description, collection.DisplayName);
|
||||
var defaultGpoSettings = GetDefaultGpoSettings();
|
||||
rds.ApplyGPO(org.OrganizationId, collection.Name, defaultGpoSettings);
|
||||
collection.Id = DataProvider.AddRDSCollection(itemId, collection.Name, collection.Description, collection.DisplayName);
|
||||
string xml = GetSettingsXml(defaultGpoSettings);
|
||||
DataProvider.UpdateRdsServerSettings(collection.Id, string.Format("Collection-{0}-Settings", collection.Id), xml);
|
||||
|
||||
collection.Settings.RdsCollectionId = collection.Id;
|
||||
int settingsId = DataProvider.AddRdsCollectionSettings(collection.Settings);
|
||||
|
@ -2142,7 +2128,52 @@ namespace WebsitePanel.EnterpriseServer
|
|||
ApplyUsers = Convert.ToBoolean(defaultSettings[RdsServerSettings.SCREEN_SAVER_DISABLED_USERS])
|
||||
});
|
||||
|
||||
settings.Settings.Add(new RdsServerSetting
|
||||
{
|
||||
PropertyName = RdsServerSettings.RDS_VIEW_WITHOUT_PERMISSION,
|
||||
PropertyValue = "",
|
||||
ApplyAdministrators = Convert.ToBoolean(defaultSettings[RdsServerSettings.RDS_VIEW_WITHOUT_PERMISSION_ADMINISTRATORS]),
|
||||
ApplyUsers = Convert.ToBoolean(defaultSettings[RdsServerSettings.RDS_VIEW_WITHOUT_PERMISSION_Users])
|
||||
});
|
||||
|
||||
settings.Settings.Add(new RdsServerSetting
|
||||
{
|
||||
PropertyName = RdsServerSettings.RDS_CONTROL_WITHOUT_PERMISSION,
|
||||
PropertyValue = "",
|
||||
ApplyAdministrators = Convert.ToBoolean(defaultSettings[RdsServerSettings.RDS_CONTROL_WITHOUT_PERMISSION_ADMINISTRATORS]),
|
||||
ApplyUsers = Convert.ToBoolean(defaultSettings[RdsServerSettings.RDS_CONTROL_WITHOUT_PERMISSION_Users])
|
||||
});
|
||||
|
||||
settings.Settings.Add(new RdsServerSetting
|
||||
{
|
||||
PropertyName = RdsServerSettings.DISABLE_CMD,
|
||||
PropertyValue = "",
|
||||
ApplyAdministrators = Convert.ToBoolean(defaultSettings[RdsServerSettings.DISABLE_CMD_ADMINISTRATORS]),
|
||||
ApplyUsers = Convert.ToBoolean(defaultSettings[RdsServerSettings.DISABLE_CMD_USERS])
|
||||
});
|
||||
|
||||
return settings;
|
||||
}
|
||||
|
||||
private static string GetSettingsXml(RdsServerSettings settings)
|
||||
{
|
||||
XmlDocument doc = new XmlDocument();
|
||||
XmlElement nodeProps = doc.CreateElement("properties");
|
||||
|
||||
if (settings != null)
|
||||
{
|
||||
foreach (var setting in settings.Settings)
|
||||
{
|
||||
XmlElement nodeProp = doc.CreateElement("property");
|
||||
nodeProp.SetAttribute("name", setting.PropertyName);
|
||||
nodeProp.SetAttribute("value", setting.PropertyValue);
|
||||
nodeProp.SetAttribute("applyUsers", setting.ApplyUsers ? "1" : "0");
|
||||
nodeProp.SetAttribute("applyAdministrators", setting.ApplyAdministrators ? "1" : "0");
|
||||
nodeProps.AppendChild(nodeProp);
|
||||
}
|
||||
}
|
||||
|
||||
return nodeProps.OuterXml;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1135,6 +1135,8 @@ namespace WebsitePanel.Providers.RemoteDesktopServices
|
|||
{
|
||||
runspace = OpenRunspace();
|
||||
|
||||
CreatePolicy(runspace, organizationId, string.Format("{0}-administrators", collectionName), new DirectoryEntry(GetGroupPath(organizationId, collectionName, GetLocalAdminsGroupName(collectionName))), collectionName);
|
||||
CreatePolicy(runspace, organizationId, string.Format("{0}-users", collectionName), new DirectoryEntry(GetUsersGroupPath(organizationId, collectionName)), collectionName);
|
||||
CreateHelpDeskPolicy(runspace, new DirectoryEntry(GetHelpDeskGroupPath(RDSHelpDeskGroup)), organizationId, collectionName);
|
||||
RemoveRegistryValue(runspace, ScreenSaverGpoKey, administratorsGpo);
|
||||
RemoveRegistryValue(runspace, ScreenSaverGpoKey, usersGpo);
|
||||
|
|
|
@ -33,8 +33,8 @@ namespace WebsitePanel.Portal.RDS
|
|||
|
||||
if (serverSettings == null || !serverSettings.Settings.Any())
|
||||
{
|
||||
var defaultSettings = ES.Services.Users.GetUserSettings(PanelSecurity.LoggedUserId, UserSettings.RDS_POLICY);
|
||||
BindDefaultSettings(defaultSettings);
|
||||
ddTimeout.SelectedValue = "";
|
||||
ddTreshold.SelectedValue = "";
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -189,45 +189,7 @@ namespace WebsitePanel.Portal.RDS
|
|||
});
|
||||
|
||||
return settings;
|
||||
}
|
||||
|
||||
private void BindDefaultSettings(UserSettings settings)
|
||||
{
|
||||
ddTimeout.SelectedValue = settings[RdsServerSettings.LOCK_SCREEN_TIMEOUT_VALUE];
|
||||
cbTimeoutAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.LOCK_SCREEN_TIMEOUT_ADMINISTRATORS]);
|
||||
cbTimeoutUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.LOCK_SCREEN_TIMEOUT_USERS]);
|
||||
|
||||
cbRunCommandAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.REMOVE_RUN_COMMAND_ADMINISTRATORS]);
|
||||
cbRunCommandUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.REMOVE_RUN_COMMAND_USERS]);
|
||||
|
||||
cbPowershellAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.REMOVE_POWERSHELL_COMMAND_ADMINISTRATORS]);
|
||||
cbPowershellUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.REMOVE_POWERSHELL_COMMAND_USERS]);
|
||||
|
||||
cbHideCDriveAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.HIDE_C_DRIVE_ADMINISTRATORS]);
|
||||
cbHideCDriveUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.HIDE_C_DRIVE_USERS]);
|
||||
|
||||
cbShutdownAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.REMOVE_SHUTDOWN_RESTART_ADMINISTRATORS]);
|
||||
cbShutdownUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.REMOVE_SHUTDOWN_RESTART_USERS]);
|
||||
|
||||
cbTaskManagerAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.DISABLE_TASK_MANAGER_ADMINISTRATORS]);
|
||||
cbTaskManagerUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.DISABLE_TASK_MANAGER_USERS]);
|
||||
|
||||
cbDesktopAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.CHANGE_DESKTOP_DISABLED_ADMINISTRATORS]);
|
||||
cbDesktopUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.CHANGE_DESKTOP_DISABLED_USERS]);
|
||||
|
||||
cbScreenSaverAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.SCREEN_SAVER_DISABLED_ADMINISTRATORS]);
|
||||
cbScreenSaverUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.SCREEN_SAVER_DISABLED_USERS]);
|
||||
|
||||
cbViewSessionAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.RDS_VIEW_WITHOUT_PERMISSION_ADMINISTRATORS]);
|
||||
cbViewSessionUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.RDS_VIEW_WITHOUT_PERMISSION_Users]);
|
||||
cbControlSessionAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.RDS_CONTROL_WITHOUT_PERMISSION_ADMINISTRATORS]);
|
||||
cbControlSessionUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.RDS_CONTROL_WITHOUT_PERMISSION_Users]);
|
||||
|
||||
cbDisableCmdAdministrators.Checked = Convert.ToBoolean(settings[RdsServerSettings.DISABLE_CMD_ADMINISTRATORS]);
|
||||
cbDisableCmdUsers.Checked = Convert.ToBoolean(settings[RdsServerSettings.DISABLE_CMD_USERS]);
|
||||
|
||||
ddTreshold.SelectedValue = settings[RdsServerSettings.DRIVE_SPACE_THRESHOLD_VALUE];
|
||||
}
|
||||
}
|
||||
|
||||
private bool SaveServerSettings()
|
||||
{
|
||||
|
|
|
@ -5,13 +5,13 @@
|
|||
<asp:DataList ID="rdsTabs" runat="server" RepeatDirection="Horizontal" RepeatLayout="Flow" EnableViewState="false">
|
||||
<ItemStyle Wrap="False" />
|
||||
<ItemTemplate >
|
||||
<asp:HyperLink ID="lnkTab" runat="server" CssClass="Tab" NavigateUrl='<%# Eval("Url") %>' OnClick="return tabClicked();">
|
||||
<asp:HyperLink ID="lnkTab" runat="server" CssClass="Tab" style="padding:10px 15px;" NavigateUrl='<%# Eval("Url") %>' OnClick="return tabClicked();">
|
||||
<%# Eval("Name") %>
|
||||
</asp:HyperLink>
|
||||
</ItemTemplate>
|
||||
<SelectedItemStyle Wrap="False" />
|
||||
<SelectedItemTemplate>
|
||||
<asp:HyperLink ID="lnkSelTab" runat="server" CssClass="ActiveTab" NavigateUrl='<%# Eval("Url") %>' OnClick="return tabClicked;">
|
||||
<asp:HyperLink ID="lnkSelTab" runat="server" CssClass="ActiveTab" style="padding:10px 15px;" NavigateUrl='<%# Eval("Url") %>' OnClick="return tabClicked;">
|
||||
<%# Eval("Name") %>
|
||||
</asp:HyperLink>
|
||||
</SelectedItemTemplate>
|
||||
|
|
|
@ -22,11 +22,11 @@ namespace WebsitePanel.Portal.RDS.UserControls
|
|||
List<Tab> tabsList = new List<Tab>();
|
||||
tabsList.Add(CreateTab("rds_edit_collection", "Tab.RdsServers"));
|
||||
tabsList.Add(CreateTab("rds_edit_collection_settings", "Tab.Settings"));
|
||||
tabsList.Add(CreateTab("rds_collection_user_experience", "Tab.UserExperience"));
|
||||
tabsList.Add(CreateTab("rds_collection_edit_apps", "Tab.RdsApplications"));
|
||||
tabsList.Add(CreateTab("rds_collection_edit_users", "Tab.RdsUsers"));
|
||||
tabsList.Add(CreateTab("rds_collection_user_sessions", "Tab.UserSessions"));
|
||||
tabsList.Add(CreateTab("rds_collection_local_admins", "Tab.LocalAdmins"));
|
||||
tabsList.Add(CreateTab("rds_collection_user_experience", "Tab.UserExperience"));
|
||||
tabsList.Add(CreateTab("rds_collection_local_admins", "Tab.LocalAdmins"));
|
||||
tabsList.Add(CreateTab("rds_setup_letter", "Tab.RdsSetupLetter"));
|
||||
|
||||
int idx = 0;
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue