42 lines
1.6 KiB
PowerShell
42 lines
1.6 KiB
PowerShell
# Keycloak - Lire les rôles et la config du realm unionflow
|
|
# Usage: .\keycloak_get_roles.ps1
|
|
# Prérequis: Keycloak sur http://localhost:8180, admin/admin
|
|
|
|
$baseUrl = 'http://localhost:8180'
|
|
$body = @{
|
|
username = 'admin'
|
|
password = 'admin'
|
|
grant_type = 'password'
|
|
client_id = 'admin-cli'
|
|
}
|
|
|
|
Write-Host "1. Obtention du token admin (realm master)..." -ForegroundColor Cyan
|
|
try {
|
|
$tokenResponse = Invoke-RestMethod -Uri "$baseUrl/realms/master/protocol/openid-connect/token" -Method Post -Body $body -ContentType 'application/x-www-form-urlencoded'
|
|
$token = $tokenResponse.access_token
|
|
Write-Host " Token obtenu (expire dans $($tokenResponse.expires_in) s)" -ForegroundColor Green
|
|
} catch {
|
|
Write-Host " Erreur: $_" -ForegroundColor Red
|
|
exit 1
|
|
}
|
|
|
|
Write-Host "`n2. Rôles du realm unionflow:" -ForegroundColor Cyan
|
|
try {
|
|
$roles = Invoke-RestMethod -Uri "$baseUrl/admin/realms/unionflow/roles" -Headers @{ Authorization = "Bearer $token" }
|
|
$roles | ForEach-Object { Write-Host " - $($_.name)" }
|
|
if (-not $roles) { Write-Host " (aucun rôle ou realm inexistant)" -ForegroundColor Yellow }
|
|
} catch {
|
|
Write-Host " Erreur: $_" -ForegroundColor Red
|
|
}
|
|
|
|
Write-Host "`n3. Config du realm unionflow (realm, displayName):" -ForegroundColor Cyan
|
|
try {
|
|
$realm = Invoke-RestMethod -Uri "$baseUrl/admin/realms/unionflow" -Headers @{ Authorization = "Bearer $token" }
|
|
Write-Host " realm: $($realm.realm)"
|
|
Write-Host " displayName: $($realm.displayName)"
|
|
} catch {
|
|
Write-Host " Erreur: $_" -ForegroundColor Red
|
|
}
|
|
|
|
Write-Host "`nTerminé." -ForegroundColor Green
|