move auth chack to top of route handler

This commit is contained in:
kritzl 2025-11-01 01:51:48 +01:00 committed by June
commit 9fe298a899
No known key found for this signature in database

View file

@ -49,21 +49,24 @@ public class SSHKeyResourceProvider implements RealmResourceProvider {
@Path("export/{group_id}")
@Produces(MediaType.APPLICATION_JSON)
public Response exportKeys(@PathParam("group_id") String groupId) {
try {
AuthHelper.getAuth(
session,
authResult -> authResult.getToken().getIssuedFor().equals("admin-cli"));
} catch (Exception e) {
System.err.println(e);
return Response.status(401, e.getMessage()).build();
}
UserProvider userProvider = session.users();
UserProfileProvider profileProvider = session.getProvider(UserProfileProvider.class);
UPConfig upconfig = profileProvider.getConfiguration();
List<String> attributeNames = upconfig.getAttributes()
.stream()
.filter(a -> a.getGroup() != null && a.getGroup().equals("de.ccc.hamburg.keycloak.ssh_key.keys"))
.map(a -> a.getName())
.toList();
try {
AuthHelper.getAuth(
session,
authResult -> authResult.getToken().getIssuedFor().equals("admin-cli"));
RealmModel realm = session.getContext().getRealm();
// TODO: add allowlist check
@ -89,10 +92,6 @@ public class SSHKeyResourceProvider implements RealmResourceProvider {
.toList();
return Response.ok(Map.of("keys", keys)).build();
} catch (Exception e) {
System.err.println(e);
return Response.status(401, e.getMessage()).build();
}
}