Ich versuche, eine Seite in ASP.Net MVC zu erstellen, um das aktuelle Benutzerkennwort zurückzusetzen. Ich verwende Azure Active Directory für die Benutzerauthentifizierung. Um auf die AD-Informationen des Benutzers zuzugreifen, verwende ich den C# Graph API-Client. Mein Code basiert auf einem Muster, das auf GitHubBerechtigungsproblem ändern Benutzerpasswort mit Azure AD Graph Client API
gefunden wurde. Ich bin in der Lage, Änderungen an den Benutzerinformationen (wie Stadt, Bundesland, E-Mail) vorzunehmen. Wenn ich versuche, das Kennwort mithilfe des PasswordProfile-Attributs für das Benutzerobjekt zu ändern, erhalte ich die Fehlermeldung, dass ich nicht über ausreichende Berechtigungen verfüge. Ich versuche, das Kennwort als die Anwendung zu ändern, und ich glaube, dass die Quelle des Berechtigungsproblems mit der Anwendung ist.
Ich habe das folgende PowerShell-Skript gefunden, das die Firmenadministratorrolle zu einer Anwendung hinzufügen soll. Der Aufruf von Get-MsolServicePrincipal gibt jedoch nichts zurück. Wenn ich die Ausgabe des Befehls betrachte, sehe ich keine Einträge, die dem Namen meiner Anwendung ähneln.
Ich denke, meine erste Frage ist, bin ich richtig, dass die Erlaubnis Problem mit der Anwendung ist?
Zweitens, welchen Wert, auf den ich die Variablen $ displayName setzen sollte?
Können Sie erweitern, wie Sie das UserCredential erstellen? Die einzige Eigenschaft und der Konstruktor, die ich sehe, ist für einen Benutzernamen. Gibt es einen Unterschied zwischen Desktop-Anwendungs- und Webanwendungsbibliotheken? –
Ich glaube nicht, dass ein Unterschied existiert nein, hier sind einige Informationen zur Verwendung von 'UserCredential' ... http://www.cloudidentity.com/blog/2014/07/08/using-adal-net-to-authenticate -users-via-benutzernamepassword/Grundlegende Verwendung ist aber ...'var credential = new UserCredential (" Benutzername "," Passwort ");' –
Aus irgendeinem Grund hat UserCredential nicht zwei Konstruktoren für mich, aber UserPasswordCredential macht den Trick. Nachdem ich meine Konstanten und Berechtigungen optimiert habe, funktioniert es. Vielen Dank. –