Skip to content
SilverPC Blog

SilverPC Blog

Tech

CNC esztergagép nullpont felvétel: Tényleg minden kést be kell mérni, vagy a menetkés és a furatkés kivétel? Tiszta vizet öntünk a pohárba
  • Tech

CNC esztergagép nullpont felvétel: Tényleg minden kést be kell mérni, vagy a menetkés és a furatkés kivétel? Tiszta vizet öntünk a pohárba

2025.08.31.
Felejtsd el a fagyos teleket és a forró nyarakat: a tetőtér belső hőszigetelése a megoldás
  • Tech

Felejtsd el a fagyos teleket és a forró nyarakat: a tetőtér belső hőszigetelése a megoldás

2025.08.31.
Futás technika elemzése otthon: mire figyelj a felvételeken?
  • Tech

Futás technika elemzése otthon: mire figyelj a felvételeken?

2025.08.31.
Unod a konditermet? 5 magyar YouTube sport vlogger, aki ingyen hozza el neked a mozgás örömét!
  • Tech

Unod a konditermet? 5 magyar YouTube sport vlogger, aki ingyen hozza el neked a mozgás örömét!

2025.08.31.
Lebegj, ne döngess: a csendes futás technika titka
  • Tech

Lebegj, ne döngess: a csendes futás technika titka

2025.08.31.
A nyelvtan kódja: Mi az a Backus-Naur Forma, és mire jó a kiterjesztett változata?
  • Tech

A nyelvtan kódja: Mi az a Backus-Naur Forma, és mire jó a kiterjesztett változata?

2025.08.31.

Express Posts List

Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?
  • Német

Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?

2025.08.31.
Es gibt nur wenige Dinge, die im digitalen Alltag so frustrierend sind, wie das Gefühl der Isolation,...
Bővebben Read more about Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?
Panik im Posteingang: Sie haben eine **letzte Warnung per E-Mail bekommen und wissen nicht, was Sie tun sollen**? So reagieren Sie richtig!
  • Német

Panik im Posteingang: Sie haben eine **letzte Warnung per E-Mail bekommen und wissen nicht, was Sie tun sollen**? So reagieren Sie richtig!

2025.08.31.
Panik, weil mein Outlook nicht mehr funktioniert? Diese Schritte bringen es zurück!
  • Német

Panik, weil mein Outlook nicht mehr funktioniert? Diese Schritte bringen es zurück!

2025.08.31.
Warum ist Ihr Spiel bei einer AMD Grafikkarte plötzlich verschwommen? Ursachen und schnelle Lösungen
  • Német

Warum ist Ihr Spiel bei einer AMD Grafikkarte plötzlich verschwommen? Ursachen und schnelle Lösungen

2025.08.31.
Die Fehlermeldung 500 („Es ist ein Fehler aufgetreten”) blockiert Sie? Das steckt dahinter!
  • Német

Die Fehlermeldung 500 („Es ist ein Fehler aufgetreten”) blockiert Sie? Das steckt dahinter!

2025.08.31.
Primary Menu
  • Főoldal
  • Hírek
  • Tech
  • Hardver
  • Szoftver
  • Mobil
  • Gamer
  • Játék
  • Web
  • Tudomány
  • Egyéb
  • Német

Der Schlüssel zum SharePoint: So melden Sie Ihre Anwendung per Login-Prompt für einen File-Upload an!

2025.08.30.

In der heutigen digitalisierten Arbeitswelt ist die Automatisierung von Prozessen unerlässlich. Ob es darum geht, Berichte automatisch in einer zentralen Ablage zu speichern, Dokumente aus einer Drittanwendung zu archivieren oder Medieninhalte hochzuladen – die Interaktion mit SharePoint ist dabei oft ein Kernbestandteil. Doch wie ermöglicht man einer eigenen Anwendung, sei es ein Desktop-Programm, ein Webdienst oder ein Skript, sicher und benutzerfreundlich auf SharePoint zuzugreifen, insbesondere wenn ein Dateiupload ansteht? Die Antwort liegt in der intelligenten Nutzung der Azure AD Authentifizierung mit einem interaktiven Login-Prompt.

