MinimalCsom權限插件

偵測呼叫記錄的 SharePoint Client-Side 物件模型 (CSOM) API 要求所需的最小許可權。

命令行的螢幕快照,其中顯示開發人員 Proxy 列出呼叫記錄的 SharePoint CSOM API 集合所需的最低許可權。

設定範例

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.3.1/rc.schema.json",
  "plugins": [
    {
      "name": "MinimalCsomPermissionsPlugin",
      "enabled": true,
      "pluginPath": "~appFolder/plugins/DevProxy.Plugins.dll",
      "configSection": "minimalCsomPermissionsPlugin"
    }
  ],
  "minimalCsomPermissionsPlugin": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.3.1/minimalcsompermissionsplugin.schema.json",
    "typesFilePath": "./api-specs"
  }
}

設定屬性

房產 說明 預設
typesFilePath 列出呼叫 SharePoint CSOM API 所需許可權的檔案路徑 ~appFolder/config/spo-csom-types.json

命令列選項

沒有

備註

外掛程式 MinimalCsomPermissionsPlugin 會偵測用戶端應用程式至少需要哪些許可權來呼叫 SharePoint CSOM API 集合。 為了偵測這些最小許可權,外掛程式會使用位於指定 SharePoint CSOM 類型檔案中之 SharePoint CSOM API 許可權的相關信息。

SharePoint CSOM 類型檔案

會 MinimalCsomPermissionsPlugin 使用 CSOM 類型檔案來判斷用戶端應用程式呼叫特定 CSOM API 集合所需的最低許可權。 CSOM 類型檔案是 JSON 檔案,其中包含 SharePoint CSOM 類型及其許可權的相關信息。 下列範例顯示範例 CSOM 類型檔案:

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v3.3.1/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": [
      ]
    }
  }
}

檔案包含三個主要部分:

  • types
  • returnTypes
  • actions

區 types 段包含 SharePoint CSOM 類型及其識別碼的清單。 本節隨附於可讀性,因為它比 更容易Microsoft.SharePoint.Client.RequestContext.Current瞭解3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a.Current。

區 returnTypes 段包含 區段中方法 actions 的傳回型別清單。 在剖析 CSOM 要求以周遊 CSOM API 階層時,外掛程式會使用這項資訊。

區 actions 段包含可使用 SharePoint CSOM API 執行的動作清單。 針對每個動作,它會列出用戶端應用程式可用來執行此動作的委派和應用程式許可權。 許可權會依其許可權遞增排序,因此會先列出最低許可權。

截至目前為止,我們隨附於開發 Proxy 的 CSOM 類型檔案不完整。 我們正在與社群合作,以記錄更多類型。 同時,您可以更新它,以包含您需要的資訊遺失所需的類型和許可權。 然後,您可以使用自己的類型檔案。 我們鼓勵您將變更貢獻回社群,讓所有人都能透過在 開發人員 Proxy 範例存放庫中建立提取要求,使其受益。 我們會定期將最新的變更從存放庫提取至 Dev Proxy 存放庫,讓您可以受益於最新的變更,而不需要更新您的開發 Proxy 安裝。