Añade a la aplicación el control de acceso basado en roles mediante guardias. Introduce guardias de acceso, administración, grupo y rol para la protección de rutas. Actualiza la barra lateral para incluir elementos de menú basados en roles. Configura el cliente Keycloak para incluir información de grupo en el token de acceso, habilitando la autorización basada en grupos. Añade la página de acceso denegado.
25 lines
674 B
TypeScript
25 lines
674 B
TypeScript
import { Component } from '@angular/core';
|
|
import { CommonModule } from '@angular/common';
|
|
import { RouterModule } from '@angular/router';
|
|
import { DirectAuthService } from '../../services/direct-auth.service';
|
|
|
|
@Component({
|
|
selector: 'app-sidebar',
|
|
standalone: true,
|
|
imports: [CommonModule, RouterModule],
|
|
templateUrl: './sidebar.component.html',
|
|
styleUrls: ['./sidebar.component.scss']
|
|
})
|
|
export class SidebarComponent {
|
|
isRolesMenuOpen = false;
|
|
|
|
constructor(private authService: DirectAuthService) {}
|
|
|
|
toggleRolesMenu() {
|
|
this.isRolesMenuOpen = !this.isRolesMenuOpen;
|
|
}
|
|
|
|
getCurrentUser() {
|
|
return this.authService.getCurrentUser();
|
|
}
|
|
} |