Dieser Artikel führt Sie Schritt für Schritt durch den Prozess, wie Sie Ihre Anwendung so konfigurieren und implementieren, dass sie sich per Login-Prompt bei SharePoint anmelden und anschließend Dateien hochladen kann. Wir beleuchten die technischen Grundlagen, geben praktische Anleitungen und decken Best Practices ab.

Warum eine Anwendung anmelden und nicht einfach ein Nutzerpasswort verwenden?

Bevor wir ins Detail gehen, klären wir, warum der Weg über eine registrierte Anwendung der goldene Standard ist und das direkte Verwenden von Benutzername und Passwort vermieden werden sollte:

  • Sicherheit: Passwörter werden nicht direkt in der Anwendung gespeichert oder übertragen. Stattdessen werden sichere Token verwendet.
  • Granulare Berechtigungen: Einer Anwendung können spezifische Berechtigungen erteilt werden, die genau auf ihre Aufgabe zugeschnitten sind (z.B. nur das Hochladen von Dateien in einen bestimmten Ordner), ohne dass sie die volle Kontrolle eines Benutzers erhält.
  • Compliance & Auditability: Die Aktionen einer Anwendung können im Azure AD Audit-Log nachverfolgt werden.
  • Benutzerfreundlichkeit: Ein Login-Prompt ist ein etabliertes Muster, das Benutzern vertraut ist und eine sichere Einmalanmeldung ermöglicht.
  • Trennung der Verantwortlichkeiten: Applikationen agieren im Kontext von Benutzern, benötigen aber nicht deren Identität im Hintergrund.

Grundlagen der SharePoint-Authentifizierung im Kontext von Azure AD

SharePoint Online ist tief in Microsoft 365 und damit in Azure Active Directory (Azure AD) integriert. Azure AD dient als zentraler Identitätsanbieter und nutzt Protokolle wie OAuth 2.0 und OpenID Connect, um Anwendungen den sicheren Zugriff auf Microsoft-Dienste zu ermöglichen. Wenn wir von einem „Login-Prompt” sprechen, meinen wir in der Regel einen interaktiven Authentifizierungsfluss, bei dem der Benutzer über eine Browser-basierte Oberfläche seine Identität bestätigt und der Anwendung die erforderlichen Berechtigungen erteilt (Zustimmung oder „Consent”).

Der „Login-Prompt” – Was bedeutet das eigentlich?

Ein Login-Prompt ist die sichtbare Schnittstelle für den Benutzer, um sich bei Microsoft anzumelden und der Anwendung den Zugriff auf bestimmte Ressourcen zu gestatten. Dies geschieht in der Regel über ein Pop-up-Fenster oder eine Browser-Weiterleitung, die den Benutzer zur Microsoft-Anmeldeseite führt. Nachdem der Benutzer seine Anmeldeinformationen eingegeben und eventuell die Multi-Faktor-Authentifizierung (MFA) abgeschlossen hat, fordert Microsoft ihn auf, der Anwendung die angefragten Berechtigungen zu erteilen. Erst danach erhält die Anwendung ein Zugriffstoken (Access Token), mit dem sie im Namen des Benutzers auf SharePoint zugreifen kann.

Schritt 1: Ihre Anwendung im Azure AD registrieren

