- Introduced a detailed view for OIDC apps (`show` page) with client credentials and sign-out URI management. - Added functionality to toggle app status, generate new client secrets, and display OAuth scopes. - Implemented service methods for handling OIDC app data, including `getPassportClient`, `generateNewSecret`, and `toggleStatus`. - Enhanced feature tests for role-based access and validation of client secret generation.
50 lines
2.2 KiB
PHP
50 lines
2.2 KiB
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
use App\Enums\ConnectionProtocolEnum;
|
|
use App\Enums\Permissions\{AppPermissionEnum, ConnectionProviderPermissionEnum};
|
|
use Illuminate\Support\Facades\Route;
|
|
use Spatie\Permission\Middleware\PermissionMiddleware;
|
|
|
|
Route::prefix('apps')->name('apps.')->group(function (): void {
|
|
Route::livewire('microsoft-federation', 'pages::connecton-providers.microsoft-federation')
|
|
->middleware(PermissionMiddleware::using(ConnectionProviderPermissionEnum::Access))
|
|
->name('microsoft-federation');
|
|
|
|
Route::middleware(PermissionMiddleware::using(AppPermissionEnum::Access))->group(function (): void {
|
|
Route::middleware(PermissionMiddleware::using(AppPermissionEnum::Create))->group(function (): void {
|
|
Route::prefix(ConnectionProtocolEnum::OIDC->value)
|
|
->name(ConnectionProtocolEnum::OIDC->value.'.')
|
|
->group(function (): void {
|
|
Route::livewire('create', 'pages::apps.oidc.create')->name('create');
|
|
});
|
|
Route::prefix(ConnectionProtocolEnum::URL->value)
|
|
->name(ConnectionProtocolEnum::URL->value.'.')
|
|
->group(function (): void {
|
|
Route::livewire('create', 'pages::apps.url.create')->name('create');
|
|
});
|
|
});
|
|
|
|
Route::livewire(
|
|
'{id}/edit',
|
|
'pages::apps.edit'
|
|
)->middleware(PermissionMiddleware::using(AppPermissionEnum::Update))->name('edit');
|
|
|
|
Route::livewire(
|
|
'oidc/{id}/view',
|
|
'pages::apps.oidc.show'
|
|
)->middleware(PermissionMiddleware::using(AppPermissionEnum::Read))->name('oidc.show');
|
|
|
|
Route::livewire('/', 'pages::apps.index')->name('index');
|
|
});
|
|
|
|
Route::prefix('connection-providers')->name('connectionProviders.')
|
|
->middleware(PermissionMiddleware::using(ConnectionProviderPermissionEnum::Access))
|
|
->group(function (): void {
|
|
Route::livewire('create', 'pages::connecton-providers.create')->name('create');
|
|
Route::livewire('{slug}/edit', 'pages::connecton-providers.edit')->name('edit');
|
|
Route::livewire('index', 'pages::connecton-providers.index')->name('index');
|
|
});
|
|
});
|