Moin,
ich arbeite zurzeit an einen Programm womit in einem Azure Active Directory Benutzer angelegt, verwaltet und auch wieder gelöscht werden können. Dazu habe ich mich stark am diesem Beispiel auf GitHub orientiert:
https://github.com/Azure-Samples/active-directory-dotnet-graphapi-console
Es funktioniert auch alles soweit ganz gut, jedoch habe ich das Problem, dass meinem Programm die nötigen Rechte fehlen um bestimmte Operationen durchzuführen. Es kommt die Exception: "Insufficient privileges to complete the operation".
Ok, ich bin anscheinend nicht der Erste mit diesem Problem und es scheint auch schon eine Lösung dafür zu geben:
https://github.com/Azure-Samples/active-directory-dotnet-graphapi-console/issues/27#issuecomment-155565140
Jedoch stehe ich irgendwie auf dem Schlauch, während für alle andere die Sache klar ist. Ich bekomme das Skript in dem Kommentar einfach nicht zum laufen. Mein Lösungsvorschlag würde so aussehen:
--------------------------------------------------------------
$tenant = "someAzureAD.onmicrosoft.com"
$tenantGuid = "myTenantGUID"
$graphver = "1.5"
$appID = "myClientId"
$userVal = "myUserName" + "@" + $tenant
$pass = "myPassword"
$Creds = New-Object System.Management.Automation.PsCredential($userVal, (ConvertTo-SecureString $pass -AsPlainText -Force))
Connect-MSOLSERVICE -Credential $Creds
$msSP = Get-MsolServicePrincipal -AppPrincipalId $appID -TenantID $tenantGuid
#ID of the Application
$objectId = $msSP.ObjectId
Add-MsolRoleMember -RoleName "Company Administrator" -RoleMemberType ServicePrincipal -RoleMemberObjectId $objectId
-----------------------------------------------
Das Problem besteht dann in der Zeile mit dem Connect-MSOLSERVICE.
Folgende Fehlermeldungen habe ich beim herumprobieren erhalten:
Connect-MSOLSERVICE : Es war kein an
https://provisioningapi.microsoftonline.com/provisioningwebservice.svc
lauschender Endpunkt vorhanden, der die Nachricht annehmen konnte. Dies wird
häufig durch eine fehlerhafte Adresse oder SOAP-Aktion verursacht. Weitere
Details finden Sie unter "InnerException", sofern vorhanden.
Oder auch das Benutzer und Passwort nicht übereinstimmen (obwohl diese es taten und es mehrfach getestet wurde).
Ich wäre über Hinweise und Hilfe sehr dankbar, die zur Lösung meines Problems führen.