Der erste und grundlegendste Schritt ist die Registrierung Ihrer Anwendung im Azure Active Directory. Dies ist vergleichbar mit dem Anlegen einer „Identität” für Ihre Software.

  1. Azure-Portal aufrufen: Navigieren Sie zu portal.azure.com und melden Sie sich mit einem Konto an, das über die Berechtigung verfügt, Anwendungen zu registrieren (z.B. Global Administrator oder Application Developer).
  2. Anwendungsregistrierungen auswählen: Suchen Sie im Suchfeld nach „App-Registrierungen” oder navigieren Sie über das Menü zu „Azure Active Directory” > „App-Registrierungen”.
  3. Neue Registrierung: Klicken Sie auf „Neue Registrierung”.
    • Name: Geben Sie einen aussagekräftigen Namen für Ihre Anwendung ein (z.B. „SharePoint File Uploader App”).
    • Unterstützte Kontotypen: Wählen Sie, wer Ihre Anwendung nutzen kann. Für die meisten Szenarien wählen Sie „Nur Konten in diesem Organisationsverzeichnis” oder „Konten in einem beliebigen Organisationsverzeichnis und persönliche Microsoft-Konten”.
    • Umleitungs-URI (Redirect URI): Dies ist entscheidend für den Login-Prompt. Hierher wird der Benutzer nach erfolgreicher Authentifizierung umgeleitet, und hier erhält Ihre Anwendung die Authentifizierungsinformationen.
      • Für Desktop- oder Mobilanwendungen: Wählen Sie als Plattform „Mobile und Desktopanwendungen” und fügen Sie als Umleitungs-URI `https://login.microsoftonline.com/common/oauth2/nativeclient` oder `http://localhost` hinzu (MSAL-Bibliotheken verwalten dies oft automatisch mit einem zufälligen Port).
      • Für Webanwendungen: Wählen Sie „Web” und geben Sie die URL an, unter der Ihre Anwendung erreichbar ist, z.B. `https://meineapp.com/signin-oidc`.

      Wichtig: Für einen interaktiven Login-Prompt *muss* eine Umleitungs-URI konfiguriert werden, da der Browser nach der Authentifizierung dorthin zurückkehrt, um der Anwendung die Token zu übergeben.

    • Klicken Sie auf „Registrieren”.
  4. API-Berechtigungen konfigurieren: Nach der Registrierung Ihrer Anwendung navigieren Sie zum Abschnitt „API-Berechtigungen”.
    • Klicken Sie auf „Berechtigung hinzufügen”.
    • Wählen Sie „Microsoft Graph” und/oder „SharePoint”. Es wird dringend empfohlen, wo immer möglich, die Microsoft Graph API zu verwenden, da sie eine einheitlichere und zukunftssicherere Schnittstelle für Microsoft 365-Dienste bietet.
    • Wählen Sie die erforderlichen Berechtigungen aus. Für einen Dateiupload benötigen Sie delegierte Berechtigungen (im Namen des angemeldeten Benutzers).
      • Für Microsoft Graph:
        • Files.ReadWrite (für Dateien des angemeldeten Benutzers)
        • Sites.ReadWrite.All (für Dateien auf allen SharePoint-Websites, auf die der Benutzer Zugriff hat)
        • offline_access (ermöglicht die Aktualisierung von Token, damit Benutzer sich nicht ständig neu anmelden müssen)
      • Für SharePoint (falls Graph nicht ausreicht oder Sie spezifische SharePoint-APIs verwenden):
        • Sites.ReadWrite.All oder spezifischere Berechtigungen wie Files.ReadWrite.All unter „SharePoint”.
    • Klicken Sie auf „Berechtigungen hinzufügen” und anschließend „Administratorzustimmung für [Ihr Mandant] erteilen”. Dies erspart Benutzern die individuelle Zustimmung, wenn die Berechtigungen von einem Administrator vorab genehmigt werden.
  E-Mail-Check: **Ist das echt oder Spam?** – An diesen Zeichen erkennen Sie den Betrug

Schritt 2: Die richtige Authentifizierungsstrategie wählen

Für den interaktiven Login-Prompt gibt es primär zwei relevante OAuth 2.0-Flows:

  • Authorization Code Flow (Autorisierungscode-Fluss): Dies ist der Standard für Web- und Desktopanwendungen. Der Benutzer wird zu einer Anmeldeseite umgeleitet, meldet sich an, und der Browser leitet ihn mit einem Autorisierungscode zurück an die Anwendung. Die Anwendung tauscht diesen Code gegen ein Access Token und ein Refresh Token ein.
  • Device Code Flow (Gerätecode-Fluss): Ideal für Anwendungen auf Geräten ohne vollständigen Browser (z.B. CLI-Tools, Smart-TVs). Die Anwendung zeigt dem Benutzer einen Code an, den dieser in einem separaten Browser auf einem anderen Gerät eingibt, um die Anmeldung abzuschließen.

