Bagikan melalui


PluginMinimalCsomPermissions

Mendeteksi izin minimal yang diperlukan untuk memanggil permintaan API SharePoint Client-Side Object Model (CSOM) yang direkam.

Cuplikan layar baris perintah memperlihatkan Proksi Dev mencantumkan izin minimal yang diperlukan untuk memanggil kumpulan API CSOM SharePoint yang direkam.

Contoh konfigurasi

{
  "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v2.0.0/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/v2.0.0/minimalcsompermissionsplugin.schema.json",
    "typesFilePath": "./api-specs"
  }
}

Properti konfigurasi

Harta benda Deskripsi Bawaan
typesFilePath Jalur ke file yang mencantumkan izin yang diperlukan untuk memanggil API CSOM SharePoint ~appFolder/config/spo-csom-types.json

Opsi Baris Perintah

Tidak ada

Komentar

Plugin MinimalCsomPermissionsPlugin mendeteksi izin apa yang dibutuhkan aplikasi klien minimal untuk memanggil set API CSOM SharePoint. Untuk mendeteksi izin minimal ini, plugin menggunakan informasi tentang izin untuk API CSOM SharePoint yang terletak di file jenis SharePoint CSOM yang ditentukan.

File tipe CSOM SharePoint

menggunakan MinimalCsomPermissionsPlugin file jenis CSOM untuk menentukan izin minimal apa yang dibutuhkan aplikasi klien untuk memanggil set API CSOM tertentu. File tipe CSOM adalah file JSON yang berisi informasi tentang tipe CSOM SharePoint dan izinnya. Contoh berikut menunjukkan contoh file jenis CSOM:

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

File terdiri dari tiga bagian utama:

  • types
  • returnTypes
  • actions

Bagian ini types berisi daftar tipe CSOM SharePoint dan ID-nya. Bagian ini disertakan untuk keterbacaan karena lebih mudah dipahami Microsoft.SharePoint.Client.RequestContext.Current daripada 3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a.Current.

Bagian berisi returnTypes daftar jenis pengembalian untuk metode di bagian .actions Plugin menggunakan informasi ini saat mengurai permintaan CSOM untuk melintasi hierarki API CSOM.

Bagian berisi actions daftar tindakan yang dapat dilakukan menggunakan API CSOM SharePoint. Untuk setiap tindakan, ini mencantumkan izin yang didelegasikan dan aplikasi yang dapat digunakan aplikasi klien untuk melakukan tindakan ini. Izin diurutkan naik berdasarkan hak istimewanya, sehingga izin dengan hak istimewa paling sedikit dicantumkan terlebih dahulu.

Mulai hari ini, file jenis CSOM yang kami sertakan dengan Dev Proxy, tidak lengkap. Kami bekerja sama dengan komunitas kami untuk mendokumenkan lebih banyak jenis. Sementara itu, Anda dapat memperbaruinya untuk menyertakan jenis dan izin yang Anda butuhkan jika informasi yang Anda butuhkan hilang. Anda kemudian dapat menggunakan file jenis Anda sendiri. Kami mendorong Anda untuk berkontribusi perubahan Anda kembali ke komunitas sehingga kami semua dapat memperoleh manfaat dari mereka, dengan membuat permintaan pull di repositori sampel Proksi Dev. Kami secara teratur menarik perubahan terbaru dari repositori ke repositori Dev Proxy sehingga Anda dapat memperoleh manfaat dari perubahan terbaru tanpa harus memperbarui penginstalan Dev Proxy Anda.