Skip to content

Commit dcf3623

Browse files
committed
moved CSRF generator to request parser instead of confirmation controller
1 parent a253ebc commit dcf3623

File tree

2 files changed

+9
-4
lines changed

2 files changed

+9
-4
lines changed

openid-connect-server/src/main/java/org/mitre/oauth2/web/OAuthConfirmationController.java

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,6 @@
2626
import java.util.List;
2727
import java.util.Map;
2828
import java.util.Set;
29-
import java.util.UUID;
3029

3130
import org.mitre.oauth2.model.ClientDetailsEntity;
3231
import org.mitre.oauth2.model.SystemScope;
@@ -194,9 +193,7 @@ public String confimAccess(Map<String, Object> model, @ModelAttribute("authoriza
194193
}
195194

196195
// inject a random value for CSRF purposes
197-
String csrf = UUID.randomUUID().toString();
198-
model.put("csrf", csrf);
199-
authRequest.getExtensions().put("csrf", csrf);
196+
model.put("csrf", authRequest.getExtensions().get("csrf"));
200197

201198
return "approve";
202199
}

openid-connect-server/src/main/java/org/mitre/openid/connect/ConnectOAuth2RequestFactory.java

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -22,6 +22,7 @@
2222
import java.util.Collections;
2323
import java.util.Map;
2424
import java.util.Set;
25+
import java.util.UUID;
2526

2627
import org.mitre.jwt.encryption.service.JwtEncryptionAndDecryptionService;
2728
import org.mitre.jwt.signer.service.JwtSigningAndValidationService;
@@ -137,6 +138,13 @@ public AuthorizationRequest createAuthorizationRequest(Map<String, String> input
137138
}
138139
}
139140

141+
142+
// add CSRF protection to the request on first parse
143+
String csrf = UUID.randomUUID().toString();
144+
request.getExtensions().put("csrf", csrf);
145+
146+
147+
140148
return request;
141149
}
142150

0 commit comments

Comments
 (0)