Freigeben über


MinimalCsomPermissionsPlugin

Erkennt minimale Berechtigungen, die zum Aufrufen der aufgezeichneten SharePoint Client-Side Object Model (CSOM)-API-Anforderungen erforderlich sind.

Screenshot einer Befehlszeile mit minimalen Berechtigungen für den Dev-Proxy, die zum Aufrufen der aufgezeichneten Gruppe von SharePoint-CSOM-APIs erforderlich sind.

Definition der Plug-In-Instanz

{
  "name": "MinimalCsomPermissionsPlugin",
  "enabled": true,
  "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
  "configSection": "minimalCsomPermissionsPlugin"
}

Konfigurationsbeispiel

{
  "minimalCsomPermissionsPlugin": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/minimalcsompermissionsplugin.schema.json",
    "typesFilePath": "./api-specs"
  }
}

Konfigurationseigenschaften

Eigentum BESCHREIBUNG Standard
typesFilePath Pfad zur Datei, in der Berechtigungen aufgelistet sind, die zum Aufrufen von SharePoint-CSOM-APIs erforderlich sind ~appFolder/config/spo-csom-types.json

Befehlszeilenoptionen

Nichts

Bemerkungen

Das MinimalCsomPermissionsPlugin Plug-In erkennt, welche Berechtigungen die Clientanwendung mindestens benötigt, um den Satz von SharePoint-CSOM-APIs aufzurufen. Um diese minimalen Berechtigungen zu erkennen, verwendet das Plug-In Informationen zu Berechtigungen für SharePoint-CSOM-APIs, die sich in der angegebenen Datei der SharePoint-CSOM-Typen befinden.

Datei mit SharePoint-CSOM-Typen

Die MinimalCsomPermissionsPlugin Datei "CSOM-Typen" verwendet, um zu bestimmen, welche minimalen Berechtigungen die Clientanwendung benötigt, um den spezifischen Satz von CSOM-APIs aufzurufen. Die CSOM-Typendatei ist eine JSON-Datei, die Informationen zu SharePoint-CSOM-Typen und deren Berechtigungen enthält. Das folgende Beispiel zeigt eine Beispieldatei für CSOM-Typen:

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/minimalcsompermissions.types.schema.json",
  "types": {
    "268004ae-ef6b-4e9b-8425-127220d84719": "Microsoft.Online.SharePoint.TenantAdministration.Tenant",
    "3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a": "Microsoft.SharePoint.Client.RequestContext"
  },
  "returnTypes": {
    "Microsoft.SharePoint.Client.RequestContext.Current.Site": "Microsoft.SharePoint.Client.Site"
  },
  "actions": {
    "Microsoft.SharePoint.Client.RequestContext.Current": {
      "delegated": [
        "AllSites.Read",
        "AllSites.Write",
        "AllSites.Manage",
        "AllSites.FullControl"
      ],
      "application": []
    },
    "Microsoft.SharePoint.Client.Site.setProperty": {
      "delegated": [
        "AllSites.FullControl"
      ],
      "application": []
    },
    "Microsoft.Online.SharePoint.TenantAdministration.Tenant.ctor": {
      "delegated": [
        "AllSites.Read",
        "AllSites.Write",
        "AllSites.Manage",
        "AllSites.FullControl"
      ],
      "application": [
      ]
    },
    "Microsoft.Online.SharePoint.TenantAdministration.Tenant.query": {
      "delegated": [
        "AllSites.Write",
        "AllSites.Manage",
        "AllSites.FullControl"
      ],
      "application": [
      ]
    },
    "Microsoft.Online.SharePoint.TenantAdministration.Tenant.GetSitePropertiesFromSharePointByFilters": {
      "delegated": [
        "AllSites.FullControl"
      ],
      "application": [
      ]
    }
  }
}

Die Datei besteht aus drei Hauptteilen:

  • types
  • returnTypes
  • actions

Der types Abschnitt enthält eine Liste der SharePoint-CSOM-Typen und deren IDs. Dieser Abschnitt ist zur Besseren Lesbarkeit enthalten, da er einfacher zu verstehen Microsoft.SharePoint.Client.RequestContext.Current ist als 3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a.Current.

Der returnTypes Abschnitt enthält eine Liste der Rückgabetypen für die Methoden im actions Abschnitt. Das Plug-In verwendet diese Informationen, wenn CSOM-Anforderungen analysiert werden, um die Hierarchie der CSOM-APIs zu durchlaufen.

Der actions Abschnitt enthält eine Liste von Aktionen, die mithilfe von SharePoint-CSOM-APIs ausgeführt werden können. Für jede Aktion werden die delegierten und Anwendungsberechtigungen aufgeführt, die eine Clientanwendung zum Ausführen dieser Aktion verwenden kann. Berechtigungen werden nach ihren Berechtigungen aufsteigend sortiert, sodass die am wenigsten privilegierten Berechtigungen zuerst aufgelistet werden.

Ab heute ist die CSOM-Typendatei, die wir in Dev Proxy einschließen, unvollständig. Wir arbeiten mit unserer Community zusammen, um weitere Typen zu dokumentieren. In der Zwischenzeit können Sie es aktualisieren, um die Typen und Berechtigungen einzuschließen, die Sie benötigen, wenn die benötigten Informationen fehlen. Anschließend können Sie ihre eigenen Typendatei verwenden. Wir empfehlen Ihnen, Ihre Änderungen an der Community mitzuwirken, damit wir alle von ihnen profitieren können, indem wir eine Pull-Anforderung im Dev Proxy-Beispiel-Repository erstellen. Wir ziehen regelmäßig die neuesten Änderungen aus dem Repository in das Dev Proxy-Repository, damit Sie von den neuesten Änderungen profitieren können, ohne Ihre Dev Proxy-Installation aktualisieren zu müssen.