From 53e5a449d447551049e8915e92c11b14fecb7b76 Mon Sep 17 00:00:00 2001 From: Mouriya Date: Mon, 19 Aug 2024 11:21:24 +0900 Subject: [PATCH 01/12] =?UTF-8?q?=E3=82=B0=E3=83=AD=E3=83=BC=E3=83=90?= =?UTF-8?q?=E3=83=AB=E8=AA=8D=E8=A8=BC=E7=8A=B6=E6=85=8B=E3=81=ABpermissio?= =?UTF-8?q?n=E6=83=85=E5=A0=B1=E3=82=92=E8=BF=BD=E5=8A=A0?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/stores/useAuthStore.ts | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/frontend/src/stores/useAuthStore.ts b/frontend/src/stores/useAuthStore.ts index 16f6ffc..73fe7c3 100644 --- a/frontend/src/stores/useAuthStore.ts +++ b/frontend/src/stores/useAuthStore.ts @@ -9,6 +9,7 @@ export interface IUserState { currentDomain: IDomainInfo; LeftDrawer: boolean; userId?: string; + permissions: 'admin'|'user'; } export const useAuthStore = defineStore('auth', { @@ -18,6 +19,7 @@ export const useAuthStore = defineStore('auth', { LeftDrawer: false, currentDomain: {} as IDomainInfo, userId: '', + permissions: 'user' }), getters: { toggleLeftDrawer(): boolean { @@ -36,7 +38,9 @@ export const useAuthStore = defineStore('auth', { const result = await api.post(`api/token`, params); console.info(result); this.token = result.data.access_token; - this.userId = jwtDecode(result.data.access_token).sub; + const tokenJson = jwtDecode(result.data.access_token) + this.userId = tokenJson.sub; + this.permissions = (tokenJson as any).permissions ?? 'user'; api.defaults.headers['Authorization'] = 'Bearer ' + this.token; this.currentDomain = await this.getCurrentDomain(); router.push(this.returnUrl || '/'); From cca7a1ba22c50abb687838def77cd21d4b6e7b33 Mon Sep 17 00:00:00 2001 From: Mouriya Date: Mon, 19 Aug 2024 11:56:17 +0900 Subject: [PATCH 02/12] =?UTF-8?q?=E3=83=A6=E3=83=BC=E3=82=B6=E3=83=BC?= =?UTF-8?q?=E3=83=89=E3=83=A1=E3=82=A4=E3=83=B3=E3=83=9A=E3=83=BC=E3=82=B8?= =?UTF-8?q?=E3=82=92=E6=9C=80=E9=81=A9=E5=8C=96=E3=81=97=E3=81=BE=E3=81=97?= =?UTF-8?q?=E3=81=9F=20:=20=E3=83=9A=E3=83=BC=E3=82=B8=E3=83=8D=E3=83=BC?= =?UTF-8?q?=E3=82=B7=E3=83=A7=E3=83=B3=E3=82=92=E7=84=A1=E9=99=90=E5=A4=A7?= =?UTF-8?q?=E3=81=AB=E8=A8=AD=E5=AE=9A=E3=81=97=E3=80=81=E4=BB=AE=E6=83=B3?= =?UTF-8?q?=E3=83=AA=E3=82=B9=E3=83=88=E3=82=92=E6=9C=89=E5=8A=B9=E3=81=AB?= =?UTF-8?q?=E3=81=97=E3=81=BE=E3=81=97=E3=81=9F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- frontend/src/pages/UserDomain.vue | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/frontend/src/pages/UserDomain.vue b/frontend/src/pages/UserDomain.vue index 39406a4..519cd31 100644 --- a/frontend/src/pages/UserDomain.vue +++ b/frontend/src/pages/UserDomain.vue @@ -1,7 +1,7 @@