Skip to content

Commit eea748d

Browse files
Update user lifecycle tracking to V3
1 parent a19f73a commit eea748d

File tree

19 files changed

+911
-638
lines changed

19 files changed

+911
-638
lines changed

dd-java-agent/appsec/src/main/java/com/datadog/appsec/AppSecSystem.java

+1-2
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,6 @@
88
import com.datadog.appsec.event.ReplaceableEventProducerService;
99
import com.datadog.appsec.gateway.GatewayBridge;
1010
import com.datadog.appsec.powerwaf.PowerWAFModule;
11-
import com.datadog.appsec.user.AppSecEventTrackerImpl;
1211
import com.datadog.appsec.util.AbortStartupException;
1312
import com.datadog.appsec.util.StandardizedLogging;
1413
import datadog.appsec.api.blocking.Blocking;
@@ -99,7 +98,7 @@ private static void doStart(SubscriptionService gw, SharedCommunicationObjects s
9998

10099
Blocking.setBlockingService(new BlockingServiceImpl(REPLACEABLE_EVENT_PRODUCER));
101100

102-
AppSecEventTracker.setEventTracker(new AppSecEventTrackerImpl());
101+
AppSecEventTracker.setEventTracker(new AppSecEventTracker());
103102

104103
STARTED.set(true);
105104

dd-java-agent/appsec/src/main/java/com/datadog/appsec/event/data/KnownAddresses.java

+4
Original file line numberDiff line numberDiff line change
@@ -111,6 +111,8 @@ public interface KnownAddresses {
111111

112112
Address<String> USER_ID = new Address<>("usr.id");
113113

114+
Address<String> USER_LOGIN = new Address<>("usr.login");
115+
114116
Address<String> SESSION_ID = new Address<>("usr.session_id");
115117

116118
/** The URL of a network resource being requested (outgoing request) */
@@ -189,6 +191,8 @@ static Address<?> forName(String name) {
189191
return SERVER_GRAPHQL_ALL_RESOLVERS;
190192
case "usr.id":
191193
return USER_ID;
194+
case "usr.login":
195+
return USER_LOGIN;
192196
case "usr.session_id":
193197
return SESSION_ID;
194198
case "server.io.net.url":

dd-java-agent/appsec/src/main/java/com/datadog/appsec/gateway/AppSecRequestContext.java

+29
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,7 @@
88
import com.datadog.appsec.report.AppSecEvent;
99
import com.datadog.appsec.util.StandardizedLogging;
1010
import datadog.trace.api.Config;
11+
import datadog.trace.api.UserIdCollectionMode;
1112
import datadog.trace.api.http.StoredBodySupplier;
1213
import datadog.trace.api.internal.TraceSegment;
1314
import datadog.trace.bootstrap.instrumentation.api.AgentSpan;
@@ -125,6 +126,10 @@ public class AppSecRequestContext implements DataBundle, Closeable {
125126

126127
// keep a reference to the last published usr.id
127128
private volatile String userId;
129+
private volatile UserIdCollectionMode userIdSource;
130+
// keep a reference to the last published usr.login
131+
private volatile String userLogin;
132+
private volatile UserIdCollectionMode userLoginSource;
128133
// keep a reference to the last published usr.session_id
129134
private volatile String sessionId;
130135

@@ -435,6 +440,30 @@ public void setUserId(String userId) {
435440
this.userId = userId;
436441
}
437442

443+
public UserIdCollectionMode getUserIdSource() {
444+
return userIdSource;
445+
}
446+
447+
public void setUserIdSource(UserIdCollectionMode userIdSource) {
448+
this.userIdSource = userIdSource;
449+
}
450+
451+
public String getUserLogin() {
452+
return userLogin;
453+
}
454+
455+
public void setUserLogin(String userLogin) {
456+
this.userLogin = userLogin;
457+
}
458+
459+
public UserIdCollectionMode getUserLoginSource() {
460+
return userLoginSource;
461+
}
462+
463+
public void setUserLoginSource(UserIdCollectionMode userLoginSource) {
464+
this.userLoginSource = userLoginSource;
465+
}
466+
438467
public void setSessionId(String sessionId) {
439468
this.sessionId = sessionId;
440469
}

0 commit comments

Comments
 (0)