Merge pull request 'Fix 403 errors' (#12) from backend-test into main
Reviewed-on: #12 Reviewed-by: adnane <adnane.alami@bordeaux-inp.fr> Reviewed-by: omar <omar.el_alaoui_el_ismaili@bordeaux-inp.fr> Reviewed-by: Theo <tlelez@enseirb-matmeca.fr> Reviewed-by: anas <anas.maillal@bordeaux-inp.fr>
This commit is contained in:
commit
d9aaa225aa
1
Makefile
1
Makefile
@ -2,6 +2,7 @@ help:
|
|||||||
@echo "make [clean dev-front prod dev-back dev]"
|
@echo "make [clean dev-front prod dev-back dev]"
|
||||||
|
|
||||||
clean:
|
clean:
|
||||||
|
pkill -9 node
|
||||||
@cp config/frontdev.env front/MyINPulse-front/.env
|
@cp config/frontdev.env front/MyINPulse-front/.env
|
||||||
@cp config/frontdev.env .env
|
@cp config/frontdev.env .env
|
||||||
@cp config/frontdev.env MyINPulse-back/.env
|
@cp config/frontdev.env MyINPulse-back/.env
|
||||||
|
@ -56,12 +56,18 @@ public class WebSecurityCustomConfiguration {
|
|||||||
http.authorizeHttpRequests(
|
http.authorizeHttpRequests(
|
||||||
authorize ->
|
authorize ->
|
||||||
authorize
|
authorize
|
||||||
.requestMatchers("/entrepreneur/**", "/shared/**")
|
.requestMatchers("/entrepreneur/**")
|
||||||
.access(hasRole("REALM_MyINPulse-entrepreneur"))
|
.access(hasRole("REALM_MyINPulse-entrepreneur"))
|
||||||
.requestMatchers("/admin/**", "/shared/**")
|
.requestMatchers("/admin/**")
|
||||||
.access(hasRole("REALM_MyINPulse-admin"))
|
.access(hasRole("REALM_MyINPulse-admin"))
|
||||||
|
.requestMatchers("/shared/**")
|
||||||
|
.hasAnyRole(
|
||||||
|
"REALM_MyINPulse-admin",
|
||||||
|
"REALM_MyINPulse-entrepreneur")
|
||||||
.requestMatchers("/unauth/**")
|
.requestMatchers("/unauth/**")
|
||||||
.authenticated())
|
.authenticated()
|
||||||
|
.anyRequest()
|
||||||
|
.denyAll())
|
||||||
.oauth2ResourceServer(
|
.oauth2ResourceServer(
|
||||||
oauth2 ->
|
oauth2 ->
|
||||||
oauth2.jwt(
|
oauth2.jwt(
|
||||||
|
@ -1,6 +1,6 @@
|
|||||||
spring.application.name=myinpulse
|
spring.application.name=myinpulse
|
||||||
spring.security.oauth2.resourceserver.jwt.jwk-set-uri=http://localhost:7080/realms/test/protocol/openid-connect/certs
|
spring.security.oauth2.resourceserver.jwt.jwk-set-uri=http://localhost:7080/realms/${VITE_KEYCLOAK_REALM}/protocol/openid-connect/certs
|
||||||
spring.security.oauth2.resourceserver.jwt.issuer-uri=http://localhost:7080/realms/test
|
spring.security.oauth2.resourceserver.jwt.issuer-uri=http://localhost:7080/realms/${VITE_KEYCLOAK_REALM}
|
||||||
spring.datasource.url=jdbc:postgresql://${DATABASE_URL}/${BACKEND_DB}
|
spring.datasource.url=jdbc:postgresql://${DATABASE_URL}/${BACKEND_DB}
|
||||||
spring.datasource.username=${BACKEND_USER}
|
spring.datasource.username=${BACKEND_USER}
|
||||||
spring.datasource.password=${BACKEND_PASSWORD}
|
spring.datasource.password=${BACKEND_PASSWORD}
|
||||||
|
@ -16,7 +16,7 @@ BACKEND_PASSWORD=backend_db_user_password
|
|||||||
DATABASE_URL=localhost:5433
|
DATABASE_URL=localhost:5433
|
||||||
|
|
||||||
VITE_KEYCLOAK_URL=http://localhost:7080
|
VITE_KEYCLOAK_URL=http://localhost:7080
|
||||||
VITE_KEYCLOAK_CLIENT_ID=myinpulse-dev
|
VITE_KEYCLOAK_CLIENT_ID=MyINPulse-vite
|
||||||
VITE_KEYCLOAK_REALM=test
|
VITE_KEYCLOAK_REALM=MyINPulse
|
||||||
VITE_APP_URL=http://localhost:5173
|
VITE_APP_URL=http://localhost:5173
|
||||||
VITE_BACKEND_URL=http://localhost:8081/
|
VITE_BACKEND_URL=http://localhost:8081/
|
||||||
|
@ -22,6 +22,8 @@ paths:
|
|||||||
description: Bad Request - Invalid project data provided (e.g., missing required fields).
|
description: Bad Request - Invalid project data provided (e.g., missing required fields).
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized - Authentication required or invalid token.
|
description: Unauthorized - Authentication required or invalid token.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
post:
|
post:
|
||||||
operationId: addProjectManually
|
operationId: addProjectManually
|
||||||
@ -49,6 +51,8 @@ paths:
|
|||||||
description: Bad Request - Project already exists.
|
description: Bad Request - Project already exists.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
|
|
||||||
/admin/projects/pending:
|
/admin/projects/pending:
|
||||||
@ -70,7 +74,9 @@ paths:
|
|||||||
items:
|
items:
|
||||||
$ref: "./main.yaml#/components/schemas/project" # Assuming pending projects use the same schema
|
$ref: "./main.yaml#/components/schemas/project" # Assuming pending projects use the same schema
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
/admin/request-join:
|
/admin/request-join:
|
||||||
get:
|
get:
|
||||||
@ -92,6 +98,8 @@ paths:
|
|||||||
$ref: "./main.yaml#/components/schemas/joinRequest"
|
$ref: "./main.yaml#/components/schemas/joinRequest"
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
/admin/request-join/decision/{joinRequestId}:
|
/admin/request-join/decision/{joinRequestId}:
|
||||||
post:
|
post:
|
||||||
@ -121,7 +129,9 @@ paths:
|
|||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid input (e.g., missing decision).
|
description: Bad Request - Invalid input (e.g., missing decision).
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
|
|
||||||
/admin/projects/pending/decision:
|
/admin/projects/pending/decision:
|
||||||
@ -150,6 +160,8 @@ paths:
|
|||||||
description: Bad Request - Invalid input (e.g., missing decision).
|
description: Bad Request - Invalid input (e.g., missing decision).
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
|
|
||||||
/admin/pending-accounts: # Path updated
|
/admin/pending-accounts: # Path updated
|
||||||
@ -172,6 +184,8 @@ paths:
|
|||||||
$ref: "./main.yaml#/components/schemas/user-entrepreneur"
|
$ref: "./main.yaml#/components/schemas/user-entrepreneur"
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
/admin/accounts/validate/{userId}:
|
/admin/accounts/validate/{userId}:
|
||||||
post: # Changed to POST as it changes state
|
post: # Changed to POST as it changes state
|
||||||
@ -195,7 +209,8 @@ paths:
|
|||||||
description: No Content - Account validated successfully.
|
description: No Content - Account validated successfully.
|
||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid user ID format.
|
description: Bad Request - Invalid user ID format.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
|
||||||
@ -217,6 +232,8 @@ paths:
|
|||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
$ref: "./main.yaml#/components/schemas/appointment"
|
$ref: "./main.yaml#/components/schemas/appointment"
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"404":
|
"404":
|
||||||
description: no appointments found.
|
description: no appointments found.
|
||||||
"401":
|
"401":
|
||||||
@ -254,6 +271,8 @@ paths:
|
|||||||
schema: { $ref: "./main.yaml#/components/schemas/report" }
|
schema: { $ref: "./main.yaml#/components/schemas/report" }
|
||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid input (e.g., missing content, invalid appointment ID format).
|
description: Bad Request - Invalid input (e.g., missing content, invalid appointment ID format).
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
|
||||||
@ -288,6 +307,8 @@ paths:
|
|||||||
schema: { $ref: "./main.yaml#/components/schemas/report" }
|
schema: { $ref: "./main.yaml#/components/schemas/report" }
|
||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid input (e.g., missing content).
|
description: Bad Request - Invalid input (e.g., missing content).
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
|
||||||
@ -314,6 +335,8 @@ paths:
|
|||||||
description: No Content - Project removed successfully.
|
description: No Content - Project removed successfully.
|
||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid project ID format.
|
description: Bad Request - Invalid project ID format.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
|
||||||
@ -340,7 +363,9 @@ paths:
|
|||||||
"200": # Use 200 No Content
|
"200": # Use 200 No Content
|
||||||
description: No Content - Admin rights granted successfully.
|
description: No Content - Admin rights granted successfully.
|
||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid user ID format or user is already an admin.
|
description: Bad Request - Invalid user ID format or user is already an admin.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
|
||||||
@ -357,4 +382,6 @@ paths:
|
|||||||
"200":
|
"200":
|
||||||
description: No Content - Admin user created successfully.
|
description: No Content - Admin user created successfully.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
@ -257,6 +257,8 @@ paths:
|
|||||||
description: Bad Request - Problem processing the token or user data derived from it.
|
description: Bad Request - Problem processing the token or user data derived from it.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized - Valid authentication token required.
|
description: Unauthorized - Valid authentication token required.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/unauth/request-join/{projectId}':
|
'/unauth/request-join/{projectId}':
|
||||||
post:
|
post:
|
||||||
summary: Request to join an existing project
|
summary: Request to join an existing project
|
||||||
@ -278,6 +280,8 @@ paths:
|
|||||||
description: Bad Request - Invalid project ID format
|
description: Bad Request - Invalid project ID format
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'409':
|
'409':
|
||||||
description: Already member/request pending.
|
description: Already member/request pending.
|
||||||
/admin/pending-accounts:
|
/admin/pending-accounts:
|
||||||
@ -301,6 +305,8 @@ paths:
|
|||||||
$ref: '#/components/schemas/user-entrepreneur'
|
$ref: '#/components/schemas/user-entrepreneur'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/admin/accounts/validate/{userId}':
|
'/admin/accounts/validate/{userId}':
|
||||||
post:
|
post:
|
||||||
operationId: validateUserAccount
|
operationId: validateUserAccount
|
||||||
@ -326,6 +332,8 @@ paths:
|
|||||||
description: Bad Request - Invalid user ID format.
|
description: Bad Request - Invalid user ID format.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/admin/request-join:
|
/admin/request-join:
|
||||||
get:
|
get:
|
||||||
operationId: getPendingProjects
|
operationId: getPendingProjects
|
||||||
@ -347,6 +355,8 @@ paths:
|
|||||||
$ref: '#/components/schemas/joinRequest'
|
$ref: '#/components/schemas/joinRequest'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/admin/request-join/decision/{joinRequestId}':
|
'/admin/request-join/decision/{joinRequestId}':
|
||||||
post:
|
post:
|
||||||
summary: Approve or reject a pending project join request
|
summary: Approve or reject a pending project join request
|
||||||
@ -376,6 +386,8 @@ paths:
|
|||||||
description: 'Bad Request - Invalid input (e.g., missing decision).'
|
description: 'Bad Request - Invalid input (e.g., missing decision).'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/admin/projects:
|
/admin/projects:
|
||||||
get:
|
get:
|
||||||
operationId: getAdminProjects
|
operationId: getAdminProjects
|
||||||
@ -399,6 +411,8 @@ paths:
|
|||||||
description: 'Bad Request - Invalid project data provided (e.g., missing required fields).'
|
description: 'Bad Request - Invalid project data provided (e.g., missing required fields).'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized - Authentication required or invalid token.
|
description: Unauthorized - Authentication required or invalid token.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
post:
|
post:
|
||||||
operationId: addProjectManually
|
operationId: addProjectManually
|
||||||
summary: Manually add a new project
|
summary: Manually add a new project
|
||||||
@ -424,6 +438,8 @@ paths:
|
|||||||
$ref: '#/components/schemas/project'
|
$ref: '#/components/schemas/project'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'409':
|
'409':
|
||||||
description: Bad Request - Project already exists.
|
description: Bad Request - Project already exists.
|
||||||
/admin/projects/pending:
|
/admin/projects/pending:
|
||||||
@ -447,6 +463,8 @@ paths:
|
|||||||
$ref: '#/components/schemas/project'
|
$ref: '#/components/schemas/project'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/admin/projects/pending/decision:
|
/admin/projects/pending/decision:
|
||||||
post:
|
post:
|
||||||
operationId: decidePendingProject
|
operationId: decidePendingProject
|
||||||
@ -474,6 +492,8 @@ paths:
|
|||||||
description: 'Bad Request - Invalid input (e.g., missing decision).'
|
description: 'Bad Request - Invalid input (e.g., missing decision).'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/admin/appointments/report/{appointmentId}':
|
'/admin/appointments/report/{appointmentId}':
|
||||||
post:
|
post:
|
||||||
operationId: createAppointmentReport
|
operationId: createAppointmentReport
|
||||||
@ -510,6 +530,8 @@ paths:
|
|||||||
description: 'Bad Request - Invalid input (e.g., missing content, invalid appointment ID format).'
|
description: 'Bad Request - Invalid input (e.g., missing content, invalid appointment ID format).'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
put:
|
put:
|
||||||
operationId: updateAppointmentReport
|
operationId: updateAppointmentReport
|
||||||
summary: Update an existing appointment report
|
summary: Update an existing appointment report
|
||||||
@ -545,6 +567,8 @@ paths:
|
|||||||
description: 'Bad Request - Invalid input (e.g., missing content).'
|
description: 'Bad Request - Invalid input (e.g., missing content).'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/admin/appointments/upcoming:
|
/admin/appointments/upcoming:
|
||||||
get:
|
get:
|
||||||
operationId: getUpcomingAppointments
|
operationId: getUpcomingAppointments
|
||||||
@ -566,6 +590,8 @@ paths:
|
|||||||
$ref: '#/components/schemas/appointment'
|
$ref: '#/components/schemas/appointment'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'404':
|
'404':
|
||||||
description: no appointments found.
|
description: no appointments found.
|
||||||
'/admin/projects/{projectId}':
|
'/admin/projects/{projectId}':
|
||||||
@ -593,6 +619,8 @@ paths:
|
|||||||
description: Bad Request - Invalid project ID format.
|
description: Bad Request - Invalid project ID format.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/admin/make-admin/{userId}':
|
'/admin/make-admin/{userId}':
|
||||||
post:
|
post:
|
||||||
operationId: grantAdminRights
|
operationId: grantAdminRights
|
||||||
@ -618,6 +646,8 @@ paths:
|
|||||||
description: Bad Request - Invalid user ID format or user is already an admin.
|
description: Bad Request - Invalid user ID format or user is already an admin.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/admin/create-account:
|
/admin/create-account:
|
||||||
post:
|
post:
|
||||||
summary: Creates Admin out Jwt Token
|
summary: Creates Admin out Jwt Token
|
||||||
@ -632,6 +662,8 @@ paths:
|
|||||||
description: No Content - Admin user created successfully.
|
description: No Content - Admin user created successfully.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/shared/projects/sectionCells/{projectId}/{sectionId}/{date}':
|
'/shared/projects/sectionCells/{projectId}/{sectionId}/{date}':
|
||||||
get:
|
get:
|
||||||
operationId: getSectionCellsByDate
|
operationId: getSectionCellsByDate
|
||||||
@ -676,6 +708,8 @@ paths:
|
|||||||
description: Bad Request - Invalid parameter format.
|
description: Bad Request - Invalid parameter format.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/shared/projects/entrepreneurs/{projectId}':
|
'/shared/projects/entrepreneurs/{projectId}':
|
||||||
get:
|
get:
|
||||||
operationId: getProjectEntrepreneurs
|
operationId: getProjectEntrepreneurs
|
||||||
@ -706,7 +740,7 @@ paths:
|
|||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
'403':
|
'403':
|
||||||
description: Forbidden - User does not have access to this project.
|
description: Forbidden - User does not have access to this project or invalid Keycloack configuration.
|
||||||
'404':
|
'404':
|
||||||
description: Not Found - Project not found.
|
description: Not Found - Project not found.
|
||||||
'/shared/projects/admin/{projectId}':
|
'/shared/projects/admin/{projectId}':
|
||||||
@ -737,7 +771,7 @@ paths:
|
|||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
'403':
|
'403':
|
||||||
description: Forbidden - User does not have access to this project.
|
description: Forbidden - User does not have access to this project or invalid Keycloack configuration.
|
||||||
'404':
|
'404':
|
||||||
description: Not Found - Project not found.
|
description: Not Found - Project not found.
|
||||||
'/shared/projects/appointments/{projectId}':
|
'/shared/projects/appointments/{projectId}':
|
||||||
@ -769,6 +803,8 @@ paths:
|
|||||||
$ref: '#/components/schemas/appointment'
|
$ref: '#/components/schemas/appointment'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/shared/appointments/report/{appointmentId}':
|
'/shared/appointments/report/{appointmentId}':
|
||||||
get:
|
get:
|
||||||
operationId: getAppointmentReport
|
operationId: getAppointmentReport
|
||||||
@ -798,6 +834,8 @@ paths:
|
|||||||
format: binary
|
format: binary
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/shared/appointments/request:
|
/shared/appointments/request:
|
||||||
post:
|
post:
|
||||||
operationId: requestAppointment
|
operationId: requestAppointment
|
||||||
@ -823,6 +861,8 @@ paths:
|
|||||||
description: Bad Request - Invalid appointment details.
|
description: Bad Request - Invalid appointment details.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/entrepreneur/projects:
|
/entrepreneur/projects:
|
||||||
get:
|
get:
|
||||||
summary: gets the projectId of the project associated with the entrepreneur
|
summary: gets the projectId of the project associated with the entrepreneur
|
||||||
@ -844,6 +884,8 @@ paths:
|
|||||||
$ref: '#/components/schemas/project'
|
$ref: '#/components/schemas/project'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized or identity not found
|
description: Unauthorized or identity not found
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'404':
|
'404':
|
||||||
description: Bad Request - Invalid input or ID mismatch.
|
description: Bad Request - Invalid input or ID mismatch.
|
||||||
/entrepreneur/projects/request:
|
/entrepreneur/projects/request:
|
||||||
@ -873,6 +915,8 @@ paths:
|
|||||||
description: 'Bad Request - Invalid input (e.g., missing name).'
|
description: 'Bad Request - Invalid input (e.g., missing name).'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/entrepreneur/sectionCells:
|
/entrepreneur/sectionCells:
|
||||||
post:
|
post:
|
||||||
operationId: addSectionCell
|
operationId: addSectionCell
|
||||||
@ -897,6 +941,8 @@ paths:
|
|||||||
description: 'Bad Request - Invalid input (e.g., missing content or sectionId).'
|
description: 'Bad Request - Invalid input (e.g., missing content or sectionId).'
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'/entrepreneur/sectionCells/{sectionCellId}':
|
'/entrepreneur/sectionCells/{sectionCellId}':
|
||||||
put:
|
put:
|
||||||
operationId: modifySectionCell
|
operationId: modifySectionCell
|
||||||
@ -927,6 +973,8 @@ paths:
|
|||||||
description: OK - Section cell updated successfully. Returns the updated cell.
|
description: OK - Section cell updated successfully. Returns the updated cell.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'404':
|
'404':
|
||||||
description: Bad Request - Invalid input or ID mismatch.
|
description: Bad Request - Invalid input or ID mismatch.
|
||||||
delete:
|
delete:
|
||||||
@ -953,5 +1001,7 @@ paths:
|
|||||||
description: Bad Request - Invalid ID format.
|
description: Bad Request - Invalid ID format.
|
||||||
'401':
|
'401':
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
'403':
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
'404':
|
'404':
|
||||||
description: Bad Request - sectionCell not found.
|
description: Bad Request - sectionCell not found.
|
||||||
|
@ -27,6 +27,8 @@ paths:
|
|||||||
description: Bad Request - Invalid input (e.g., missing name).
|
description: Bad Request - Invalid input (e.g., missing name).
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
/entrepreneur/sectionCells: # Base path
|
/entrepreneur/sectionCells: # Base path
|
||||||
post:
|
post:
|
||||||
@ -52,6 +54,8 @@ paths:
|
|||||||
description: Bad Request - Invalid input (e.g., missing content or sectionId).
|
description: Bad Request - Invalid input (e.g., missing content or sectionId).
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
/entrepreneur/sectionCells/{sectionCellId}:
|
/entrepreneur/sectionCells/{sectionCellId}:
|
||||||
put:
|
put:
|
||||||
@ -84,6 +88,8 @@ paths:
|
|||||||
description: Bad Request - Invalid input or ID mismatch.
|
description: Bad Request - Invalid input or ID mismatch.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
delete:
|
delete:
|
||||||
operationId: removeSectionCell
|
operationId: removeSectionCell
|
||||||
@ -110,6 +116,8 @@ paths:
|
|||||||
description: Bad Request - sectionCell not found.
|
description: Bad Request - sectionCell not found.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
|
|
||||||
/entrepreneur/projects:
|
/entrepreneur/projects:
|
||||||
@ -133,4 +141,6 @@ paths:
|
|||||||
"404":
|
"404":
|
||||||
description: Bad Request - Invalid input or ID mismatch.
|
description: Bad Request - Invalid input or ID mismatch.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized or identity not found
|
description: Unauthorized or identity not found
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
@ -36,7 +36,9 @@ paths:
|
|||||||
items:
|
items:
|
||||||
$ref: "./main.yaml#/components/schemas/sectionCell"
|
$ref: "./main.yaml#/components/schemas/sectionCell"
|
||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid parameter format.
|
description: Bad Request - Invalid parameter format.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
|
||||||
@ -68,7 +70,7 @@ paths:
|
|||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
"403":
|
"403":
|
||||||
description: Forbidden - User does not have access to this project.
|
description: Forbidden - User does not have access to this project or invalid Keycloack configuration.
|
||||||
"404":
|
"404":
|
||||||
description: Not Found - Project not found.
|
description: Not Found - Project not found.
|
||||||
|
|
||||||
@ -97,7 +99,7 @@ paths:
|
|||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
"403":
|
"403":
|
||||||
description: Forbidden - User does not have access to this project.
|
description: Forbidden - User does not have access to this project or invalid Keycloack configuration.
|
||||||
"404":
|
"404":
|
||||||
description: Not Found - Project not found.
|
description: Not Found - Project not found.
|
||||||
|
|
||||||
@ -126,6 +128,8 @@ paths:
|
|||||||
type: array
|
type: array
|
||||||
items:
|
items:
|
||||||
$ref: "./main.yaml#/components/schemas/appointment"
|
$ref: "./main.yaml#/components/schemas/appointment"
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
|
||||||
@ -156,6 +160,8 @@ paths:
|
|||||||
format: binary
|
format: binary
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
||||||
|
|
||||||
/shared/appointments/request:
|
/shared/appointments/request:
|
||||||
@ -180,7 +186,8 @@ paths:
|
|||||||
description: Accepted - Appointment request submitted.
|
description: Accepted - Appointment request submitted.
|
||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid appointment details.
|
description: Bad Request - Invalid appointment details.
|
||||||
|
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
|
|
@ -24,6 +24,8 @@ paths:
|
|||||||
description: Bad Request - Problem processing the token or user data derived from it.
|
description: Bad Request - Problem processing the token or user data derived from it.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized - Valid authentication token required.
|
description: Unauthorized - Valid authentication token required.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/unauth/request-join/{projectId}:
|
/unauth/request-join/{projectId}:
|
||||||
post:
|
post:
|
||||||
summary: Request to join an existing project
|
summary: Request to join an existing project
|
||||||
@ -47,6 +49,8 @@ paths:
|
|||||||
description: Already member/request pending.
|
description: Already member/request pending.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
||||||
/unauth/request-admin-role:
|
/unauth/request-admin-role:
|
||||||
post:
|
post:
|
||||||
summary: Request to join an existing project
|
summary: Request to join an existing project
|
||||||
@ -59,4 +63,6 @@ paths:
|
|||||||
"400":
|
"400":
|
||||||
description: Bad Request - Invalid project ID format or already member/request pending.
|
description: Bad Request - Invalid project ID format or already member/request pending.
|
||||||
"401":
|
"401":
|
||||||
description: Unauthorized.
|
description: Unauthorized.
|
||||||
|
"403":
|
||||||
|
description: Bad Token - Invalid Keycloack configuration.
|
@ -58,7 +58,7 @@ const USERID = ref("");
|
|||||||
<tr>
|
<tr>
|
||||||
<td>Get Pending Accounts</td>
|
<td>Get Pending Accounts</td>
|
||||||
<td>
|
<td>
|
||||||
<button @click="callApi('admin/get_pending_accounts')">
|
<button @click="callApi('/admin/pending-accounts')">
|
||||||
call
|
call
|
||||||
</button>
|
</button>
|
||||||
</td>
|
</td>
|
||||||
|
2638
keycloak/realm.json
Normal file
2638
keycloak/realm.json
Normal file
File diff suppressed because it is too large
Load Diff
Loading…
x
Reference in New Issue
Block a user