feat(auth): admin OIDC settings page
New admin page /settings/oidc to configure the OIDC provider (issuer, client id/secret, redirect/callback URL, scopes, post-login redirect). Prominently shows the callback URL to register at the IdP, current status/source, and the read-only deploy-level OIDC-only flag. Secret is write-only (blank = keep). Sidebar entry for admins. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -21,6 +21,7 @@ import CalendarPage from '@/pages/CalendarPage'
|
||||
import SupportDetailPage from '@/pages/SupportDetailPage'
|
||||
import MeetingDetailPage from '@/pages/MeetingDetailPage'
|
||||
import OidcCallbackPage from '@/pages/OidcCallbackPage'
|
||||
import OidcSettingsPage from '@/pages/OidcSettingsPage'
|
||||
import axios from 'axios'
|
||||
|
||||
const getStoredWizardPort = (): number | null => {
|
||||
@@ -135,6 +136,7 @@ export default function App() {
|
||||
<Route path="/roles" element={<RoleEditorPage />} />
|
||||
<Route path="/users" element={<UsersPage />} />
|
||||
<Route path="/monitor" element={<MonitorPage />} />
|
||||
<Route path="/settings/oidc" element={<OidcSettingsPage />} />
|
||||
<Route path="/oidc/callback" element={<OidcCallbackPage onToken={loginWithToken} />} />
|
||||
<Route path="*" element={<Navigate to="/" />} />
|
||||
</Routes>
|
||||
|
||||
Reference in New Issue
Block a user