Example #1
0
        public void TestTraceFilter()
        {
            TraceFilter filter = new TraceFilter();

            filter.Offset    = 0;
            filter.StartDate = DateTime.Now;
            filter.Urls      = new List <string>();
            filter.Urls.Add("http://dummytest");
            filter.Sort   = "any";
            filter.Expand = new List <TraceExpandValue>();
            filter.Expand.Add(TraceExpandValue.application);

            string qs = filter.ToString();

            Assert.IsTrue(qs.Contains("offset=0"));
            Assert.IsTrue(qs.Contains("startDate"));
            Assert.IsTrue(qs.Contains("urls=http://dummytest"));
            Assert.IsTrue(qs.Contains("sort=any"));
            Assert.IsTrue(qs.Contains("expand=application"));

            Assert.IsFalse(qs.Contains("limit"));
            Assert.IsFalse(qs.Contains("endDate"));
            Assert.IsFalse(qs.Contains("filterTags"));
            Assert.IsFalse(qs.Contains("servers"));
        }
        /// <summary>
        /// Gets subfilters for a filter.
        /// </summary>
        /// <param name="organizationId">Organization UUID</param>
        /// <param name="serverId">Server ID</param>
        /// <param name="type">Filter type. Allowed values: modules,workflow,servers,time,url,vulntype,security-standard.</param>
        /// <param name="filter">Query params that can be added to request.</param>
        /// <returns>A TraceFilterCatalogDetailsResponse that contains all the available subfilters.</returns>
        public TraceFilterCatalogDetailsResponse GetServerTraceFilterSubfilters(string organizationId, long serverId, TraceFilterType type, TraceFilter filter)
        {
            string endpoint = String.Format(NgEndpoints.SERVER_TRACE_FILTERS, organizationId, serverId, getTraceFilterTypeValue(type));

            if (filter != null)
            {
                endpoint += filter.ToString();
            }
            return(GetResponseAndDeserialize <TraceFilterCatalogDetailsResponse>(endpoint));
        }
        /// <summary>
        /// Gets subfilters for a filter.
        /// </summary>
        /// <param name="organizationId">Organization UUID</param>
        /// <param name="appId">Application UUID</param>
        /// <param name="type">Filter type. Allowed values: appversiontags,workflow,servers,time,url,vulntype,servers,security-standard.</param>
        /// <param name="filter">Query params that can be added to request.</param>
        /// <returns>A TraceFilterCatalogDetailsResponse that contains all the available subfilters.</returns>
        public TraceFilterCatalogDetailsResponse GetApplicationTraceFilterSubfilters(string organizationId, string appId, TraceFilterType type, TraceFilter filter)
        {
            string endpoint = String.Format(NgEndpoints.APPLICATION_TRACE_FILTERS, organizationId, appId, getTraceFilterTypeValue(type));

            if (filter != null)
            {
                endpoint += filter.ToString();
            }
            return(GetResponseAndDeserialize <TraceFilterCatalogDetailsResponse>(endpoint));
        }
        /// <summary>
        /// Get the vulnerabilities in the Server for the ID supplied.
        /// </summary>
        /// <param name="organizationId">The uuid of the user's organization.</param>
        /// <param name="serverId">The ID of the server.</param>
        /// <param name="filter">Query params that can be added to request.</param>
        /// <returns>A TraceFilterResponse object with the List of Trace objects.</returns>
        public TraceFilterResponse GetServerTraces(string organizationId, long serverId, TraceFilter filter)
        {
            string endpoint = String.Format(NgEndpoints.SERVER_TRACES, organizationId, serverId);

            if (filter != null)
            {
                endpoint += filter.ToString();
            }
            return(GetResponseAndDeserialize <TraceFilterResponse>(endpoint));
        }
        /// <summary>
        /// Get the vulnerabilities in the application for the ID supplied.
        /// </summary>
        /// <param name="organizationId">The uuid of the user's organization</param>
        /// <param name="appId">the ID of the application</param>
        /// <param name="filter">Query params that can be added to request.</param>
        /// <returns>A TraceFilterResponse object with the List of Trace objects.</returns>
        public TraceFilterResponse GetApplicationTraces(string organizationId, string appId, TraceFilter filter)
        {
            string endpoint = String.Format(NgEndpoints.APPLICATION_TRACES, organizationId, appId);

            if (filter != null)
            {
                endpoint += filter.ToString();
            }

            return(GetResponseAndDeserialize <TraceFilterResponse>(endpoint));
        }