### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/login/rest/infrastructure/resource/pub/ui/common/UiSettingsResource.java 22- 23:@Path("/ui/static/configuration") 24-@DisableSystemAvailabilityCheck -- 29- @Inject 30: public UiSettingsResource(Provider globalUiAttributes, Provider mapper) { 31- this.globalUiAttributes = globalUiAttributes; -- 48- ) 49: @GET 50- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 51- @RequiresWritableSession 52: public Response getUiSettings() { 53- ResourceDocument document = ((RestMapper)this.mapper.get()) ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/login/rest/infrastructure/resource/pub/ui/common/UiLanguageResource.java 21- 22:@Path("/ui/languages") 23-@DisableSystemAvailabilityCheck -- 28- @Inject 29: public UiLanguageResource(Provider localePreferenceConfiguration, RestMapper mapper) { 30- this.localePreferenceConfiguration = localePreferenceConfiguration; -- 47- ) 48: @GET 49- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 50: public Response getDefaultUi() { 51- ResourceDocument document = this.mapper ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/login/rest/infrastructure/resource/pub/MaintenanceMessageResource.java 35-@DisableSystemAvailabilityCheck 36:@Path("/maintenance-messages") 37-public class MaintenanceMessageResource { -- 42- @Inject 43: public MaintenanceMessageResource(Provider> maintenanceMessageService, MapperFacade mapper) { 44- this.maintenanceMessageService = maintenanceMessageService; -- 60- ) 61: @GET 62- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 63- @RequiresWritableSession 64: public Response retrieveMaintenanceMessages( 65- @Parameter(description = "Restricts the collection of maintenance messages to the supplied locations.") @BeanParam DocumentedFilterParameter filterParameter ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/login/rest/infrastructure/resource/pub/JwksResource.java 26- 27:@Path("/") 28-public final class JwksResource { -- 49- ) 50: @GET 51- @Operation( -- 55- ) 56: @Path("jwks") 57- @Produces("application/json") -- 59- @RequiresWritableSession 60: public Response getJwks(@Context ContainerRequestContext requestContext) { 61- return ((Optional)this.jwksService.get()) -- 73- @Inject 74: public JwksResource(Provider> jwksService, Provider cacheControlResponseHeaderService) { 75- this.jwksService = jwksService; ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/login/rest/infrastructure/resource/pub/PasswordPolicyResource.java 32- 33:@Path("/password") 34-public class PasswordPolicyResource { -- 40- @Inject 41: public PasswordPolicyResource( 42- Provider passwordService, Provider> restConfig, Provider uriInfo -- 66- ) 67: @POST 68: @Path("policy/check") 69- @Consumes("application/json") -- 71- @DisableResponseDelay 72: public Response checkPasswordPolicy(@Parameter(description = "The password to be validated.") @NotNull @Valid PasswordPolicyCheckRequest request) { 73- if (this.passwordPolicyCheckDisabled()) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/login/rest/infrastructure/resource/pub/FlowInformationResource.java 25- 26:@Path("/") 27-public final class FlowInformationResource { -- 31- @Inject 32: public FlowInformationResource(Provider flowInformationService, RestMapper restMapper) { 33- this.flowInformationService = flowInformationService; -- 61- ) 62: @GET 63: @Path("flow") 64- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) -- 66- @RequiresWritableSession 67: public Response getCurrentFlowState() { 68- Optional flowInfos = ((FlowInformationService)this.flowInformationService.get()).getFlowInformation(); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/emailotp/EmailOtpTransactionApprovalFlowResource.java 25- 26:@Path("/transaction-approval/email/otp") 27-public class EmailOtpTransactionApprovalFlowResource { -- 31- @Inject 32: public EmailOtpTransactionApprovalFlowResource(FlowResultMapper mapper, Provider emailOtpAuthentication) { 33- this.mapper = mapper; -- 67- ) 68: @POST 69: @Path("/check") 70- @Consumes("application/json") -- 76- ) 77: public Response checkOtp(@Parameter(description = "Request containing the OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 78- FlowResult result = ((EmailOtpAuthentication)this.emailOtpAuthentication.get()).checkOtp(UnverifiedOtp.unverifiedOtp(request.getOtp())); -- 112- ) 113: @POST 114- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 115: @Path("/resend") 116- @Operation( -- 120- ) 121: public Response resendOtp() { 122- FlowResult resendResult = ((EmailOtpAuthentication)this.emailOtpAuthentication.get()).resend(); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/TransactionApprovalDynamicStepActivationResource.java 28- 29:@Path("transaction-approval/dynamic-steps") 30-public final class TransactionApprovalDynamicStepActivationResource { -- 35- @Inject 36: public TransactionApprovalDynamicStepActivationResource( 37- Provider dynamicActivation, FlowResultMapper mapper, MapperFacade mapperFacade -- 59- ) 60: @POST 61: @Path("retrieve") 62- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 63: public Response retrieve() { 64- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).retrieveDynamicStepActivationInformation(); -- 98- ) 99: @POST 100: @Path("{stepId}/activate") 101- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 102: public Response activate(@Parameter(description = "The ID of the step to be activated.") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 103- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).activateStep(new StepId(stepId)); -- 134- ) 135: @POST 136: @Path("{stepId}/deactivate") 137- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 138: public Response deactivate(@Parameter(description = "The ID of the step to be deactivated") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 139- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).deactivateStep(new StepId(stepId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/TransactionApprovalParameterFlowResource.java 29- 30:@Path("/transaction-approval/parameters") 31-public class TransactionApprovalParameterFlowResource { -- 36- @Inject 37: public TransactionApprovalParameterFlowResource(FlowResultMapper mapper, Provider transactionApprovalParameterHandler) { 38- this.mapper = mapper; -- 72- ) 73: @POST 74- @Consumes("application/json") -- 80- ) 81: public Response validateAndConsume( 82- @NotNull @Valid @RequestBody( ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/message/TransactionApprovalMessageAcknowledgeFlowResource.java 19- 20:@Path("/transaction-approval/message") 21-public class TransactionApprovalMessageAcknowledgeFlowResource { -- 25- @Inject 26: public TransactionApprovalMessageAcknowledgeFlowResource(Provider flow, FlowResultMapper mapper) { 27- this.flow = flow; -- 38- ) 39: @POST 40: @Path("/acknowledge") 41- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) -- 46- ) 47: public Response acknowledgeMessageId() { 48- FlowResult result = ((Flow)this.flow.get()).execute(AcknowledgeMessageStep::acknowledge, AcknowledgeMessageStep.class); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/fido/FidoTransactionApprovalFlowResource.java 28- 29:@Path("/transaction-approval/fido") 30-public class FidoTransactionApprovalFlowResource { -- 34- @Inject 35: public FidoTransactionApprovalFlowResource(FlowResultMapper mapper, Provider fidoAuthentication) { 36- this.mapper = mapper; -- 75- ) 76: @POST 77: @Path("/assertion-response/check") 78- @Consumes("application/json") 79- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 80: public Response verify( 81- @Parameter(description = "Contains the FIDO authenticator's response to the previously obtained challenge.") @NotNull @Valid FidoAuthenticationPublicKeyCredentialRequest request -- 131- ) 132: @POST 133: @Path("/failure/report") 134- @Consumes("application/json") 135- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 136: public Response handleClientFailure( 137- @Parameter(description = "Contains information (name and message) describing the failure.") @Valid @NotNull FidoClientFailureRequest request ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/TransactionApprovalInteractiveGotoResource.java 28- 29:@Path("transaction-approval/goto-targets") 30-public final class TransactionApprovalInteractiveGotoResource { -- 35- @Inject 36: public TransactionApprovalInteractiveGotoResource(Provider interactiveGoto, FlowResultMapper mapper, MapperFacade mapperFacade) { 37- this.interactiveGoto = interactiveGoto; -- 52- ) 53: @POST 54: @Path("retrieve") 55- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) -- 60- ) 61: public Response retrieve() { 62- FlowResult result = ((InteractiveGoto)this.interactiveGoto.get()).retrieveGotoTargets(); -- 89- ) 90: @POST 91: @Path("{stepId}/goto") 92- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) -- 97- ) 98: public Response doGoto(@Parameter(description = "The goto target's step ID.") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 99- FlowResult result = ((InteractiveGoto)this.interactiveGoto.get()).doGoto(new StepId(stepId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/mtan/MtanTransactionApprovalFlowResource.java 39- 40:@Path("/transaction-approval/mtan") 41-public class MtanTransactionApprovalFlowResource { -- 47- @Inject 48: public MtanTransactionApprovalFlowResource(FlowResultMapper mapper, MapperFacade mapperFacade, Provider mtanAuthentication) { 49- this.mapper = mapper; -- 84- ) 85: @POST 86: @Path("/otp/check") 87- @Consumes("application/json") -- 93- ) 94: public Response checkMtanOtp(@Parameter(description = "Request containing the mTAN OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 95- FlowResult result = ((MtanOtpCheck)this.mtanAuthentication.get()).checkOtp(UnverifiedOtp.unverifiedOtp(request.getOtp())); -- 107- @Deprecated 108: @POST 109- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 110: @Path("/tokens/retrieve") 111- @Operation( -- 115- ) 116: public Response retrieveMtanTokens() { 117- FlowResult result = ((MtanOtpCheck)this.mtanAuthentication.get()).getNumberChoice(); -- 163- ) 164: @POST 165- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 166: @Path("/tokens/{id}/select") 167- @Operation( -- 171- ) 172: public Response selectMtanToken(@Parameter(description = "the ID of the selected mTAN token.") @PathParam("id") @Size(min = 1, max = 50) String id) { 173- FlowResult selectResult = ((MtanOtpCheck)this.mtanAuthentication.get()).selectMtanToken(id); -- 225- ) 226: @POST 227- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 228: @Path("/otp/resend") 229- @Operation( -- 233- ) 234: public Response resendMtanOtp() { 235- FlowResult resendResult = ((MtanOtpCheck)this.mtanAuthentication.get()).resendOtp(); -- 257- @Deprecated 258: @POST 259- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 260: @Path("/otp/resend-info/retrieve") 261- @Operation( -- 265- ) 266: public Response retrieveResendInfo() { 267- FlowResult resendPossibleResult = ((MtanOtpCheck)this.mtanAuthentication.get()).resendOtpPossible(); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/identification/UserIdentificationFlowResource.java 21- 22:@Path("/transaction-approval/user") 23-public class UserIdentificationFlowResource { -- 27- @Inject 28: public UserIdentificationFlowResource(Provider identification, Provider mapper) { 29- this.userIdentification = identification; -- 63- ) 64: @POST 65: @Path("/identify") 66- @Consumes("application/json") -- 72- ) 73: public Response checkUsername(@Parameter(description = "Contains the username.") @Valid TransactionApprovalUsernameCheckRequest request) { 74- return ((ValidationResultMapper)this.mapper.get()) ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/matrix/MatrixTransactionApprovalFlowResource.java 34- 35:@Path("/transaction-approval/matrix") 36-public class MatrixTransactionApprovalFlowResource { -- 41- @Inject 42: public MatrixTransactionApprovalFlowResource(FlowResultMapper resultMapper, MapperFacade mapperFacade, Provider matrixAuthentication) { 43- this.resultMapper = resultMapper; -- 56- @Deprecated 57: @POST 58- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 59: @Path("/challenge/retrieve") 60- @Operation( -- 64- ) 65: public Response retrieveChallenge() { 66- FlowResult result = ((MatrixCheck)this.matrixAuthentication.get()).getCurrentChallenge(); -- 109- ) 110: @POST 111: @Path("/check") 112- @Consumes("application/json") -- 118- ) 119: public Response checkChallengeResponse( 120- @Parameter(description = "Contains the challenge response(s).") @NotNull @Valid TransactionApprovalMatrixChallengeCheckRequest request ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/cronto/CrontoTransactionApprovalFlowResource.java 38- 39:@Path("/transaction-approval/cronto") 40-public class CrontoTransactionApprovalFlowResource { -- 45- @Inject 46: public CrontoTransactionApprovalFlowResource(FlowResultMapper mapper, MapperFacade mapperFacade, Provider crontoAuthentication) { 47- this.mapper = mapper; -- 60- @Deprecated 61: @POST 62- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 63: @Path("/challenge/retrieve") 64- @Operation( -- 68- ) 69: public Response retrieveChallenge() { 70- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).getCurrentChallenge(); -- 113- ) 114: @POST 115: @Path("/otp/check") 116- @Consumes("application/json") -- 122- ) 123: public Response checkCrontoOtp(@Parameter(description = "Contains the Cronto OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 124- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).checkOtp(new CrontoOtp(request.getOtp())); -- 150- ) 151: @POST 152: @Path("/otp/poll") 153- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) -- 158- ) 159: public Response pollOnlineValidation( 160- @Parameter( -- 179- @Deprecated 180: @POST 181- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 182: @Path("/push-devices/retrieve") 183- @Operation( -- 187- ) 188: public Response retrievePushDeviceChoices() { 189- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).getPushDeviceChoices(); -- 216- ) 217: @POST 218- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 219: @Path("/offline/") 220- @Operation( -- 224- ) 225: public Response selectOfflineAuthentication() { 226- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).selectOfflineAuthentication(); -- 260- ) 261: @POST 262- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 263: @Path("/push-devices/{id}/select") 264- @Operation( -- 268- ) 269: public Response selectPushDevice(@Parameter(description = "The ID of the selected push device.") @PathParam("id") @Size(min = 1, max = 50) String id) { 270- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).selectPushDevice(id); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/otp/GenericOtpTransactionApprovalResource.java 25- 26:@Path("/transaction-approval/otp") 27-public class GenericOtpTransactionApprovalResource { -- 31- @Inject 32: public GenericOtpTransactionApprovalResource(FlowResultMapper mapper, Provider otpAuthentication) { 33- this.mapper = mapper; -- 67- ) 68: @POST 69: @Path("/check") 70- @Consumes("application/json") -- 76- ) 77: public Response checkOtp(@Parameter(description = "Request containing the OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 78- FlowResult result = ((GenericOtpAuthentication)this.otpAuthentication.get()).checkOtp(UnverifiedOtp.unverifiedOtp(request.getOtp())); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/airlock2fa/Airlock2FATransactionApprovalFlowResource.java 40- 41:@Path("/transaction-approval/airlock-2fa") 42-public class Airlock2FATransactionApprovalFlowResource { -- 47- @Inject 48: public Airlock2FATransactionApprovalFlowResource(Provider messageApproval, FlowResultMapper mapper, MapperFacade mapperFacade) { 49- this.messageApproval = messageApproval; -- 76- ) 77: @POST 78: @Path("/status/poll") 79- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) -- 84- ) 85: public Response pollOnlineValidation( 86- @Parameter( -- 108- @Deprecated 109: @POST 110- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 111: @Path("/challenge/retrieve") 112- @Operation( -- 116- ) 117: public Response retrieveOfflineQrCodeChallenge() { 118- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).retrieveOfflineQrCode(); -- 136- @Deprecated 137: @POST 138- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 139: @Path("/mobile-only/challenge/retrieve/") 140- @Operation( -- 144- ) 145: public Response retrieveMobileOnlyChallenge() { 146- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).retrieveMobileOnlyChallenge(); -- 180- ) 181: @POST 182: @Path("/otp/check") 183- @Consumes("application/json") -- 189- ) 190: public Response validateOfflineQrCode(@Parameter(description = "Contains the Airlock 2FA OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 191- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).checkOtp(Airlock2FAOtp.airlock2FAOtp(request.getOtp())); -- 217- ) 218: @POST 219- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 220: @Path("/offline/") 221- @Operation( -- 225- ) 226: public Response switchToOffline() { 227- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).switchToOffline(); -- 242- @Deprecated 243: @POST 244- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 245: @Path("/devices/retrieve") 246- @Operation( -- 250- ) 251: public Response retrieveDeviceChoices() { 252- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).listDevices(); -- 283- ) 284: @POST 285- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 286: @Path("/devices/{id}/select") 287- @Operation( -- 291- ) 292: public Response selectDevice(@Parameter(description = "The ID of the selected Airlock 2FA device.") @PathParam("id") @Size(min = 1, max = 50) String id) { 293- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).selectDevice(Airlock2FADeviceId.airlock2FADeviceId(id)); -- 332- ) 333: @POST 334: @Path("/passcode/check") 335- @Consumes("application/json") 336- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 337: public Response checkPasscode(@Parameter(description = "Contains the passcode.") @NotNull @Valid Airlock2FAPasscodeCheckRequest request) { 338- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).checkPasscode(Airlock2FAPasscode.airlock2FAPasscode(request.getPasscode())); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/selection/TransactionApprovalInteractiveSelectionResource.java 28- 29:@Path("transaction-approval/selection") 30-public final class TransactionApprovalInteractiveSelectionResource { -- 35- @Inject 36: public TransactionApprovalInteractiveSelectionResource(FlowResultMapper mapper, InteractiveSelection selection, MapperFacade mapperFacade) { 37- this.mapper = mapper; -- 50- @Deprecated 51: @POST 52: @Path("options/retrieve") 53- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) -- 58- ) 59: public Response retrieveOptions() { 60- FlowResult result = this.selection.getOptions(); -- 87- ) 88: @POST 89: @Path("options/{id}/select") 90- @Consumes("application/json") -- 96- ) 97: public Response selectOption(@Parameter(description = "option to select.") @PathParam("id") @Size(min = 1, max = 1000) String id) { 98- FlowResult result = this.selection.select(Option.of(id)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/transactionapproval/infrastructure/resource/TransactionApprovalFlowResource.java 31- 32:@Path("/transaction-approval") 33-public final class TransactionApprovalFlowResource { -- 40- @Inject 41: public TransactionApprovalFlowResource( 42- HelpdeskLogger helpdeskLogger, -- 55- @ApiResponse(responseCode = "204", description = "Transaction Approval session successfully terminated.") 56: @DELETE 57- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 58: @Path("/flow") 59- @Operation( -- 64- @DisableResponseDelay 65: public Response abort() { 66- Optional userId = ((PrincipalInfo)this.principalInfo.get()).getKnownIdentity().map(UserIdentity::id); -- 107- ) 108: @POST 109: @Path("/flows/{flowId}/select") 110- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 111- @DisableResponseDelay 112: public Response selectFlow( 113: @Parameter(description = "the ID of the selected flow as configured.") @PathParam("flowId") @Size(min = 1, max = 30) String flowId 114- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/saml2/infrastructure/resource/Saml2SpSloResource.java 28- 29:@Path("/sp/slo") 30-public final class Saml2SpSloResource { -- 40- 41: @Path("metaAlias/{metaAlias}") 42: @GET 43- @Produces("text/html") 44- @RequiresWritableSession 45: public Response sloRequestByGet( 46- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 48- message = "{metaAlias.pattern}" 49:) @PathParam("metaAlias") String metaAlias, 50- @QueryParam("SAMLRequest") String samlRequest, -- 59- 60: @Path("metaAlias/{metaAlias}") 61: @POST 62- @Produces("text/html") 63: public Response sloRequestByPost( 64- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 66- message = "{metaAlias.pattern}" 67:) @PathParam("metaAlias") String metaAlias, 68- @FormParam("SAMLRequest") String samlRequest, -- 77- 78: @Path("continue") 79: @GET 80- @Produces("text/html") 81- @RequiresWritableSession 82: public Response continueIdpInitiatedSlo( 83- @NotNull(message = "{id.notNull}") @Size(min = 1, max = 50, message = "{id.size}") @QueryParam("id") String unverifiedSloId -- 88- 89: @Path("init") 90: @GET 91- @Produces("text/html") 92- @RequiresWritableSession 93: public Response init( 94- @NotNull(message = "{id.notNull}") @Size(min = 1, max = 50, message = "{id.size}") @QueryParam("id") String id, ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/saml2/infrastructure/resource/Saml2SpSsoResource.java 24- 25:@Path("/sp/sso") 26-public final class Saml2SpSsoResource { -- 36- 37: @Path("metaAlias/{metaAlias}") 38: @GET 39- @Produces("text/html") 40- @RequiresWritableSession 41: public Response ssoRequestByGet( 42- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 44- message = "{metaAlias.pattern}" 45:) @PathParam("metaAlias") String metaAlias 46- ) { -- 49- 50: @Path("metaAlias/{metaAlias}") 51: @POST 52- @Produces("text/html") 53: public Response ssoRequestByPost( 54- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 56- message = "{metaAlias.pattern}" 57:) @PathParam("metaAlias") String metaAlias 58- ) { -- 67- 68: @Path("init") 69: @GET 70- @RequiresWritableSession 71: public Response ssoInit(@NotNull(message = "{id.notNull}") @Size(min = 1, max = 50, message = "{id.size}") @QueryParam("id") String ssoId) { 72- ((Saml2SpInitiatedSsoService)this.spInitiatedSsoService.get()).createAuthnRequest(Saml2SpInitiatedSsoId.parseSpInitiatedSsoId(ssoId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/saml2/infrastructure/resource/Saml2IdpArtifactResolutionResource.java 15- 16:@Path("/idp/resolve-artifact") 17-public final class Saml2IdpArtifactResolutionResource { -- 24- 25: @Path("metaAlias/{metaAlias}") 26: @POST 27: public Response spInitiatedSsoByPost( 28- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 30- message = "{metaAlias.pattern}" 31:) @PathParam("metaAlias") String metaAlias, 32- InputStream is ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/saml2/infrastructure/resource/Saml2IdpSloResource.java 25- 26:@Path("/idp/slo") 27-public final class Saml2IdpSloResource { -- 42- 43: @Path("init") 44: @GET 45- @Produces("text/html") 46- @RequiresWritableSession 47: public Response sloInit( 48- @NotNull(message = "{id.notNull}") @Size(min = 36, max = 36, message = "{id.size}") @QueryParam("id") String sloIdParameter, -- 56- 57: @Path("metaAlias/{metaAlias}") 58: @GET 59- @Produces("text/html") 60- @RequiresWritableSession 61: public Response sloRedirectByGet( 62- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 64- message = "{metaAlias.pattern}" 65:) @PathParam("metaAlias") String metaAlias 66- ) { -- 69- 70: @Path("metaAlias/{metaAlias}") 71: @POST 72- @Produces("text/html") 73: public Response sloRedirectByPost( 74- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 76- message = "{metaAlias.pattern}" 77:) @PathParam("metaAlias") String metaAlias 78- ) { -- 81- 82: @Path("resume") 83: @GET 84- @Produces("text/html") 85- @RequiresWritableSession 86: public Response resumeSpInitiatedSlo(@NotNull(message = "{id.notNull}") @Size(min = 1, max = 50, message = "{id.size}") @QueryParam("id") String sloId) { 87- ((Saml2SpInitiatedResumeSloService)this.spInitiatedResumeSloService.get()).resume(Saml2SpInitiatedSloId.parseSpInitiatedSloId(sloId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/saml2/infrastructure/resource/Saml2IdpSsoResource.java 26- 27:@Path("/idp/sso") 28-public final class Saml2IdpSsoResource { -- 40- 41: @Path("metaAlias/{metaAlias}") 42: @GET 43- @Produces("text/html") 44- @RequiresWritableSession 45: public Response spInitiatedSsoByGet( 46- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 48- message = "{metaAlias.pattern}" 49:) @PathParam("metaAlias") String metaAlias 50- ) { -- 53- 54: @Path("metaAlias/{metaAlias}") 55: @POST 56- @Produces("text/html") 57: public Response spInitiatedSsoByPost( 58- @NotNull(message = "{metaAlias.notNull}") @Size(min = 1, max = 100, message = "{metaAlias.size}") @Pattern( -- 60- message = "{metaAlias.pattern}" 61:) @PathParam("metaAlias") String metaAlias 62- ) { -- 65- 66: @Path("continue") 67: @GET 68- @Produces("text/html") 69- @RequiresWritableSession 70: public Response ssoContinueEndpoint( 71- @NotNull(message = "{id.notNull}") @Size(min = 1, max = 50, message = "{id.size}") @QueryParam("id") String continuationId, ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/techclientreg/infrastructure/resource/TechClientRegInteractiveGotoResource.java 27- 28:@Path("goto-targets") 29-public final class TechClientRegInteractiveGotoResource { -- 34- @Inject 35: public TechClientRegInteractiveGotoResource(Provider interactiveGoto, FlowResultMapper mapper, MapperFacade mapperFacade) { 36- this.interactiveGoto = interactiveGoto; -- 53- ) 54: @POST 55: @Path("retrieve") 56- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 57: public Response retrieve() { 58- FlowResult result = ((InteractiveGoto)this.interactiveGoto.get()).retrieveGotoTargets(); -- 87- ) 88: @POST 89: @Path("{stepId}/goto") 90- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 91: public Response doGoto(@Parameter(description = "The goto target's step ID.") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 92- FlowResult result = ((InteractiveGoto)this.interactiveGoto.get()).doGoto(new StepId(stepId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/techclientreg/infrastructure/resource/OAuth2DynamicClientRegistrationResource.java 37- 38:@Path("oauth2/{authorizationServerId}/register") 39-public class OAuth2DynamicClientRegistrationResource { -- 45- @Inject 46: public OAuth2DynamicClientRegistrationResource( 47- MapperFacade mapper, Provider registration, Provider authorizationServerIdValidator -- 92- ) 93: @POST 94- @Consumes("application/json") 95- @Produces("application/json") 96: public Response register( 97- @Parameter(description = "Contains the client metadata to register.") @RequestBody( -- 105-) @NotNull @Valid OAuth2ClientRegistrationRequestContainer request, 106: @Parameter(description = "The identifier of the authorization server to register with.") @PathParam("authorizationServerId") String authorizationServerId 107- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/techclientreg/infrastructure/resource/TechClientRegDynamicStepActivationResource.java 27- 28:@Path("dynamic-steps") 29-public final class TechClientRegDynamicStepActivationResource { -- 34- @Inject 35: public TechClientRegDynamicStepActivationResource(Provider dynamicActivation, FlowResultMapper mapper, MapperFacade mapperFacade) { 36- this.dynamicActivation = dynamicActivation; -- 53- ) 54: @POST 55: @Path("retrieve") 56- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 57: public Response retrieve() { 58- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).retrieveDynamicStepActivationInformation(); -- 87- ) 88: @POST 89: @Path("{stepId}/activate") 90- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 91: public Response activate(@Parameter(description = "The ID of the step to be activated.") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 92- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).activateStep(new StepId(stepId)); -- 120- ) 121: @POST 122: @Path("{stepId}/deactivate") 123- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 124: public Response deactivate(@Parameter(description = "The ID of the step to be deactivated") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 125- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).deactivateStep(new StepId(stepId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceInteractiveGotoResource.java 27- 28:@Path("goto-targets") 29-public final class PublicSelfServiceInteractiveGotoResource { -- 34- @Inject 35: public PublicSelfServiceInteractiveGotoResource(Provider interactiveGoto, FlowResultMapper mapper, MapperFacade mapperFacade) { 36- this.interactiveGoto = interactiveGoto; -- 56- ) 57: @POST 58: @Path("retrieve") 59- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 60: public Response retrieve() { 61- FlowResult result = ((InteractiveGoto)this.interactiveGoto.get()).retrieveGotoTargets(); -- 90- ) 91: @POST 92: @Path("{stepId}/goto") 93- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 94: public Response doGoto(@Parameter(description = "The goto target's step ID.") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 95- FlowResult result = ((InteractiveGoto)this.interactiveGoto.get()).doGoto(new StepId(stepId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceEmailOtpResource.java 24- 25:@Path("/verification/email") 26-public class PublicSelfServiceEmailOtpResource { -- 30- @Inject 31: public PublicSelfServiceEmailOtpResource(FlowResultMapper mapper, Provider emailVerification) { 32- this.mapper = mapper; -- 68- ) 69: @Path("otp/check") 70: @POST 71- @Consumes("application/json") 72- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 73: public Response verifyEmailOtp(@Parameter(description = "Contains the OTP to be verified.") @NotNull @Valid GenericOtpCheckRequest request) { 74- FlowResult result = ((EmailIdentityVerification)this.emailVerification.get()).verifyEmailOtp(UnverifiedOtp.unverifiedOtp(request.getOtp())); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceFlowResource.java 31- 32:@Path("/") 33-public final class PublicSelfServiceFlowResource { -- 40- @Inject 41: public PublicSelfServiceFlowResource( 42- HelpdeskLogger helpdeskLogger, -- 60- ) 61: @DELETE 62- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 63: @Path("/flow") 64- @DisableResponseDelay 65- @DisableSystemAvailabilityCheck 66: public Response abort() { 67- Optional userId = ((PrincipalInfo)this.principalInfo.get()).getKnownIdentity().map(UserIdentity::id); -- 115- ) 116: @POST 117: @Path("/flows/{flowId}/select") 118- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 119- @DisableResponseDelay 120: public Response selectFlow( 121: @Parameter(description = "the ID of the selected flow as configured.") @PathParam("flowId") @Size(min = 1, max = 30) String flowId 122- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServicMatrixApprovalResource.java 29- 30:@Path("/approval/matrix") 31-public final class PublicSelfServicMatrixApprovalResource { -- 35- @Inject 36: public PublicSelfServicMatrixApprovalResource(Provider resultMapper, Provider matrixAuthentication) { 37- this.resultMapper = resultMapper; -- 54- ) 55: @POST 56- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 57: @Path("challenge/retrieve") 58: public Response retrieveChallenge() { 59- FlowResult result = ((MatrixCheck)this.matrixAuthentication.get()).getCurrentChallenge(); -- 95- ) 96: @POST 97: @Path("check") 98- @Consumes("application/json") 99- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 100: public Response checkMtanOtp(@Parameter(description = "Contains the challenge response(s).") @NotNull @Valid MatrixChallengeCheckRequest request) { 101- List challengeResponses = new ArrayList<>(); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceCrontoApprovalResource.java 38- 39:@Path("/approval/cronto") 40-public class PublicSelfServiceCrontoApprovalResource { -- 45- @Inject 46: public PublicSelfServiceCrontoApprovalResource(FlowResultMapper mapper, MapperFacade mapperFacade, Provider crontoAuthentication) { 47- this.mapper = mapper; -- 61- @Operation( 62: description = "> [!caution]\n> This endpoint is deprecated. The challenge information is returned as additional attribute\nwith the CRONTO_OTP_REQUIRED next step code.\n

