End of Support für APIs von Azure AD Graph

Microsoft hat angekündigt den Support für die APIs von Azure AD Graph einzustellen. Ab dem Zeitpunkt liefern die APIs keine Daten mehr aus. Entwickler und Administratoren müssen ihre Applikationen auf die APIs von Microsoft Graph anpassen.

Microsoft führt zwei Zeitpunkte auf:

Ab 30. Juni 2020

We will no longer add any new features to ADAL and Azure AD Graph. We will continue to provide technical support and security updates but will no longer provide feature updates.

Ab 30. Juni 2022

We will end support for ADAL and Azure AD Graph and will no longer provide technical support or security updates. Apps using Azure AD Graph after this time will no longer receive responses from the Azure AD Graph endpoint….

**************
Update vom 20. März 2022:
Die Abkündigung für 30. Juni wurde zumindest bis Ende Dezember 2022 verschoben. Microsoft informiert zu einem späteren Zeitpunkt über weitere Daten.
**************

Unternehmen sollten darauf achten ob sie in ihrem Tenant eine Nachricht über das Supportende erhalten. Ist es so greift eine der bestehenden Applikationen auf die APIs von Azure AD Graph zu. Hier findest du einen Leitfaden über erforderliche Schritte für die Migration von Azure AD Graph zu Microsoft Graph APIs. Gehst du den Leitfaden durch wirst du erkennen zwischen den APIs von Azure AD und Microsoft Graph ist vieles identisch. Ein Unterschied ist wie es für eine App möglich ist einen Token für die Authentifizierung zu beziehen.

  • Für Azure AD Graph über https://graph.windows.net
  • Für Microsoft Graph über https://graph.microsoft.com

Wenn du in Azure AD in deinen App Registrations die Berechtigungen prüfst wird dir ganz unten bei Legacy APIs die API von Azure AD Graph auffallen.

Was du ausserdem wissen solltest, eine Enterprise App kann von externen Entwicklern stammen. In der Praxis kann es dadurch interne und externe Apps betreffen. In meinem Beispiel probierte ich vor langer Zeit eine externe App aus. Die Berechtigungen zeigen die App verwendet Azure AD Graph für die Anmeldung.

So eine App ist ab 30. Juni 2022 betroffen. Wird die App vom Entwickler nicht angepasst kann es sich in Zukunft bald nicht mehr anmelden, oder andere Daten über diese API beziehen. Achte aber darauf, manche Apps nutzen beide APIs. Hier am Beispiel einer OneNote App. Die App verwendet sowohl die alte wie neue API zur Anmeldung.

Da du es kennst welche API betroffen ist kannst du über einen Filter betroffene Apps abfragen. Du benötigst das PowerShell Modul für Azure AD.

  • Jede Berechtigung einer App ist einer Resource zugeordnet. Die Resource ist in dem Fall die API von Windows Azure AD.
  • Du musst die Resource ID der Windows Azure AD API kennen.
$AzureADGraphSPID = (Get-AzureADServicePrincipal | ?{$_.displayname -eq "Windows Azure Active Directory" }).ObjectId
  • Die Resource ist der Azure App zugeordnet. Es geht nicht in einem Schritt die Resource einer App abzufragen.
  • Um die Resource und damit alle Berechtigungen einer App auszulesen benötigst du das PowerShell Command Get-AzureADServicePrincipalOAuth2PermissionGrant.

Mit all den Angaben ist es einfach die Filterung vorzunehmen. Du kannst ein ForEach über jede App laufen lassen das prüft ob Berechtigungen für Windows Azure AD vorhanden sind und damit betroffene Apps auflisten. Hier ein Beispiel das du weiter verarbeiten kannst.

$AzureADGraphSPID = (Get-AzureADServicePrincipal | ?{$_.displayname -eq "Windows Azure Active Directory" }).ObjectId
$AllEnterpriseApps = Get-AzureADServicePrincipal -All:$true
$AllAzureADGraphApps = @()

$Count = 1
foreach($App in $AllEnterpriseApps )
{   Write-Host ($App.DisplayName + " - $Count of " + $AllEnterpriseApps.Count + "...")
	$SPPermission = Get-AzureADServicePrincipalOAuth2PermissionGrant -ObjectId $App.ObjectId
	if($SPPermission.Count -ne 0)
	{   if($SPPermission.ResourceId.Contains($AzureADGraphSPID))
		{ $AllAzureADGraphApps += $App.DisplayName }
	}
$Count++
}

$AllAzureADGraphApps

Über einen Support Case könntest du bei Microsoft weitere Unterstützung zur Migration anfordern.

Share
Avatar-Foto

Tobias Asböck

Tobias ist ein Senior System Engineer mit rund 10 Jahren Berufserfahrung für Microsoft 365 Produkte wie SharePoint Online, OneDrive for Business, Teams Collaboration, Entra ID, Information Protection, Universal Print und Microsoft 365 Lizenzierung. Aus der Vergangenheit kennt er über einen Zeitraum von 15+ Jahren die Planung, Administration und den Betrieb von SharePoint Server Umgebungen. Tobias ist ein PowerShell Scripter mit Zertifizierungen für Microsoft 365 Produkte. In seiner Freizeit beschäftigt sich Tobias mit Aktualisierungen in der M365-Welt, ist mit seinem Rennvelo unterwegs und anderen sportlichen Aktivitäten beschäftigt. Bei Fragen kontaktiere mich über LinkedIn oder [email protected].

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert