From f08ca2b8178a612d15013cdb109cfcd80899779c Mon Sep 17 00:00:00 2001 From: JSQui Date: Thu, 1 Dec 2022 22:20:18 -0800 Subject: [PATCH] Rolls most of the server application to _id detection, while allowing the client to use clientid to pull requests. Allows us to more deal with spammed requests from one client. --- .../Asecure/electronicMailHandler.java | 8 +- .../delegationServices.java | 232 +++++++++--------- .../DelegationServices/delegationTimer.java | 16 -- src/main/java/com/jamesquinley/Main.java | 14 +- 4 files changed, 124 insertions(+), 146 deletions(-) diff --git a/src/main/java/com/jamesquinley/Asecure/electronicMailHandler.java b/src/main/java/com/jamesquinley/Asecure/electronicMailHandler.java index 344f60f..2e73c49 100644 --- a/src/main/java/com/jamesquinley/Asecure/electronicMailHandler.java +++ b/src/main/java/com/jamesquinley/Asecure/electronicMailHandler.java @@ -42,10 +42,12 @@ public class electronicMailHandler { message.setRecipients(Message.RecipientType.TO, InternetAddress.parse(receiverEmail)); message.setSubject("Welcome To Obsidian Core Studios!"); - message.setText("Seems you've signed up for an account we're happy you're here, and welcome to the Obsidian Core Studios Family! \n\n" + - "This Was Sent On Behalf Of Obsidian Core Studios By Our Super Cool Login Robots." + + message.setText("Thanks for joining our platform!\n\n" + + "Usage rules apply, account subject to moderation in accordance to our various agreements." + "\nYou'll Only Get This Email Once." + - "\nThis Account Was Created For: " + User); + "\nThis Account Was Created For: " + User + + + "\nView the web dashboard here: http://obsidiancorestudios.com/login"); Transport.send(message); System.out.println("Sent Onboarding Email"); diff --git a/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java b/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java index a9004e6..58c5cba 100644 --- a/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java +++ b/src/main/java/com/jamesquinley/DelegationServices/delegationServices.java @@ -100,10 +100,10 @@ public class delegationServices { Boolean cid = false; Boolean mac = false; Document Filter; - int ClientID = 0; + Object ClientID = null; try { try { - ClientID = (int) Lrequest.get("clientid"); + ClientID = Lrequest.get("_id"); cid = true; } catch (Exception exrp) { System.out.println("This request has opted out of CID."); @@ -135,7 +135,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery2); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } else { BasicDBObject searchQuery = new BasicDBObject(); searchQuery.append("rid", Lrequest.get("rid")); @@ -152,7 +152,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery2); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { @@ -168,7 +168,7 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } else { System.out.println("User On Allowed Region"); int requesttype = (int) Lrequest.get("type"); @@ -177,14 +177,14 @@ public class delegationServices { System.out.println("Delegation Has Started"); - if (cid == true && mac == true) + if (!RG.equals("web")) { if (requesttype == 0 || requesttype == 1 || requesttype == 2 || requesttype == 3 || requesttype == 4 || requesttype == 5 || requesttype == 6 || requesttype == 7 || requesttype == 8 || requesttype == 9 || requesttype == 10 || requesttype == 11 || requesttype == 12 || requesttype == 14 || requesttype == 20 || requesttype == 21 || requesttype == 41 || requesttype == 18 || requesttype == 47 || requesttype == 48 || requesttype == 54 || requesttype == 57 || requesttype == 61 || requesttype == 63 || requesttype == 65 || requesttype == 66 || requesttype == 67 || requesttype == 68 || requesttype == 71 || requesttype == 72) { if (requesttype == 47) { System.out.println("Self Updater download Request"); BasicDBObject searchQuery = new BasicDBObject(); BasicDBObject SqS = new BasicDBObject(); - SqS.append("clientid", ClientID); + SqS.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery2 = new BasicDBObject(); @@ -218,7 +218,7 @@ public class delegationServices { dCollection.updateOne(SqS, updateQuery3); dCollection.updateOne(SqS, updateQuery6); System.out.println("Finished Updater Request"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } @@ -226,7 +226,7 @@ public class delegationServices { System.out.println("Internal Launcher Download Request"); BasicDBObject searchQuery = new BasicDBObject(); BasicDBObject SqS = new BasicDBObject(); - SqS.append("clientid", ClientID); + SqS.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery2 = new BasicDBObject(); @@ -254,7 +254,7 @@ public class delegationServices { dCollection.updateOne(SqS, updateQuery2); dCollection.updateOne(SqS, updateQuery6); System.out.println("Finished Updater Request"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } if (requesttype == 0) { @@ -278,7 +278,7 @@ public class delegationServices { Email = (String) accountServer.get("Email"); UserName = (String) accountServer.get("User"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); BasicDBObject updateQuery2 = new BasicDBObject(); @@ -307,7 +307,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery4); dCollection.updateOne(searchQuery, updateQuery6); dCollection.updateOne(searchQuery, updateQuery7); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); System.out.println("Finished Sync Read Op"); } else { System.out.println("Sync Failure"); @@ -322,13 +322,13 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); //delegationTimer.trigger(); } } else { System.out.println("Banned Account"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -338,12 +338,12 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } catch (MongoCommandException ERC) { System.out.println("Malformed Request"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -354,7 +354,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } //sync write request @@ -378,7 +378,7 @@ public class delegationServices { BasicDBObject searchQuery = new BasicDBObject(); searchQuery.append("Token", Token); BasicDBObject SqS = new BasicDBObject(); - SqS.append("clientid", ClientID); + SqS.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery3 = new BasicDBObject(); @@ -393,7 +393,7 @@ public class delegationServices { dCollection.updateOne(SqS, updateQuery6); accountS.updateOne(searchQuery, updateQuery3); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } else { BasicDBObject searchQuery = new BasicDBObject(); searchQuery.append("rid", (int) Lrequest.get("rid")); @@ -407,12 +407,12 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { System.out.println("Banned Account"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -422,12 +422,12 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { System.out.println("Malformed Request"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -438,12 +438,12 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } catch (MongoCommandException ERC) { System.out.println("Malformed Request"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -454,7 +454,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } if (requesttype == 2) { @@ -497,7 +497,7 @@ public class delegationServices { String OTK = sb.toString(); BasicDBObject searchQuery = new BasicDBObject(); BasicDBObject keyApplicationIndex = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); keyApplicationIndex.append("User", username); secureCalls.oneTimeKeyEmail(((String) accountServer.get("Email")), OTK, username); BasicDBObject updateQuery = new BasicDBObject(); @@ -520,7 +520,7 @@ public class delegationServices { } else { System.out.println("RS1"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); updateQuery.append("$set", @@ -530,7 +530,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { @@ -546,7 +546,7 @@ public class delegationServices { keychainUUID = (String) accountServer.get("UUID"); localNet.macRead(Macid, lastNet, Email, UserName, Token); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); BasicDBObject updateQuery2 = new BasicDBObject(); @@ -584,10 +584,10 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery7); dCollection.updateOne(searchQuery, updateQuery8); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } else { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -598,13 +598,13 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } } else { System.out.println("Banned Account"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -614,12 +614,12 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } catch (Exception ERC) { System.out.println("Something Went Wrong: " + ERC.getLocalizedMessage()); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -630,7 +630,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } @@ -649,7 +649,7 @@ public class delegationServices { if (userName.equalsIgnoreCase(serverUserName)) { System.out.println("This key is correct."); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -660,12 +660,12 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } else { System.out.println("This key is incorrect"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -676,13 +676,13 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } } catch (Exception ERC) { System.out.println("This key is incorrect." + ERC); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -692,7 +692,7 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } @@ -719,7 +719,7 @@ public class delegationServices { BasicDBObject searchQuery = new BasicDBObject(); BasicDBObject searchQuery1 = new BasicDBObject(); searchQuery.append("Email", serverEmail); - searchQuery1.append("clientid", ClientID); + searchQuery1.append("_id", ClientID); System.out.println("Send indexes are ready."); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -750,13 +750,13 @@ public class delegationServices { dCollection.updateOne(searchQuery1, closeRequestType); dCollection.updateOne(searchQuery1, finalizeRequest); System.out.println("Objects close send"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); System.out.println("request finished correctly"); accountMigrationComplete(serverEmail, userName); } else { System.out.println("request denied"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -766,12 +766,12 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } catch (Exception ex) { System.out.println("Unable to reset password, making that known." + ex); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -781,7 +781,7 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } if (requesttype == 3) { @@ -812,7 +812,7 @@ public class delegationServices { keychainUUID = (String) accountServer.get("UUID"); localNet.macRead(Macid, lastNet, Email, UserName, TKN); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery2 = new BasicDBObject(); @@ -853,11 +853,11 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery9); dCollection.updateOne(searchQuery, updateQuery6); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } else { System.out.println("Login Failure"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -868,13 +868,13 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { System.out.println("Banned Account"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -884,13 +884,13 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { System.out.println("Login Failure"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -901,12 +901,12 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } catch (MongoCommandException ERC) { System.out.println("Malformed Request"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -916,7 +916,7 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); //delegationTimer.trigger(); } } @@ -952,7 +952,7 @@ public class delegationServices { UserName = (String) accountServer.get("User"); System.out.println("GotAccount"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); Filter = RGFilter.find(eq("rgkey", "UAROCKS")).first(); String apiV = (String) Filter.get("gameAPI"); String MOTD = (String) Filter.get("motd"); @@ -1004,11 +1004,11 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery6); //delegationTimer.trigger(); System.out.println("Pushed"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } else { System.out.println("Login Failure"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1019,13 +1019,13 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { System.out.println("Banned Account"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1035,12 +1035,12 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } catch (MongoCommandException ERC) { System.out.println("Mongodb Error " + ERC); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1050,13 +1050,13 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); //delegationTimer.trigger(); } } else { System.out.println("Login rejected, game client EOS has been reached."); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1067,13 +1067,13 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } if (requesttype == 10) { System.out.println("Account Creation Request"); - Document DServer = dCollection.find(eq("clientid", ClientID)).first(); + Document DServer = dCollection.find(eq("_id", ClientID)).first(); String User = (String) DServer.get("User"); String Password = (String) DServer.get("Password"); String Email = (String) DServer.get("Email"); @@ -1104,7 +1104,7 @@ public class delegationServices { Document DupeUser = accountS.find(eq("User", User)).first(); String DUPE = (String) DupeUser.get("User"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1114,7 +1114,7 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } catch (Exception exr) { System.out.println("Username Is Open"); try { @@ -1204,7 +1204,7 @@ public class delegationServices { createForm.append("lastNet", Macid); accountS.insertOne(createForm); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); secureCalls.accountCreationComplete(Email, User, UUID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1215,7 +1215,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); System.out.println("Update Request With Finished Status"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } @@ -1223,9 +1223,9 @@ public class delegationServices { if (requesttype == 20) //TODO rewrite to just need username, password will be set by system later { - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); System.out.println("Shadow Account Creation Request"); - Document DServer = dCollection.find(eq("clientid", ClientID)).first(); + Document DServer = dCollection.find(eq("_id", ClientID)).first(); String User = (String) DServer.get("User"); String Password = (String) DServer.get("Password"); // String Email = (String) DServer.get("Email"); @@ -1244,7 +1244,7 @@ public class delegationServices { Document DupeUser = accountS.find(eq("User", User)).first(); String DUPE = (String) DupeUser.get("User"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1255,7 +1255,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); System.out.println("User Exists"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } catch (Exception exr) { System.out.println("Username Is Open"); try { @@ -1300,7 +1300,7 @@ public class delegationServices { createForm.append("Control", 1); accountS.insertOne(createForm); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); updateQuery.append("$set", @@ -1310,7 +1310,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); System.out.println("Update Request With Finished Status"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } @@ -1327,7 +1327,7 @@ public class delegationServices { System.out.println("GrabbedInfo"); try { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); Filter = RGFilter.find(eq("rgkey", "UAROCKS")).first(); String pKey = (String) Filter.get("platformKey"); String version = (String) Filter.get("platformVersion"); @@ -1387,12 +1387,12 @@ public class delegationServices { //delegationTimer.trigger(); System.out.println("Pushed"); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } catch (MongoCommandException ERC) { System.out.println("Mongodb Error " + ERC); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1402,7 +1402,7 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); //delegationTimer.trigger(); } } @@ -1414,7 +1414,7 @@ public class delegationServices { } if (requesttype == 61) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); System.out.println("Init ClientTraceback"); String policyDocument; try { @@ -1436,11 +1436,11 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery2); dCollection.updateOne(searchQuery, updateQuery3); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } if (requesttype == 63) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); System.out.println("Init ClientTraceback"); String policyDocument; try { @@ -1463,11 +1463,11 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery2); dCollection.updateOne(searchQuery, updateQuery3); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } if (requesttype == 65) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); System.out.println("Collecting Error Data"); File homedir = new File(System.getProperty("user.home")); String applicationName = Lrequest.get("applicationName").toString(); @@ -1503,11 +1503,11 @@ public class delegationServices { updateQuery.append("$set", new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); - delegationServices.TargetDelete(ClientID); + delegationServices.TargetDelete(Lrequest.get("_id")); } if (requesttype == 66) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); System.out.println("Collecting Error Data"); File homedir = new File(System.getProperty("user.home")); String applicationName = Lrequest.get("applicationName").toString(); @@ -1547,11 +1547,11 @@ public class delegationServices { updateQuery.append("$set", new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); - delegationServices.TargetDelete(ClientID); + delegationServices.TargetDelete(Lrequest.get("_id")); } if (requesttype == 71) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); System.out.println("Collecting Telemetry Data"); File homedir = new File(System.getProperty("user.home")); String applicationName = Lrequest.get("applicationName").toString(); @@ -1587,11 +1587,11 @@ public class delegationServices { updateQuery.append("$set", new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); - delegationServices.TargetDelete(ClientID); + delegationServices.TargetDelete(Lrequest.get("_id")); } if (requesttype == 72) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); System.out.println("Collecting Error Data"); File homedir = new File(System.getProperty("user.home")); String applicationName = Lrequest.get("applicationName").toString(); @@ -1631,7 +1631,7 @@ public class delegationServices { updateQuery.append("$set", new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); - delegationServices.TargetDelete(ClientID); + delegationServices.TargetDelete(Lrequest.get("_id")); } if (requesttype == 68) { System.out.println("Verifying OTK"); @@ -1647,7 +1647,7 @@ public class delegationServices { if (clientUUID.equalsIgnoreCase(serverUUID)) { System.out.println("This key is correct."); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1659,12 +1659,12 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); offBoarding((String) accountServer.get("Email"), (String) accountServer.get("User"), (String) accountServer.get("FName")); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); accountS.deleteOne(accountServer); } else { System.out.println("This key is incorrect"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1675,13 +1675,13 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { System.out.println("This key is incorrect, account is banned."); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1691,12 +1691,12 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } catch (Exception ERC) { System.out.println("This key is incorrect." + ERC); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1706,7 +1706,7 @@ public class delegationServices { new BasicDBObject().append("status", true)); dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } @@ -1747,17 +1747,17 @@ public class delegationServices { otkDeletionEmailResend((String) linkedAccount.get("Email"), (String) linkedAccount.get("delOTK"), (String) linkedAccount.get("User")); } BasicDBObject clearCL = new BasicDBObject(); - clearCL.append("clientid", ClientID); + clearCL.append("_id", ClientID); BasicDBObject clearUO = new BasicDBObject(); clearUO.append("$set", new BasicDBObject().append("status", true)); dCollection.updateOne(clearCL, clearUO); - com.jamesquinley.DelegationServices.delegationTimer.DeleteTargetRequestQuick(ClientID); + TargetDelete(ClientID); } } else { System.out.println("Malformed Request, Non Recoverable (Request Type Not Found)"); BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", ClientID); + searchQuery.append("_id", ClientID); BasicDBObject updateQuery = new BasicDBObject(); BasicDBObject updateQuery1 = new BasicDBObject(); @@ -1769,12 +1769,8 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery1); dCollection.updateOne(searchQuery, updateQuery); BasicDBObject clearCL = new BasicDBObject(); - clearCL.append("clientid", ClientID); - BasicDBObject clearUO = new BasicDBObject(); - clearUO.append("$set", - new BasicDBObject().append("status", true)); - dCollection.updateOne(clearUO, clearUO); - delegationTimer.DeleteTargetRequest(ClientID); + clearCL.append("_id", ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else @@ -1849,7 +1845,7 @@ public class delegationServices { dCollection.updateOne(searchQuery, updateQuery); dCollection.updateOne(searchQuery, updateQuery1); //delegationTimer.trigger(); - delegationTimer.DeleteTargetRequest(ClientID); + delegationTimer.DeleteTargetRequestByID(Lrequest.get("_id")); } } else { @@ -2259,7 +2255,8 @@ public class delegationServices { } } } catch (Exception Erp) { - System.out.println("Malformed Request, Non Recoverable ErrorInfo: " + Erp); + System.out.println("Malformed Request, Non Recoverable ErrorInfo: "); + Erp.printStackTrace(); BasicDBObject searchQuery = new BasicDBObject(); searchQuery.append("_id",Lrequest.get("_id")); @@ -2289,9 +2286,9 @@ public class delegationServices { System.out.println("Flushed Server"); } - public static void TargetDelete(int CID) { + public static void TargetDelete(Object ID) { BasicDBObject searchQuery = new BasicDBObject(); - searchQuery.append("clientid", CID); + searchQuery.append("_id", ID); dCollection.deleteMany(searchQuery); System.out.println("Flushed a targeted request (CID) from the server"); @@ -2305,7 +2302,6 @@ public class delegationServices { } - public static void TargetDeleteRID(int CID) { BasicDBObject searchQuery = new BasicDBObject(); searchQuery.append("rid", CID); diff --git a/src/main/java/com/jamesquinley/DelegationServices/delegationTimer.java b/src/main/java/com/jamesquinley/DelegationServices/delegationTimer.java index 672b13f..c72b5b5 100644 --- a/src/main/java/com/jamesquinley/DelegationServices/delegationTimer.java +++ b/src/main/java/com/jamesquinley/DelegationServices/delegationTimer.java @@ -37,22 +37,6 @@ public class delegationTimer { }; scheduler.scheduleAtFixedRate(runnable, 0, 1, TimeUnit.SECONDS); } - public static void DeleteTargetRequestQuick (int CID) - { - final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); - final Runnable runnable = new Runnable() { - int countdownStarter = 4; - public void run() { - countdownStarter--; - if (countdownStarter <= 0) { - countdownStarter = 4; - delegationServices.TargetDelete(CID); - scheduler.shutdown(); - } - } - }; - scheduler.scheduleAtFixedRate(runnable, 0, 1, TimeUnit.SECONDS); - } public static void DeleteTargetRequestRID (int RID) { final ScheduledExecutorService scheduler = Executors.newScheduledThreadPool(1); diff --git a/src/main/java/com/jamesquinley/Main.java b/src/main/java/com/jamesquinley/Main.java index 9004659..bd708f1 100644 --- a/src/main/java/com/jamesquinley/Main.java +++ b/src/main/java/com/jamesquinley/Main.java @@ -12,20 +12,16 @@ public class Main { com.jamesquinley.DelegationServices.delegationServices.Purge(); System.out.println("We're starting the login delegation server, please wait one moment while we check a few things."); System.out.println("We've started everything, requests are now being served"); - isolatedTimer(); + while (true) { + isolatedTimer(); + } } static void isolatedTimer() { - while (true) { - try { - Thread.sleep(500); com.jamesquinley.DelegationServices.delegationServices.userAuthetication(); - } catch (InterruptedException e) { - e.printStackTrace(); - System.out.println("We ran into an issue, this is a known issue and will be fixed once I can figure it out."); - isolatedTimer(); + } catch (Exception e) { + System.out.println("We ran into an issue, this is a known issue and will be fixed once I can figure it out. " + e.getCause()); } - } } } \ No newline at end of file