protected override void BeginProcessing() { base.BeginProcessing(); if (ApiConnectionHandle.Global != null) { WriteVerbose("Removing session"); ApiConnectionHandle.ClearGlobal(); } else { WriteVerbose("No session to disconnect"); } }
protected override void BeginProcessing() { base.BeginProcessing(); var TDRUrl = "https://protect.cylance.com/Reports/ThreatDataReportV1/"; var APIAuthUrl = "https://protectapi.cylance.com/auth/v2/token"; switch (Region) { case "apne1": case "au": case "euc1": case "sae1": TDRUrl = $"https://protect-{Region}.cylance.com/Reports/ThreatDataReportV1/"; APIAuthUrl = $"https://protectapi-{Region}.cylance.com/auth/v2/token"; break; case "us-gov": TDRUrl = "https://protect.us.cylance.com/Reports/ThreatDataReportV1/"; APIAuthUrl = "https://protectapi.us.cylance.com/auth/v2/token"; break; } var apiSecret = ConvertToSecureString("APISecret", APISecret); var console = ConfigurationManager.Default.New(); console.ConsoleId = Console; console.APIId = APIId; console.SetAPISecret(apiSecret); console.APITenantId = APITenantId; console.APIUrl = APIAuthUrl; console.TDRUrl = TDRUrl; var apiSession = new ApiV2Session { APIId = console.APIId, APISecret = console.APISecret.Value, APITenantId = console.APITenantId, APIBaseUrl = console.APIUrl, Proxy = (string.IsNullOrEmpty(ProxyServer)) ? null : new System.Net.WebProxy(ProxyServer) }; ApiConnectionHandle session = new ApiConnectionHandle(apiSession); ApiV2 Connection = new ApiV2(apiSession); Connection.ConnectAsync().Wait(); if (null != LoginPassword) { var loginPassword = ConvertToSecureString("LoginPassword", LoginPassword); console.SetLoginPassword(loginPassword); } if (!string.IsNullOrEmpty(LoginUser)) { console.LoginUser = LoginUser; } WriteVerbose($"Writing new console entry '{console.ConsoleId}' for API ID {console.APIId}, Tenant ID {console.APITenantId}, API auth URL {console.APIUrl}, TDR URL {console.TDRUrl}"); ConfigurationManager.Default.Write(console); }