/// <summary>
 /// Bu fonksiyon yeni bir Site (Varlık) oluşturur.
 /// This function creates a new Site.
 /// </summary>
 /// <param name="manager">NexposeManager instance</param>
 /// <param name="site">SiteCreateModel object</param>
 /// <returns></returns>
 public string CreateSite(NexposeManager manager, SiteCreateModel site)
 {
     try
     {
         string             json               = JsonConvert.SerializeObject(site);
         string             responseJson       = manager.CreateSite(json);
         SiteCreateResponse siteCreateResponse = JsonConvert.DeserializeObject <SiteCreateResponse>(responseJson);
         return(siteCreateResponse.Id);
     }
     catch (Exception ex)
     {
         Console.WriteLine("ScanController::CreateSite \nException: " + ex.Message);
         return(null);
     }
 }
Exemple #2
0
        /// <summary>
        ///  Bu fonksiyon yeni bir Tarama oluşturur ve oluşturulan ID'yi ekrana yazar.
        ///  This function creates a new Scan and created ID writes to the screen.
        /// </summary>
        /// <param name="manager"></param>
        public static void CreateScan(NexposeManager manager)
        {
            ScanController = new ScanController();
            try
            {
                string selected = "";
                do
                {
                    Console.Write("Yeni  Varlık Oluşturmak İstiyor musunuz? (E/H)");
                    selected = Console.ReadLine();
                    string responseId = "";
                    if (selected.ToUpper() == "E")
                    {
                        //Profile Name is scan settings namely it is policy. Profile Adı tarama ayarlarıdır yani policydir.
                        Console.WriteLine("Varlık Adı Giriniz.");
                        string          siteName        = Console.ReadLine();
                        string          scanProfileName = ListAndSelectTemplate(manager);
                        string          targetURL       = SelectTargetURL();
                        SiteCreateModel siteCreate      = new SiteCreateModel(siteName, targetURL, scanProfileName);
                        responseId = ScanController.CreateSite(manager, siteCreate);
                    }
                    else if (selected.ToUpper() == "H")
                    {
                        //Varlıkları Listele
                        SitesModel sitesModel = ScanController.GetSites(manager);
                        int        counter    = 1;
                        if (sitesModel.Resources.Length == 0)
                        {
                            Console.WriteLine("Herhangi bir varlık bulunmamaktadır. Öncelikle yeni bir varlık oluşturunuz.");
                            break;
                        }

                        foreach (var item in sitesModel.Resources)
                        {
                            Console.WriteLine(counter + ") " + item.Name);
                            counter += 1;
                        }
                        Console.WriteLine("Site Numarasını giriniz: ");
                        int id = Convert.ToInt32(Console.ReadLine());


                        ScanCreate scanCreate = new ScanCreate(null, sitesModel.Resources[id - 1].ScanTemplate);

                        ScanCreateResponse scanCreateResponse = ScanController.CreateScan(manager, id.ToString(), scanCreate);
                        if (scanCreateResponse.Id > 0)
                        {
                            Console.WriteLine("Tarama Oluşturuldu. Tarama ID: " + scanCreateResponse.Id);
                            break;
                        }
                    }
                    else
                    {
                        Console.WriteLine("Geçersiz Seçim");
                    }
                } while (selected != "E" & selected != "H");



                //ScanCreate scanCreate = new ScanCreate(scanProfileName, targetURL);
                //string json = JsonConvert.SerializeObject(scanCreate);



                //if (responseJson == null)
                //{
                //    Console.WriteLine("Sistemde herhangi bir tarama mevcut ise öncelikle onu siliniz.");
                //    return;
                //}

                //ScanCreateResponse scanCreateResponse = JsonConvert.DeserializeObject<ScanCreateResponse>(responseJson);
                //Console.WriteLine("Oluşturulan Tarama ID: " + scanCreateResponse.ID);
            }
            catch (Exception ex)
            {
                Console.WriteLine("ScanView::CreateScan Exception: " + ex.Message);
            }
        }