Returns a challenge for Cronto public self-service.

\n

The challenge is delivered as a base64-encoded image ('cryptogram') and as a string representation for\napp-to-app authentication.

\n

\nThe two attributes \"onlineValidation\" and \"pushed\" have only informative character and indicate\nthe recommended behavior for clients:\n

    \n
  • If the \"onlineValidation\" attribute is true, the client application should not ask the user for the\nresponse OTP, as the app will send the response directly to the server (Scan&Login or Push use-cases).\nInstead, the client application should regularly poll (POST /cronto/otp/poll) to check if a response\nhas been received. There should be an option for the user to fall back to entering the OTP manually. Sending the\nmanually entered OTP to (POST /cronto/otp/check) cancels the online validation
  • \n
  • If also the \"pushed\" attribute is true, the challenge has been pushed to a Cronto app. In this case also\nthe cryptogram should not be displayed. Instead, the user should be informed about this and asked to confirm\nthe transaction on their Cronto app. Again, a fallback for offline situations should be available.\nIf \"pushed\" is true, \"onlineValidation\" is always also true.
  • \n
\n

\n
A Cronto challenge.
", 63- tags = "Cronto", -- 65- ) 66: @POST 67- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 68: @Path("/challenge/retrieve") 69: public Response retrieveChallenge() { 70- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).getCurrentChallenge(); -- 115- ) 116: @POST 117: @Path("/otp/check") 118- @Consumes("application/json") 119- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 120: public Response checkCrontoOtp(@Parameter(description = "Contains the Cronto OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 121- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).checkOtp(new CrontoOtp(request.getOtp())); -- 157- ) 158: @POST 159: @Path("/otp/poll") 160- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 161: public Response pollOnlineValidation( 162- @Parameter( -- 183- ) 184: @POST 185- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 186: @Path("/push-devices/retrieve") 187: public Response retrievePushDeviceChoices() { 188- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).getPushDeviceChoices(); -- 217- ) 218: @POST 219- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 220: @Path("/offline/") 221: public Response selectOfflineAuthentication() { 222- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).selectOfflineAuthentication(); -- 258- ) 259: @POST 260- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 261: @Path("/push-devices/{id}/select") 262: public Response selectPushDevice(@Parameter(description = "The ID of the selected push device.") @PathParam("id") @Size(min = 1, max = 50) String id) { 263- FlowResult result = ((CrontoAuthentication)this.crontoAuthentication.get()).selectPushDevice(id); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceSsiResource.java 22- 23:@Path("/ssi") 24-public class PublicSelfServiceSsiResource { -- 28- @Inject 29: public PublicSelfServiceSsiResource(FlowResultMapper mapper, Provider ssi) { 30- this.mapper = mapper; -- 37- responseCode = "200", 38: description = "Verification not yet completed (retry later), public self-service successful or further steps required.\n
Possible next step: SSI_PROOF_VERIFICATION_REQUIRED (as documented here).\n", 39- content = { -- 59- ) 60: @POST 61: @Path("/verification/poll") 62- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 63: public Response pollProofVerification( 64- @Parameter( ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceUserIdentificationResource.java 31- 32:@Path("/") 33-public class PublicSelfServiceUserIdentificationResource { -- 39- @Inject 40: public PublicSelfServiceUserIdentificationResource( 41- Provider identification, Provider flowResultMapper, Provider errorMapper -- 73- ) 74: @POST 75: @Path("username/identify") 76- @Consumes("application/json") 77- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 78: public Response identifyUserDeprecated(@Parameter(description = "Contains the username.") @NotNull @Valid IdentifyUserRequest request) { 79- return this.identifyUser(request.getUsername(), null); -- 114- ) 115: @POST 116: @Path("user/identify") 117- @Consumes("application/json") 118- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 119: public Response identifyUser(@Parameter(description = "Contains the username.") @NotNull @Valid UserIdentificationRequest request) { 120- return this.identifyUser(request.getUsername(), request.getData()); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceAcknowledgeMessageFlowResource.java 18- 19:@Path("/message") 20-public class PublicSelfServiceAcknowledgeMessageFlowResource { -- 24- @Inject 25: public PublicSelfServiceAcknowledgeMessageFlowResource(Provider flow, FlowResultMapper mapper) { 26- this.flow = flow; -- 42- ) 43: @POST 44: @Path("/acknowledge") 45- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 46: public Response acknowledgeMessageId() { 47- FlowResult result = ((Flow)this.flow.get()).execute(AcknowledgeMessageStep::acknowledge, AcknowledgeMessageStep.class); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceOathOtpApprovalResource.java 25- 26:@Path("/approval/oath") 27-public class PublicSelfServiceOathOtpApprovalResource { -- 32- @Inject 33: public PublicSelfServiceOathOtpApprovalResource(FlowResultMapper mapper, Provider oathAuthentication) { 34- this.mapper = mapper; -- 62- ) 63: @POST 64: @Path("/otp/check") 65- @Consumes("application/json") 66- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 67: public Response checkOathOtp( 68- @RequestBody( ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceFidoApprovalResource.java 29- 30:@Path("/approval/fido") 31-public class PublicSelfServiceFidoApprovalResource { -- 37- @Inject 38: public PublicSelfServiceFidoApprovalResource(@NonNull Provider fidoAuthentication, @NonNull FlowResultMapper mapper) { 39- if (fidoAuthentication == null) { -- 67- ) 68: @POST 69: @Path("/challenge/retrieve") 70- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 71: public Response retrieveAuthenticationChallenge() { 72- FlowResult result = ((FidoCheck)this.fidoAuthentication.get()).retrieveAuthenticationChallenge(); -- 108- ) 109: @POST 110: @Path("/assertion-response/check") 111- @Consumes("application/json") 112- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 113: public Response verify( 114- @Parameter(description = "Contains the FIDO authenticator's response to the previously obtained challenge.") @NotNull @Valid FidoAuthenticationPublicKeyCredentialRequest request -- 161- ) 162: @POST 163: @Path("/failure/report") 164- @Consumes("application/json") 165- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 166: public Response handleClientFailure( 167- @Parameter(description = "Contains information (name and message) describing the failure.") @Valid @NotNull FidoClientFailureRequest request ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceSecretQuestionsResource.java 34- 35:@Path("/verification/secret-questions") 36-public class PublicSelfServiceSecretQuestionsResource { -- 41- @Inject 42: public PublicSelfServiceSecretQuestionsResource( 43- FlowResultMapper mapper, MapperFacade mapperFacade, Provider mtanVerification -- 66- ) 67: @Path("retrieve") 68: @POST 69- @Consumes("application/json") 70- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 71: public Response retrieveQuestions() { 72- FlowResult result = ((SecretQuestionsIdentityVerification)this.secretQuestionsCheck.get()).retrieveQuestions(); -- 119- ) 120: @Path("answer") 121: @POST 122- @Consumes("application/json") 123- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 124: public Response verifySecretQuestions( 125- @Parameter(description = "Contains the answers to be verified.") @NotNull @Valid SecretQuestionsVerificationRequest request ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceInteractiveSelectionResource.java 28- 29:@Path("selection") 30-public final class PublicSelfServiceInteractiveSelectionResource { -- 35- @Inject 36: public PublicSelfServiceInteractiveSelectionResource(Provider selection, FlowResultMapper mapper, MapperFacade mapperFacade) { 37- this.selection = selection; -- 55- ) 56: @POST 57: @Path("options/retrieve") 58- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 59: public Response retrieveOptions() { 60- FlowResult result = ((InteractiveSelection)this.selection.get()).getOptions(); -- 89- ) 90: @POST 91: @Path("options/{id}/select") 92- @Consumes("application/json") 93- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 94: public Response selectOption(@Parameter(description = "option to select.") @PathParam("id") @Size(min = 1, max = 1000) String id) { 95- FlowResult result = ((InteractiveSelection)this.selection.get()).select(Option.of(id)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceDynamicStepActivationResource.java 27- 28:@Path("dynamic-steps") 29-public final class PublicSelfServiceDynamicStepActivationResource { -- 34- @Inject 35: public PublicSelfServiceDynamicStepActivationResource(Provider dynamicActivation, FlowResultMapper mapper, MapperFacade mapperFacade) { 36- this.dynamicActivation = dynamicActivation; -- 56- ) 57: @POST 58: @Path("retrieve") 59- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 60: public Response retrieve() { 61- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).retrieveDynamicStepActivationInformation(); -- 90- ) 91: @POST 92: @Path("{stepId}/activate") 93- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 94: public Response activate(@Parameter(description = "The ID of the step to be activated.") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 95- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).activateStep(new StepId(stepId)); -- 123- ) 124: @POST 125: @Path("{stepId}/deactivate") 126- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 127: public Response deactivate(@Parameter(description = "The ID of the step to be deactivated") @PathParam("stepId") @Size(min = 1, max = 30) String stepId) { 128- FlowResult result = ((DynamicStepActivation)this.dynamicActivation.get()).deactivateStep(new StepId(stepId)); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceMtanOtpResource.java 24- 25:@Path("/verification/mtan") 26-public class PublicSelfServiceMtanOtpResource { -- 30- @Inject 31: public PublicSelfServiceMtanOtpResource(FlowResultMapper mapper, Provider mtanVerification) { 32- this.mapper = mapper; -- 68- ) 69: @Path("otp/check") 70: @POST 71- @Consumes("application/json") 72- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 73: public Response verifyMtanOtp(@Parameter(description = "Contains the OTP to be verified.") @NotNull @Valid GenericOtpCheckRequest request) { 74- FlowResult result = ((MtanIdentityVerification)this.mtanVerification.get()).verifyMtanOtp(UnverifiedOtp.unverifiedOtp(request.getOtp())); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceVascoOtpApprovalResource.java 24- 25:@Path("/approval/vasco") 26-public class PublicSelfServiceVascoOtpApprovalResource { -- 30- @Inject 31: public PublicSelfServiceVascoOtpApprovalResource(FlowResultMapper mapper, Provider vascoOtpAuthentication) { 32- this.mapper = mapper; -- 60- ) 61: @POST 62: @Path("/otp/check") 63- @Consumes("application/json") 64- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 65: public Response checkVascoOtp(@Parameter(description = "Request containing the Vasco OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 66- FlowResult result = ((VascoOtpAuthentication)this.vascoOtpAuthentication.get()).checkOtp(UnverifiedOtp.unverifiedOtp(request.getOtp())); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceSetPasswordResource.java 29- 30:@Path("/password") 31-public class PublicSelfServiceSetPasswordResource { -- 36- @Inject 37: public PublicSelfServiceSetPasswordResource( 38- Provider passwordReset, FlowResultMapper mapper, Provider stepErrorResultMapper -- 77- ) 78: @POST 79: @Path("/set") 80- @Consumes("application/json") 81- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 82: public Response setPassword(@Parameter(description = "Contains the new password.") @NotNull @Valid SetPasswordRequest request) { 83- FlowResult result = ((PasswordReset)this.passwordReset.get()).setPassword(PasswordImpl.passwordOf(request.getNewPassword())); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceDeviceTokenFlowResource.java 27- 28:@Path("/device-token") 29-public class PublicSelfServiceDeviceTokenFlowResource { -- 33- @Inject 34: public PublicSelfServiceDeviceTokenFlowResource(FlowResultMapper mapper, Provider deviceTokenVerification) { 35- this.mapper = mapper; -- 54- ) 55: @POST 56- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 57: @Path("/{deviceTokenId}/challenge/retrieve") 58: public Response retrieveChallenge( 59: @Parameter(description = "The ID of the client device token.") @PathParam("deviceTokenId") @Size(min = 1, max = 50) String deviceTokenId 60- ) { -- 89- ) 90: @POST 91: @Path("/check") 92- @Consumes("application/json") 93- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 94: public Response checkJwt(@Parameter(description = "The JWT to be verified.") @NotNull @Valid DeviceTokenResponseCheckRequest request) { 95- FlowResult result = ((DeviceTokenVerification)this.deviceTokenVerification.get()).checkJwt(request.getJwt()); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceMtanApprovalResource.java 39- 40:@Path("/approval/mtan") 41-public class PublicSelfServiceMtanApprovalResource { -- 47- @Inject 48: public PublicSelfServiceMtanApprovalResource(FlowResultMapper mapper, MapperFacade mapperFacade, Provider mtanAuthentication) { 49- this.mapper = mapper; -- 86- ) 87: @POST 88: @Path("/otp/check") 89- @Consumes("application/json") 90- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 91: public Response checkMtanOtp(@Parameter(description = "Request containing the mTAN OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 92- FlowResult result = ((MtanOtpCheck)this.mtanAuthentication.get()).checkOtp(UnverifiedOtp.unverifiedOtp(request.getOtp())); -- 109- ) 110: @POST 111- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 112: @Path("/tokens/retrieve") 113: public Response retrieveMtanTokens() { 114- FlowResult result = ((MtanOtpCheck)this.mtanAuthentication.get()).getNumberChoice(); -- 165- ) 166: @POST 167- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 168: @Path("/tokens/{id}/select") 169: public Response selectMtanToken(@Parameter(description = "the ID of the selected mTAN token.") @PathParam("id") @Size(min = 1, max = 50) String id) { 170- FlowResult selectResult = ((MtanOtpCheck)this.mtanAuthentication.get()).selectMtanToken(id); -- 220- ) 221: @POST 222- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 223: @Path("/otp/resend") 224: public Response resendMtanOtp() { 225- FlowResult resendResult = ((MtanOtpCheck)this.mtanAuthentication.get()).resendOtp(); -- 245- ) 246: @POST 247- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 248: @Path("/otp/resend-info/retrieve") 249: public Response retrieveResendInfo() { 250- FlowResult resendPossibleResult = ((MtanOtpCheck)this.mtanAuthentication.get()).resendOtpPossible(); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceUiConfigurationResource.java 23- 24:@Path("/ui") 25-public class PublicSelfServiceUiConfigurationResource { -- 29- @Inject 30: public PublicSelfServiceUiConfigurationResource(Provider service, RestMapper mapper) { 31- this.service = service; -- 35- @Operation(extensions = @Extension(properties = @ExtensionProperty(name = "x-internal", value = "true"))) 36: @GET 37: @Path("/on-completed/{flowId}") 38- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 39- @RequiresWritableSession 40: public Response getOnCompletedInfo(@PathParam("flowId") @Size(min = 1, max = 30) String id) { 41- FlowId flowId = new FlowId(id); -- 46- @Operation(extensions = @Extension(properties = @ExtensionProperty(name = "x-internal", value = "true"))) 47: @GET 48: @Path("/on-failure/{flowId}") 49- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 50- @RequiresWritableSession 51: public Response getOnFailureInfo(@PathParam("flowId") @Size(min = 1, max = 30) String id) { 52- FlowId flowId = new FlowId(id); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/publicselfservice/infrastructure/resource/PublicSelfServiceAirlock2FAApprovalResource.java 39- 40:@Path("/approval/airlock-2fa") 41-public class PublicSelfServiceAirlock2FAApprovalResource { -- 46- @Inject 47: public PublicSelfServiceAirlock2FAApprovalResource( 48- @NotNull Provider messageApproval, @NotNull FlowResultMapper mapper, @NotNull MapperFacade mapperFacade -- 79- ) 80: @POST 81: @Path("/status/poll") 82- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 83: public Response pollOnlineValidation( 84- @Parameter( -- 108- ) 109: @POST 110- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 111: @Path("/offline-qr-code/challenge/retrieve") 112: public Response retrieveOfflineQrCodeChallenge() { 113- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).retrieveOfflineQrCode(); -- 136- ) 137: @POST 138- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 139: @Path("/mobile-only/challenge/retrieve/") 140: public Response retrieveMobileOnlyChallenge() { 141- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).retrieveMobileOnlyChallenge(); -- 177- ) 178: @POST 179: @Path("/offline-qr-code/otp/check") 180- @Consumes("application/json") 181- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 182: public Response validateOfflineQrCode(@Parameter(description = "Contains the Airlock 2FA OTP.") @NotNull @Valid GenericOtpCheckRequest request) { 183- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).checkOtp(Airlock2FAOtp.airlock2FAOtp(request.getOtp())); -- 211- ) 212: @POST 213- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 214: @Path("/offline/") 215: public Response switchToOffline() { 216- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).switchToOffline(); -- 233- ) 234: @POST 235- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 236: @Path("/devices/retrieve") 237: public Response retrieveDeviceChoices() { 238- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).listDevices(); -- 271- ) 272: @POST 273- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 274: @Path("/devices/{id}/select") 275: public Response selectDevice(@Parameter(description = "The ID of the selected Airlock 2FA device.") @PathParam("id") @Size(min = 1, max = 50) String id) { 276- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).selectDevice(Airlock2FADeviceId.airlock2FADeviceId(id)); -- 312- ) 313: @POST 314: @Path("/passcode/check") 315- @Consumes("application/json") 316- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 317: public Response checkPasscode(@Parameter(description = "Contains the passcode.") @NotNull @Valid Airlock2FAPasscodeCheckRequest request) { 318- FlowResult result = ((Airlock2FAApproval)this.messageApproval.get()).checkPasscode(Airlock2FAPasscode.airlock2FAPasscode(request.getPasscode())); ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/v3/OAuth2AuthorizationEndpointResource.java 26- 27:@Path("/{authorizationServerId}/authorize") 28-public class OAuth2AuthorizationEndpointResource { -- 32- @Inject 33: public OAuth2AuthorizationEndpointResource( 34- Provider authorizationEndpointService, Provider authorizationServerIdValidator -- 64- ) 65: @GET 66- @Operation( -- 73- @RequiresWritableSession 74: public Response authorizationEndpoint( 75: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 76- @Parameter(description = "Refer to the referenced RFCs in the use-case table above to see which query parameters must be provided.") @QueryParam( ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/v3/OAuth2CheckSessionEndpointResource.java 22- 23:@Path("/{authorizationServerId}/check-session") 24-public class OAuth2CheckSessionEndpointResource { -- 28- @Inject 29: public OAuth2CheckSessionEndpointResource( 30- Provider checkSessionEndpointService, Provider authorizationServerIdValidator -- 60- ) 61: @GET 62- @Operation( -- 68- @Produces("text/html") 69: public Response checkSessionEndpoint( 70: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId 71- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2JwksResource.java 29- 30:@Path("/authorization-servers/{authorizationServerId}/jwks") 31-public class OAuth2JwksResource { -- 38- @Inject 39: public OAuth2JwksResource( 40- Provider jwksSetExtractor, -- 72- ) 73: @GET 74- @Operation( -- 81- @RequiresWritableSession 82: public Response jwks( 83- @Context ContainerRequestContext requestContext, 84: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId 85- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2CurrentSessionResource.java 49- 50:@Path("/authorization-servers/{authorizationServerId}/session") 51-public class OAuth2CurrentSessionResource { -- 64- @Inject 65: public OAuth2CurrentSessionResource( 66- Provider sessionManagementEndpointAvailability, -- 127- ) 128: @GET 129- @Operation( -- 135- @RequiresWritableSession 136: public Response retrieveSession(@Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId) { 137- ((AuthorizationServerIdValidator)this.authorizationServerIdValidator.get()).validateAuthorizationServer(authorizationServerId); -- 181- ) 182: @PATCH 183: @Path("/custom-attributes") 184- @Operation( -- 190- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 191: public Response updateSession( 192: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 193- @NotNull @Valid @RequestBody( ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2SessionResource.java 33- 34:@Path("/authorization-servers/{authorizationServerId}/sessions/{sessionId}") 35-public class OAuth2SessionResource { -- 43- @Inject 44: public OAuth2SessionResource( 45- Provider sessionManagementEndpointAvailability, -- 81- ) 82: @DELETE 83- @Operation( -- 88- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 89: public Response deleteSession( 90: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 91: @Parameter(description = "The session ID.") @PathParam("sessionId") @Size(min = 1, max = 1000) String sessionId 92- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OpenIdConnectUserInfoEndpointResource.java 34- 35:@Path("/authorization-servers/{authorizationServerId}/userinfo") 36-public class OpenIdConnectUserInfoEndpointResource { -- 44- @Inject 45: public OpenIdConnectUserInfoEndpointResource( 46- Provider userInfoAvailability, -- 83- ) 84: @GET 85- @Operation( -- 92- @RequiresWritableSession 93: public Response retrieveResourceUsingGet( 94: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId 95- ) { -- 117- ) 118: @POST 119- @Operation( -- 125- @DisableCsrfFilter 126: public Response retrieveResourceUsingPost( 127: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId 128- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2DiscoveryEndpointResource.java 31- 32:@Path("/authorization-servers/{authorizationServerId}/.well-known/openid-configuration") 33-public class OAuth2DiscoveryEndpointResource { -- 40- @Inject 41: public OAuth2DiscoveryEndpointResource( 42- Provider discoveryEndpointAvailability, -- 66- ) 67: @GET 68- @Operation( -- 75- @RequiresWritableSession 76: public Response discoveryEndpoint( 77- @Context ContainerRequestContext requestContext, 78: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId 79- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OpenIdConnectSessionManagementResource.java 33- 34:@Path("/authorization-servers/{authorizationServerId}/check-origin") 35-public final class OpenIdConnectSessionManagementResource { -- 41- @Inject 42: public OpenIdConnectSessionManagementResource( 43- RestMapper restMapper, -- 88- ) 89: @POST 90- @Consumes("application/json") 91- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 92: public Response checkOrigin( 93: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 94- @Parameter(description = "Contains the origin to be verified.") @NotNull @Valid OpenIdConnectCheckOriginRequest request ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2TokenEndpointResource.java 25- 26:@Path("/authorization-servers/{authorizationServerId}/token") 27-public class OAuth2TokenEndpointResource { -- 32- @Inject 33: public OAuth2TokenEndpointResource( 34- Provider tokenEndpointService, -- 63- ) 64: @POST 65- @Operation( -- 79- @DisableCsrfFilter 80: public Response tokenEndpoint( 81: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 82- MultivaluedMap formParams ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2SessionsResource.java 50- 51:@Path("/authorization-servers/{authorizationServerId}/sessions") 52-public class OAuth2SessionsResource { -- 66- @Inject 67: public OAuth2SessionsResource( 68- Provider sessionManagementEndpointAvailability, -- 127- ) 128: @GET 129- @Operation( -- 135- @RequiresWritableSession 136: public Response retrieveSessions( 137: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 138- @Parameter(description = "Allows filtering the sessions by client ID. See examples for more details.") @BeanParam DocumentedFilterParameter filterParameter -- 184- ) 185: @DELETE 186- @Operation( -- 191- @Produces({"application/vnd.api+json", "application/json;qs=0.9"}) 192: public Response deleteAllSessions( 193: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 194- @Parameter(description = "Restricts the sessions to be deleted.") @BeanParam DocumentedFilterParameter filterParameter ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2TokenIntrospectionResource.java 34- 35:@Path("/authorization-servers/{authorizationServerId}/introspect") 36-public class OAuth2TokenIntrospectionResource { -- 43- @Inject 44: public OAuth2TokenIntrospectionResource( 45- Provider tokenIntrospectionAuthService, -- 80- ) 81: @POST 82- @Operation( -- 89- @DisableCsrfFilter 90: public Response introspect( 91: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 92- @Parameter(description = "The access or refresh token (mandatory).") @FormParam("token") @Size(min = 1, max = 10000) String token, ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2TokenRevocationResource.java 37- 38:@Path("/authorization-servers/{authorizationServerId}/revoke") 39-public class OAuth2TokenRevocationResource { -- 46- @Inject 47: public OAuth2TokenRevocationResource( 48- Provider> service, -- 87- ) 88: @POST 89- @Operation( -- 96- @DisableCsrfFilter 97: public Response revoke( 98: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 99- @Parameter(description = "The access or refresh token.", required = true) @FormParam("token") String token, ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2ParEndpointResource.java 35- 36:@Path("/authorization-servers/{authorizationServerId}/par") 37-public class OAuth2ParEndpointResource { -- 41- @Inject 42: public OAuth2ParEndpointResource( 43- Provider parEndpointService, Provider authorizationServerIdValidator -- 73- ) 74: @POST 75- @Operation( -- 90- @DisableCsrfFilter 91: public Response parEndpoint( 92: @Parameter(description = "The authorization server ID") @PathParam("authorizationServerId") String authorizationServerId, 93- @FormParam("client_id") String clientId, ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2MetadataEndpointResource.java 31- 32:@Path("/authorization-servers/{authorizationServerId}/.well-known/oauth-authorization-server") 33-public class OAuth2MetadataEndpointResource { -- 40- @Inject 41: public OAuth2MetadataEndpointResource( 42- Provider metadataEndpointAvailability, -- 78- ) 79: @GET 80- @Operation( -- 87- @RequiresWritableSession 88: public Response metadataEndpoint( 89- @Context ContainerRequestContext requestContext, 90: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId 91- ) { ### work/source-derived/airlock-iam-8.6.1/decompiled/com/airlock/iam/oauth2/infrastructure/resource/rest/OAuth2ResourceEndpointResource.java 37- 38:@Path("/authorization-servers/{authorizationServerId}/resources/{resourceName}") 39-public class OAuth2ResourceEndpointResource { -- 47- @Inject 48: public OAuth2ResourceEndpointResource( 49- Provider resourceAvailability, -- 86- ) 87: @GET 88- @Operation( -- 95- @RequiresWritableSession 96: public Response retrieveResourceUsingGet( 97: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 98: @Parameter(description = "The name to the resource.") @PathParam("resourceName") String resourceName 99- ) { -- 122- ) 123: @POST 124- @Operation( -- 130- @DisableCsrfFilter 131: public Response retrieveResourceUsingPost( 132: @Parameter(description = "The authorization server ID.") @PathParam("authorizationServerId") String authorizationServerId, 133: @Parameter(description = "The name to the resource.") @PathParam("resourceName") @Size(min = 1, max = 10000) String resourceName 134- ) {