feat(fullstack): Add JWT validation

This commit is contained in:
2025-04-26 17:39:20 +02:00
parent 28954f7c2e
commit 667aab1f36
7 changed files with 84 additions and 5 deletions

View File

@@ -12,7 +12,7 @@ export function useApplicationFormApi() {
)
const applicationFormApiClient = new ApplicationFormApi(
new Configuration({ basePath, headers: { Authorization: jwt.value ?? '' } })
new Configuration({ basePath, headers: { Authorization: jwt.value ? `Bearer ${jwt.value}` : '' } })
)
async function createApplicationForm(

View File

@@ -5,12 +5,15 @@ import { cleanDoubleSlashes, withoutTrailingSlash } from 'ufo'
export function useApplicationFormTemplateApi() {
const appBaseUrl = useRuntimeConfig().app.baseURL
const { serverApiBaseUrl, serverApiBasePath, clientProxyBasePath } = useRuntimeConfig().public
const { jwt } = useAuth()
const basePath = withoutTrailingSlash(
cleanDoubleSlashes(import.meta.client ? appBaseUrl + clientProxyBasePath : serverApiBaseUrl + serverApiBasePath)
)
const applicationFormApiClient = new ApplicationFormTemplateApi(new Configuration({ basePath }))
const applicationFormApiClient = new ApplicationFormTemplateApi(
new Configuration({ basePath, headers: { Authorization: jwt.value ? `Bearer ${jwt.value}` : '' } })
)
async function createApplicationFormTemplate(
createApplicationFormDto: CreateApplicationFormDto

View File

@@ -7,7 +7,17 @@ export const auth = betterAuth({
database: new Database('./sqlite.db'),
emailAndPassword: { enabled: true, autoSignIn: false },
plugins: [
jwt(),
jwt({
jwt: {
issuer: 'http://192.168.178.105:3001'
},
jwks: {
keyPairConfig: {
// Supported by NimbusJwtDecoder
alg: 'ES512'
}
}
}),
organization({
async sendInvitationEmail(data) {
console.log('Sending invitation email', data)