functions/azure/Get-ScopeFromEndpoint.ps1
function Get-ScopeFromEndpoint { [CmdletBinding()] param ( [Parameter(Mandatory = $true)] [string]$Endpoint ) $hostname = ([uri]$Endpoint).Host.ToLower() switch -Wildcard ($hostname) { "graph.microsoft.com" { return "https://graph.microsoft.com/.default" } "graph.windows.net" { return "https://graph.windows.net/.default" } # Veraltet (Azure AD Graph) "management.azure.com" { return "https://management.azure.com/.default" } "*.vault.azure.net" { return "https://vault.azure.net/.default" } "*.blob.core.windows.net" { return "https://storage.azure.com/.default" } "*.queue.core.windows.net" { return "https://storage.azure.com/.default" } "*.table.core.windows.net" { return "https://storage.azure.com/.default" } "*.file.core.windows.net" { return "https://storage.azure.com/.default" } "*.database.windows.net" { return "https://database.windows.net/.default" } "*.servicebus.windows.net" { return "https://servicebus.azure.net/.default" } "*.eventgrid.azure.net" { return "https://eventgrid.azure.net/.default" } "api.loganalytics.io" { return "https://api.loganalytics.io/.default" } "api.security.microsoft.com" { return "https://api.security.microsoft.com/.default" } "outlook.office365.com" { return "https://outlook.office365.com/.default" } "analysis.windows.net" { return "https://analysis.windows.net/powerbi/api/.default" } "api.powerbi.com" { return "https://analysis.windows.net/powerbi/api/.default" } "*.azure-devices.net" { return "https://iothubs.azure.net/.default" } "*.azurewebsites.net" { return "https://management.azure.com/.default" } # i.d.R. ARM gesteuert "*.digitaltwins.azure.net" { return "https://digitaltwins.azure.net/.default" } default { Write-Warning "Unbekannter API-Endpunkt: $hostname" return $null } } } |