public void GetSetAllPropertiesWorks() { DiagnoseSecurityRequest request = new DiagnoseSecurityRequest(); request.UserName = "******"; Assert.AreEqual("new user", request.UserName, "UserName fails the get/set test"); var projects = new List<string>(); request.Projects = projects; Assert.AreSame(projects, request.Projects); }
public void ToStringSerialisesDefaultValues() { DiagnoseSecurityRequest request = new DiagnoseSecurityRequest(); string actual = request.ToString(); string expected = string.Format("<diagnoseSecurityMessage xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" " + "timestamp=\"{2:yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz}\" identifier=\"{0}\" source=\"{1}\" />", request.Identifier, request.SourceName, request.Timestamp); Assert.AreEqual(expected, actual); }
public void ToStringSerialisesAllValues() { DiagnoseSecurityRequest request = new DiagnoseSecurityRequest(); request.Identifier = "identifier"; request.UserName = "******"; request.ServerName = "serverName"; request.SessionToken = "sessionToken"; request.SourceName = "sourceName"; request.Timestamp = DateTime.Now; request.Projects.Add("test project"); string actual = request.ToString(); string expected = string.Format("<diagnoseSecurityMessage xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\" xmlns:xsd=\"http://www.w3.org/2001/XMLSchema\" " + "timestamp=\"{4:yyyy-MM-ddTHH:mm:ss.FFFFFFFzzz}\" identifier=\"{0}\" server=\"{1}\" source=\"{2}\" session=\"{3}\" userName=\"{5}\">" + "<project>test project</project>" + "</diagnoseSecurityMessage>", request.Identifier, request.ServerName, request.SourceName, request.SessionToken, request.Timestamp, request.UserName); Assert.AreEqual(expected, actual); }
/// <summary> /// Checks the security permissions for a user against one or more projects. /// </summary> /// <returns>A set of diagnostics information.</returns> public override List<SecurityCheckDiagnostics> DiagnoseSecurityPermissions(string userName, params string[] projects) { DiagnoseSecurityRequest request = new DiagnoseSecurityRequest(); request.SessionToken = SessionToken; request.ServerName = TargetServer; request.UserName = userName; request.ServerName = TargetServer; if (projects != null) request.Projects.AddRange(projects); DiagnoseSecurityResponse resp = ValidateResponse( connection.SendMessage("DiagnoseSecurityPermissions", request)) as DiagnoseSecurityResponse; return resp.Diagnostics; }
/// <summary> /// Checks the security permissions for a user against one or more projects. /// </summary> /// <param name="request"></param> /// <returns>A set of diagnostics information.</returns> public DiagnoseSecurityResponse DiagnoseSecurityPermissions(DiagnoseSecurityRequest request) { return cruiseServer.DiagnoseSecurityPermissions(request); }
/// <summary> /// Checks the security permissions for a user against one or more projects. /// </summary> /// <param name="request"></param> /// <returns>A set of diagnostics information.</returns> public DiagnoseSecurityResponse DiagnoseSecurityPermissions(DiagnoseSecurityRequest request) { List<SecurityCheckDiagnostics> diagnoses = new List<SecurityCheckDiagnostics>(); DiagnoseSecurityResponse response = new DiagnoseSecurityResponse(RunServerRequest(request, SecurityPermission.ViewSecurity, SecurityEvent.DiagnoseSecurityPermissions, delegate { Array permissions = Enum.GetValues(typeof(SecurityPermission)); foreach (string projectName in request.Projects) { if (string.IsNullOrEmpty(projectName)) { Log.Info(string.Format(CultureInfo.CurrentCulture, "DiagnoseServerPermission for user {0}", request.UserName)); } else { Log.Info(string.Format(CultureInfo.CurrentCulture, "DiagnoseProjectPermission for user {0} project {1}", request.UserName, projectName)); } foreach (SecurityPermission permission in permissions) { SecurityCheckDiagnostics diagnostics = new SecurityCheckDiagnostics(); diagnostics.Permission = permission.ToString(); diagnostics.Project = projectName; diagnostics.User = request.UserName; diagnostics.IsAllowed = DiagnosePermission(request.UserName, projectName, permission); diagnoses.Add(diagnostics); } } })); response.Diagnostics = diagnoses; return response; }
public void GetSetAllPropertiesWorks() { DiagnoseSecurityRequest request = new DiagnoseSecurityRequest(); request.UserName = "******"; Assert.AreEqual("new user", request.UserName, "UserName fails the get/set test"); }
/// <summary> /// Checks the security permissions for a user against one or more projects. /// </summary> /// <param name="request"></param> /// <returns>A set of diagnostics information.</returns> public virtual DiagnoseSecurityResponse DiagnoseSecurityPermissions(DiagnoseSecurityRequest request) { return server.DiagnoseSecurityPermissions(request); }