|
|
Keycloak plugin for Vue3 and Composition API
Install the keycloak-js package , jwt-decode to decode the jwt token and our wrapper library.
npm install keycloak-js jwt-decode @baloise/vue-keycloak
import { createApp } from 'vue'
import { vueKeycloak } from '@baloise/vue-keycloak'
import App from './app/App.vue'
createApp(App).use(vueKeycloak, {
init: {
flow: 'standard', // default
checkLoginIframe: false, // default
onLoad: 'login-required', // default
}
config: {
url: 'http://keycloak-server/auth',
realm: 'myrealm',
clientId: 'myapp'
}
}).mount('#app')
import { computed, defineComponent } from 'vue'
import { useKeycloak } from '@baloise/vue-keycloak'
export default defineComponent({
setup() {
const { hasRole, isPending } = useKeycloak()
const hasAccess = computed(() => hasRole('RoleName'))
return {
hasAccess,
}
},
})