Für die meisten Anwendungen, die einen Login-Prompt anzeigen, ist der Authorization Code Flow die bevorzugte Wahl. Die Microsoft Authentication Library (MSAL) vereinfacht die Implementierung erheblich.

Schritt 3: Implementierung der Authentifizierung in Ihrer Anwendung (Beispiel: C# mit MSAL.NET)

Die Microsoft Authentication Library (MSAL) ist für verschiedene Plattformen (C#, Java, JavaScript, Python etc.) verfügbar und abstrahiert die Komplexität der OAuth 2.0-Flüsse. Im Folgenden ein konzeptionelles Beispiel für eine C#-Desktopanwendung:


using Microsoft.Identity.Client;
using System;
using System.Linq;
using System.Threading.Tasks;
using System.Net.Http;
using System.IO;

public class SharePointUploader
{
    // Ihre Anwendungs-ID (Client ID) aus der Azure AD Registrierung
    private const string ClientId = "IHRE_CLIENT_ID_HIER"; 
    // Die Basis-URL Ihres SharePoint-Mandanten (z.B. https://ihrmandant.sharepoint.com)
    private const string SharePointTenantUrl = "https://IHREMANDANT.sharepoint.com"; 

    // Die benötigten Scopes für Microsoft Graph oder SharePoint
    // Für Graph API:
    private string[] Scopes = new string[] { "User.Read", "Files.ReadWrite.All", "Sites.ReadWrite.All", "offline_access" };
    // Für SharePoint REST API (direkt):
    // private string[] Scopes = new string[] { $"{SharePointTenantUrl}/.default", "offline_access" }; // .default Scope für SharePoint

    private IPublicClientApplication _app;

    public SharePointUploader()
    {
        _app = PublicClientApplicationBuilder.Create(ClientId)
            .WithRedirectUri("http://localhost") // Oder https://login.microsoftonline.com/common/oauth2/nativeclient
            .WithTenantId("common") // Oder Ihre spezifische Mandanten-ID
            .Build();
    }

    public async Task<AuthenticationResult> AuthenticateInteractiveAsync()
    {
        AuthenticationResult authResult = null;
        try
        {
            // Versuchen, Token aus dem Cache zu erhalten (SSO)
            var accounts = await _app.GetAccountsAsync();
            if (accounts.Any())
            {
                authResult = await _app.AcquireTokenSilent(Scopes, accounts.FirstOrDefault())
                    .ExecuteAsync();
            }
            else
            {
                // Interaktive Anmeldung, falls kein Token im Cache
                authResult = await _app.AcquireTokenInteractive(Scopes)
                    .WithPrompt(Prompt.SelectAccount) // Oder Prompt.ForceConsent, Prompt.Always, etc.
                    .ExecuteAsync();
            }
        }
        catch (MsalUiRequiredException)
        {
            // Ein UI-Prompt ist erforderlich (z.B. Token abgelaufen, Benutzer hat sich abgemeldet)
            authResult = await _app.AcquireTokenInteractive(Scopes)
                .WithPrompt(Prompt.SelectAccount)
                .ExecuteAsync();
        }
        catch (Exception ex)
        {
            Console.WriteLine($"Fehler bei der Authentifizierung: {ex.Message}");
            throw;
        }
        return authResult;
    }

    public async Task UploadFileToSharePointAsync(string filePath, string siteRelativeUrl, string folderRelativeUrl)
    {
        var authResult = await AuthenticateInteractiveAsync();
        if (authResult == null)
        {
            Console.WriteLine("Authentifizierung fehlgeschlagen.");
            return;
        }

        string accessToken = authResult.AccessToken;

        // Beispiel für Microsoft Graph API (empfohlen)
        // Ziel: https://graph.microsoft.com/v1.0/sites/{site-id}/drives/{drive-id}/root:/{folderPath}/{filename}:/content
        // Zuerst Site ID und Drive ID holen
        // Für eine bestimmte Site:
        // GET https://graph.microsoft.com/v1.0/sites/{SharePointTenantUrl}:/sites/{siteRelativeUrl}
        // Oder für die Root Site:
        // GET https://graph.microsoft.com/v1.0/sites/root
        // Wenn Sie die Site ID haben, dann:
        // GET https://graph.microsoft.com/v1.0/sites/{site-id}/drive

        // Vereinfachtes Beispiel, direkt zum Upload, wenn Sie die Site ID und Drive ID kennen
        // Realistisch müssten Sie diese dynamisch abfragen oder vorkonfigurieren.
        // Für dieses Beispiel gehen wir davon aus, dass wir eine Site ID und Drive ID haben oder den Pfad relativ zur Root-Site verwenden können.

        // Hier ein Beispiel für den Upload über Graph API in die Standard-Dokumentenbibliothek der Root-Site
        // oder einer bekannten Site (Sie müssen die Site ID und Drive ID ermitteln!)
        // Wenn Sie direkt mit Pfaden arbeiten wollen, ist es oft einfacher:
        // PUT /me/drive/root:/{path-to-file}/{filename}:/content
        // Oder für eine spezifische Site:
        // PUT /sites/{site-id}/drive/root:/{path-to-file}/{filename}:/content

        // Nehmen wir an, wir laden in die Dokumente eines Benutzers hoch, oder Sie passen den Pfad an:
        string fileName = Path.GetFileName(filePath);
        // Beispiel: Hochladen in den Ordner 'Uploads' in der Standard-Dokumentenbibliothek der Root-Site
        // Sie müssen die genaue URL und den Pfad anpassen!
        // Um eine Site-ID zu bekommen: GET https://graph.microsoft.com/v1.0/sites/{SharePointTenantUrl}:/sites/{siteRelativeUrl}
        // Dann aus dem Ergebnis die ID holen.
        // Vereinfacht für dieses Beispiel: Direkt auf die Site-ID zugreifen, wenn bekannt.
        // Für "Dokumente" der Root-Site:
        // string uploadUrl = $"{SharePointTenantUrl}/_api/web/GetFolderByServerRelativeUrl('{folderRelativeUrl}')/Files/add(overwrite=true,url='{fileName}')";

        // Beispiel mit Microsoft Graph für einen Upload in die Standard-Dokumentebibliothek der Root-Site
        // (Annahme: wir kennen die Site-ID oder nutzen den 'root' Endpunkt)
        // Oder besser: /sites/{hostname},{site-id},{web-id}/drive/root:{path-to-folder}/{filename}:/content
        // Oder den Pfad zum Drive direkt angeben, z.B. https://graph.microsoft.com/v1.0/sites/{site-id}/drives/{drive-id}/root:/FolderA/FolderB/MyFile.txt:/content
        
        // Für den Upload in ein spezifisches Verzeichnis in einer SharePoint-Site via Graph:
        // GET https://graph.microsoft.com/v1.0/sites?search={siteName} -> um Site ID zu finden
        // GET https://graph.microsoft.com/v1.0/sites/{siteId}/drives -> um Drive ID zu finden

        // Hier ein vereinfachtes Graph-Upload-Beispiel für "My Documents" (OneDrive des angemeldeten Benutzers)
        // Oder wenn Sie die Site-ID und Drive-ID statisch einstellen (nicht empfohlen für dynamische Szenarien):
        // string siteId = "Ihre_SharePoint_Site_ID"; // z.B. 12345678-abcd-1234-abcd-1234567890ab
        // string driveId = "Ihre_SharePoint_Drive_ID"; // z.B. 98765432-efgh-9876-efgh-9876543210fe
        // string graphUploadUrl = $"https://graph.microsoft.com/v1.0/sites/{siteId}/drives/{driveId}/root:/{folderRelativeUrl}/{fileName}:/content";
        
        // Ein generischerer Ansatz für die Standarddokumentenbibliothek einer Site, wenn Sie die URL kennen:
        // GET https://graph.microsoft.com/v1.0/sites/{SharePointTenantUrl}:/sites/{siteRelativeUrl}
        // Dann result.id für siteId und result.driveId für driveId holen.
        // Für Einfachheit, verwenden wir einen OneDrive-Pfad oder den direkten SharePoint REST API Aufruf
        
        // Beispiel mit SharePoint REST API (direkter Upload)
        string uploadUrl = $"{SharePointTenantUrl}/sites/{siteRelativeUrl}/_api/web/GetFolderByServerRelativeUrl('{folderRelativeUrl}')/Files/add(overwrite=true,url='{fileName}')";

        using (var client = new HttpClient())
        {
            client.DefaultRequestHeaders.Authorization = new System.Net.Http.Headers.AuthenticationHeaderValue("Bearer", accessToken);
            client.DefaultRequestHeaders.Add("Accept", "application/json;odata=verbose"); // Für SharePoint REST API

            byte[] fileBytes = File.ReadAllBytes(filePath);
            var content = new ByteArrayContent(fileBytes);
            content.Headers.Add("Content-Type", "application/octet-stream");

            var response = await client.PostAsync(uploadUrl, content); // POST für SharePoint REST, PUT für Graph API
            
            if (response.IsSuccessStatusCode)
            {
                Console.WriteLine($"Datei '{fileName}' erfolgreich nach SharePoint hochgeladen!");
            }
            else
            {
                string errorContent = await response.Content.ReadAsStringAsync();
                Console.WriteLine($"Fehler beim Hochladen der Datei: {response.StatusCode} - {errorContent}");
            }
        }
    }
}

Erläuterung des Codes:

  • Die PublicClientApplicationBuilder-Klasse wird verwendet, um eine öffentliche Clientanwendung zu konfigurieren (Desktop-Apps, Mobile-Apps).
  • Die WithRedirectUri("http://localhost")-Methode ist wichtig, damit MSAL einen lokalen Webserver startet, um den Autorisierungscode nach der Browser-Umleitung abzufangen.
  • AcquireTokenSilent versucht, ein Token aus dem Cache abzurufen, um unnötige Anmeldungen zu vermeiden.
  • AcquireTokenInteractive startet den interaktiven Login-Prompt, falls kein gültiges Token verfügbar ist oder der Benutzer sich neu anmelden muss.
  • Der erhaltene accessToken wird dann als Bearer-Token im Authorization-Header bei HTTP-Anfragen an SharePoint (oder Graph) verwendet.
  Mit Asthma rauchen: Sollte man lieber auf Lunge inhalieren oder nur paffen? Eine Einschätzung

Schritt 4: Den Dateiupload durchführen

Nachdem Sie erfolgreich ein Access Token erhalten haben, können Sie damit HTTP-Anfragen an die Microsoft Graph API oder die SharePoint REST API stellen, um die Datei hochzuladen.

Option A: Microsoft Graph API (Empfohlen)

Die Graph API ist die moderne und bevorzugte Schnittstelle für Microsoft 365-Dienste. Sie bietet eine konsistente API für SharePoint, OneDrive, Teams, Exchange und mehr. Ein Dateiupload erfolgt typischerweise mit einer PUT-Anfrage an den spezifischen Endpunkt:


PUT https://graph.microsoft.com/v1.0/sites/{site-id}/drives/{drive-id}/root:/{pfad_zum_ordner}/{dateiname}.ext:/content
Content-Type: application/octet-stream
Authorization: Bearer {Access Token}

[Binärinhalt der Datei]

Um die site-id und drive-id zu erhalten, müssen Sie möglicherweise zuerst andere Graph-Aufrufe tätigen, z.B. GET https://graph.microsoft.com/v1.0/sites?search={sitename} oder GET https://graph.microsoft.com/v1.0/sites/{hostname}:/sites/{sitepfad}:/.

Option B: SharePoint REST API

Die SharePoint REST API ist auch eine Option, ist aber spezifischer für SharePoint und hat eine andere Struktur.


POST https://{IhreMandantenUrl}/sites/{SiteRelativeUrl}/_api/web/GetFolderByServerRelativeUrl('{OrdnerRelativerPfad}')/Files/add(overwrite=true,url='{Dateiname}')
Content-Type: application/octet-stream
Authorization: Bearer {Access Token}

[Binärinhalt der Datei]

Beide Methoden erfordern, dass die Datei als Binärdaten im HTTP-Request-Body gesendet wird.

Best Practices und Überlegungen

  • Fehlerbehandlung: Implementieren Sie robuste Fehlerbehandlung, insbesondere für Netzwerkfehler, Authentifizierungsfehler und API-Antwortfehler.
  • Token-Caching und Erneuerung: MSAL verwaltet automatisch den Token-Cache und die Erneuerung von Refresh Tokens. Nutzen Sie diese Funktionen, um die Anzahl der Anmelde-Prompts für den Benutzer zu minimieren.
  • Minimalprinzip bei Berechtigungen: Erteilen Sie Ihrer Anwendung nur die absolut notwendigen Berechtigungen (z.B. Files.ReadWrite.All statt Sites.FullControl.All).
  • Umgang mit vertraulichen Daten: Auch wenn der Login-Prompt die direkte Passwortverwendung vermeidet, sollten Client-Geheimnisse (falls Sie einen vertraulichen Client erstellen) niemals in Client-Anwendungen offengelegt werden. Für öffentliche Clients (wie Desktop-Apps) ist dies nicht relevant, da sie keine Client-Geheimnisse verwenden.
  • Benutzerfreundlichkeit des Login-Prompts: Stellen Sie sicher, dass der Benutzer versteht, warum er sich anmelden muss und welche Berechtigungen die Anwendung anfordert. Die von Microsoft bereitgestellte Anmeldeseite ist hierfür optimiert.
  • SharePoint On-Premises: Beachten Sie, dass dieser Artikel sich auf SharePoint Online konzentriert. SharePoint On-Premises verwendet in der Regel andere Authentifizierungsmethoden wie NTLM, Kerberos oder ADFS, die nicht direkt mit Azure AD und einem interaktiven Login-Prompt in dieser Form funktionieren.

Zusammenfassung

Das Anmelden Ihrer Anwendung per Login-Prompt für den Dateiupload in SharePoint Online ist ein sicherer und benutzerfreundlicher Weg, um Automatisierung und Integration zu ermöglichen. Durch die Registrierung Ihrer Anwendung in Azure AD, die Auswahl des richtigen OAuth 2.0-Flows (in der Regel Authorization Code Flow) und die Nutzung einer Bibliothek wie MSAL können Sie den Authentifizierungsprozess effizient implementieren. In Kombination mit der leistungsstarken Microsoft Graph API oder der SharePoint REST API steht Ihnen der Weg offen, Ihre Dateiupload-Szenarien zu realisieren und Ihre Workflows nahtlos zu integrieren. Mit den hier vorgestellten Schritten halten Sie den Schlüssel zur SharePoint-Integration in den Händen.

Anwendungsauthentifizierung Azure AD Dateiupload Login Prompt Microsoft Graph MSAL OAuth 2.0 SharePoint
Auf Facebook teilen Auf X teilen Auf Messenger teilen Auf WhatsApp teilen Auf Viber teilen

Schreibe einen Kommentar Antworten abbrechen

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

Verwandte

Profilbild-Rätsel gelöst: Der Unterschied zwischen Ihrem Outlook Profil Foto und dem in Windows Outlook
  • Német

Profilbild-Rätsel gelöst: Der Unterschied zwischen Ihrem Outlook Profil Foto und dem in Windows Outlook

2025.08.31.
OAuth-Anmeldung in Multi-Tenant App mit Outlook scheitert? Was bei Fehler 500 fehlt und wie Sie ihn beheben
  • Német

OAuth-Anmeldung in Multi-Tenant App mit Outlook scheitert? Was bei Fehler 500 fehlt und wie Sie ihn beheben

2025.08.31.
Developer-Deep-Dive: So beheben Sie Sideloading-Issues bei Ihrem Outlook Add-In mit SSO und webapplicationinfo
  • Német

Developer-Deep-Dive: So beheben Sie Sideloading-Issues bei Ihrem Outlook Add-In mit SSO und webapplicationinfo

2025.08.30.
Anmeldung mit Schulkonto auf neuem Surface Laptop fehlgeschlagen? So lösen Sie den Fehlercode 80180014
  • Német

Anmeldung mit Schulkonto auf neuem Surface Laptop fehlgeschlagen? So lösen Sie den Fehlercode 80180014

2025.08.30.
Mein PC meldet: „Welche Organisation verwaltet mich?” – So bekommen Sie den Zugriff auf Ihr System zurück!
  • Német

Mein PC meldet: „Welche Organisation verwaltet mich?” – So bekommen Sie den Zugriff auf Ihr System zurück!

2025.08.30.
EntraID SCIM ignoriert die Gruppenmitgliedschaft? So umgehen Sie das Problem!
  • Német

EntraID SCIM ignoriert die Gruppenmitgliedschaft? So umgehen Sie das Problem!

2025.08.30.

Olvastad már?

Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?
  • Német

Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?

2025.08.31.
Es gibt nur wenige Dinge, die im digitalen Alltag so frustrierend sind, wie das Gefühl der Isolation,...
Bővebben Read more about Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?
Panik im Posteingang: Sie haben eine **letzte Warnung per E-Mail bekommen und wissen nicht, was Sie tun sollen**? So reagieren Sie richtig!
  • Német

Panik im Posteingang: Sie haben eine **letzte Warnung per E-Mail bekommen und wissen nicht, was Sie tun sollen**? So reagieren Sie richtig!

2025.08.31.
Panik, weil mein Outlook nicht mehr funktioniert? Diese Schritte bringen es zurück!
  • Német

Panik, weil mein Outlook nicht mehr funktioniert? Diese Schritte bringen es zurück!

2025.08.31.
Warum ist Ihr Spiel bei einer AMD Grafikkarte plötzlich verschwommen? Ursachen und schnelle Lösungen
  • Német

Warum ist Ihr Spiel bei einer AMD Grafikkarte plötzlich verschwommen? Ursachen und schnelle Lösungen

2025.08.31.
Die Fehlermeldung 500 („Es ist ein Fehler aufgetreten”) blockiert Sie? Das steckt dahinter!
  • Német

Die Fehlermeldung 500 („Es ist ein Fehler aufgetreten”) blockiert Sie? Das steckt dahinter!

2025.08.31.

Verpassen Sie das nicht

Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?
  • Német

Verbindung mit dem Server fehlgeschlagen: Was tun, wenn E-Mails nicht empfangen werden?

2025.08.31.
Panik im Posteingang: Sie haben eine **letzte Warnung per E-Mail bekommen und wissen nicht, was Sie tun sollen**? So reagieren Sie richtig!
  • Német

Panik im Posteingang: Sie haben eine **letzte Warnung per E-Mail bekommen und wissen nicht, was Sie tun sollen**? So reagieren Sie richtig!

2025.08.31.
Panik, weil mein Outlook nicht mehr funktioniert? Diese Schritte bringen es zurück!
  • Német

Panik, weil mein Outlook nicht mehr funktioniert? Diese Schritte bringen es zurück!

2025.08.31.
Warum ist Ihr Spiel bei einer AMD Grafikkarte plötzlich verschwommen? Ursachen und schnelle Lösungen
  • Német

Warum ist Ihr Spiel bei einer AMD Grafikkarte plötzlich verschwommen? Ursachen und schnelle Lösungen

2025.08.31.
Copyright © 2025 SilverPC Blog | SilverPC kérdések

Az oldalon megjelenő minden cikk, kép és egyéb tartalom a SilverPC.hu tulajdonát képezi, felhasználásuk kizárólag az eredeti forrás pontos és jól látható feltüntetésével engedélyezett.