2016-04-26 10 views
0

Ich entwickle eine Web-App, um den gesamten Inhalt (Dateien & Ordner) von One Drive-Konto anzuzeigen.Implementierung von One Drive für Business API mit client_id & secrect_key

Derzeit verwende ich ADAL.js-Bibliothek zum Abrufen des Inhalts von einem Laufwerk für Unternehmen. Es fordert jedoch zur Anmeldung Bildschirm.

enter image description here

ich diese Anmeldeinformationen in der Konfigurationsdatei irgendwie geben will oder muss ich programmatisch diese Anmeldeinformationen übergeben (fest einprogrammiert).

Kann mir jemand bei dieser Anforderung helfen?

Vielen Dank im Voraus

Antwort

1

Da eine solche Sache im Allgemeinen auf die ich in der Bibliothek .NET ADAL unterstützt nur denken verpönt es. Auch wenn es Einschränkungen hinsichtlich der Zustimmung gibt - wenn eine Zustimmung des Benutzers erforderlich ist, wird der Anruf fehlschlagen, und somit müsste die Zustimmung des Mieter-Administrators konfiguriert werden. Weitere Details finden Sie unter http://www.cloudidentity.com/blog/2014/07/08/using-adal-net-to-authenticate-users-via-usernamepassword/.

Sie sind besser dran, wenn Sie sich einmal anmelden, zustimmen und dann das Aktualisierungstoken zwischenspeichern. Es kann dann verwendet werden, um zukünftige Zugriffstoken zusammen mit neuen Aktualisierungstoken zu erhalten, die verwendet werden sollten, um das zwischengespeicherte Token zu aktualisieren, um sicherzustellen, dass das Ablaufdatum nicht auftritt.

+0

danke für deine antwort. Ich suche nach einer Implementierung mit ** client_id ** & ** secrect_key **, um die Zugänglichkeit zu begrenzen. –

1

Sie können es tun. Nach dem Abrufen der HTML-Anmeldeseite. Parsen Sie es mit jsoup oder anderen Bibliotheken (in Java) (suchen Sie nach ähnlichen in anderen Sprachen) und holen Sie sich Eingabeelemente von der HTML-Seite. Sie sollten 4 Elemente als Benutzername, Passwort, CTX und FlowToken erhalten. CTX und flowTkoen sind Werte, die zur Identifizierung der Sitzung bereitgestellt werden. Fügen Sie Benutzernamen- und Passwortwerte hinzu und speichern Sie diese als Name-Value-Paare. Jetzt senden Sie eine Post-Anfrage an https://login.microsoftonline.com/tenantId/login mit diesen Namen Wert Paare als Körper.

Ersetzen Sie mandantId durch Ihre Webanwendungsmandanten-ID.

Das ist es, als Antwort erhalten Sie einen Autorisierungscode, der verwendet werden kann, um Zugriffstoken zu bekommen.