다음을 통해 공유


MinimalCsomPermissionsPlugin

기록된 SharePoint Client-Side 개체 모델(CSOM) API 요청을 호출하는 데 필요한 최소한의 권한을 검색합니다.

기록된 SharePoint CSOM API 집합을 호출하는 데 필요한 최소 권한을 나열하는 개발자 프록시를 보여 주는 명령줄의 스크린샷

플러그 인 인스턴스 정의

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

구성 예제

{
  "minimalCsomPermissionsPlugin": {
    "$schema": "https://raw.githubusercontent.com/dotnet/dev-proxy/main/schemas/v1.0.0/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 형식 파일

CSOM MinimalCsomPermissionsPlugin 형식 파일을 사용하여 클라이언트 애플리케이션이 특정 CSOM API 집합을 호출하는 데 필요한 최소 권한을 결정합니다. CSOM 형식 파일은 SharePoint CSOM 형식 및 해당 권한에 대한 정보를 포함하는 JSON 파일입니다. 다음 예제에서는 예제 CSOM 형식 파일을 보여 줍니다.

{
  "$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": [
      ]
    }
  }
}

파일은 세 가지 주요 부분으로 구성됩니다.

  • types
  • returnTypes
  • actions

types 섹션에는 SharePoint CSOM 형식 및 해당 ID 목록이 포함되어 있습니다. 이 섹션은 보다 Microsoft.SharePoint.Client.RequestContext.Current이해하기 3747adcd-a3c3-41b9-bfab-4a64dd2f1e0a.Current 쉽기 때문에 가독성을 위해 포함되어 있습니다.

섹션에는 returnTypes 섹션의 메서드에 대한 반환 형식 목록이 포함되어 있습니다 actions . 플러그 인은 CSOM 요청을 구문 분석하여 CSOM API의 계층 구조를 트래버스할 때 이 정보를 사용합니다.

actions 섹션에는 SharePoint CSOM API를 사용하여 수행할 수 있는 작업 목록이 포함되어 있습니다. 각 작업에 대해 클라이언트 애플리케이션이 이 작업을 수행하는 데 사용할 수 있는 위임된 및 애플리케이션 권한을 나열합니다. 권한은 권한에 따라 오름차순으로 정렬되므로 최소 권한 권한이 먼저 나열됩니다.

현재 개발자 프록시에 포함된 CSOM 형식 파일은 불완전합니다. 커뮤니티와 협력하여 더 많은 형식을 문서화하고 있습니다. 한편 필요한 정보가 누락된 경우 필요한 형식 및 사용 권한을 포함하도록 업데이트할 수 있습니다. 그런 다음 사용자 고유의 형식 파일을 사용할 수 있습니다. 개발자 프록시 샘플 리포지토리에서 끌어오기 요청을 만들어 모든 사용자가 혜택을 누릴 수 있도록 변경 내용을 커뮤니티에 다시 기여하는 것이 좋습니다. 개발자 프록시 설치를 업데이트하지 않고도 최신 변경 내용을 활용할 수 있도록 리포지토리의 최신 변경 내용을 정기적으로 개발자 프록시 리포지토리로 가져옵니다.