다음을 통해 공유


인증서 기반 인증을 사용하는 마이그레이션 관리자

마이그레이션 관리자를 사용하면 고객이 인증서 인증과 함께 Azure 앱 등록을 ID 모델로 사용하여 네트워크 파일 공유를 SharePoint 및 OneDrive로 마이그레이션할 수 있습니다.

준비 단계

1. 애플리케이션 등록

지침에 따라 Microsoft Entra 관리 센터 애플리케이션을 등록합니다. 이 애플리케이션의 이름을 MigApp으로 지정해 보겠습니다.

2. 권한 부여

Microsoft Entra 관리 센터 애플리케이션 앱 등록 이동하여 모든 애플리케이션 > 탭에서 'MigApp' 선택합니다.

다음으로, API 권한 페이지에서 필요한 API 권한을 부여합니다 .

특정 SharePoint 사이트로 콘텐츠를 이동하도록 'MigApp'을 제한하려면 SharePoint 및 Microsoft Graph API 따라 'Sites.Selected' 권한을 부여합니다.

  • SharePoint API:
    • 'Sites.Selected': REST 및 CSOM(클라이언트 쪽 개체 모델) 호출에 필요합니다.
    • Microsoft Graph API:
      • 'Sites.Selected': 사이트 관련 작업에 필요합니다.

'MigApp'이 모든 SharePoint 사이트로 콘텐츠를 이동할 수 있도록 하려면 SharePoint 및 Microsoft Graph API 따라 'Sites.FullControl.All' 권한을 부여합니다.

  • SharePoint API:
    • 'Sites.FullControl.All': 모든 사이트 모음을 완전히 제어하는 데 필요합니다.
    • Microsoft Graph API:
      • 'Sites.FullControl.All': 모든 사이트 모음을 완전히 제어하는 데 필요합니다.

더 많은 권한 부여

  • Microsoft Graph API:
    • 'User.Read.All': 사용자 매핑을 확인하는 데 필요합니다.
    • 'Group.Read.All': 사용자 매핑을 확인하는 데 필요합니다.
    • 'Organization.Read.All': 원격 분석을 올바른 지리적 위치로 보내는 데 필요합니다.

3. 인증서 업로드

인증서 & 비밀 페이지로 이동하여 인증서 탭을 선택합니다.

  • PKI(Enterprise 공개 키 인프라)에서 발급한 X.509 인증서의 공개 키를 업로드합니다.
  • 나중에 사용할 수 있는 '지문'의 값을 복사합니다.

대상 사이트 액세스 권한 부여

'MigApp'에 대해 SharePoint Sites.Selected 권한을 설정한 경우 마이그레이션이 시작되기 전에 모든 마이그레이션 대상 사이트에 대해 애플리케이션 FullControl 권한을 부여해야 합니다.

SharePoint 관리 사이트 읽기 권한 부여

또한 마이그레이션이 시작되기 전에 SharePoint 관리 사이트에대한 읽기 권한을 애플리케이션에 부여해야 합니다.

에이전트 설치

에이전트 워크스테이션에서 Windows 인증서 관리 저장소 '현재 사용자' 경로에 PKI(Enterprise Public Key Infrastructure)에서 발급한 X.509 인증서를 설치합니다. 명령을 certmgr.msc입력하여 인증서 관리 애플리케이션을 시작할 수 있습니다.

다음 콘텐츠를 사용하여 구성 Json 파일을 준비합니다.

{
    "Thumbprint":"The client credential certificate thumbprint",
    "TenantId":"Tenant ID",
    "ClientId":"App registration Id",
    "AdminUrl": "The SharePoint Admin site URL, example https://contoso-admin.sharepoint.com",
}

지침에 따라 에이전트 를 설치합니다. 에이전트 설정 시작 페이지에서 "인증서 인증" 옵션을 선택하고 이전 단계에서 준비된 인증서 인증 구성 파일을 로드합니다. 그런 다음, 나머지 설치 단계를 완료합니다.

  • 파일에 잘못된 특성 값이 포함된 경우 에이전트는 이유를 설명하는 오류 메시지를 표시하고 다음 단추를 사용하지 않도록 설정합니다.
  • 'MigApp'에 충분한 권한이 없는 경우 에이전트는 앱에 필요한 권한을 부여하라는 오류 메시지를 표시합니다.

에이전트가 성공적으로 시작된 후 마이그레이션 관리자에서 콘텐츠 마이그레이션을 시작할 수 있습니다.

사이트에 권한을 부여하는 단계

Graph API 사용하여 사이트에 사용 권한 부여

단계에 따라 Microsoft Graph API 사용하여 지정된 사이트에 권한을 부여합니다.

  1. 사이트 API 가져오기를 호출하여 사이트 ID를 가져옵니다.
  • 관리 사이트의 사이트 ID를 검색하려면 GET /sites/contoso-admin.sharepoint.com
  • 루트 사이트의 사이트 ID를 검색하려면 GET /sites/contoso.sharepoint.com 호출합니다.
  • 다른 사이트의 사이트 ID를 검색하려면 GET /sites/contoso.sharepoint.com:/sites/{site relative url} 또는 GET /sites/contoso.sharepoint.com:/teams/{site relative url}을 호출합니다.

응답 본문의 ID 속성 에는 쉼표로 구분된 세 개의 부분이 포함됩니다. 전체 문자열을 복사해야 합니다.

  1. 권한 만들기 API를 호출하여 사이트에 권한을 할당합니다. 1단계에서 복사한 문자열을 사용하여 요청 본문을 사용하여 POST /sites/{siteId}/permissions를 호출합니다.
  • 관리 사이트에 권한을 할당하려면 역할을 은 대로 설정합니다.
  • 다른 사이트의 경우 역할을 소유자로 설정합니다.
    {
      "roles": ["read/write/owner"],
      "grantedToIdentities": [{
        "application": {
          "id": "IdOfYourEntraApp",
          "displayName": "NameOfYourEntraApp"
        }
      }]
    }

PowerShell PnP를 사용하여 사이트에 사용 권한 부여

단계에 따라 PowerShell PnP를 사용하여 사이트에 권한을 부여합니다.

  1. 명령을 사용하여 Powershell7을 설치하고 필요한 모듈을 가져옵니다.

Install-Module PnP.PowerShell -Force and Import-Module PnP.PowerShell

  1. 명령을 실행하여 권한을 부여하기 위해 PnP-PowerShell 프록시로 재생되는 앱을 만듭니다. 실행 결과에서 클라이언트 ID를 복사합니다.

Register-PnPEntraIDAppForInteractiveLogin -ApplicationName "PnP PowerShell" -Tenant yourtenant.onmicrosoft.com -Interactive

  1. 이전 단계에서 검색된 클라이언트 ID를 사용하여 PnPClientId 변수를 설정합니다.

$PnPClientId = <The client ID from the step above>

  1. 명령을 실행하여 SharePoint 관리 사이트 연결 관리자 URL은 형식 https://contoso-admin.sharepoint.com입니다.

Connect-PnPOnline –interactive  –Url <AdminSiteUrl>  -ClientId <PnPClientId>

  1. 앱에 SharePoint 관리 사이트 액세스 권한을 부여합니다. 'ClientId'는 entra 앱 클라이언트 ID입니다.

Grant-PnPAzureADAppSitePermission -AppId <ClientId> -DisplayName <App name or a random name> -Permissions ``<Permission> -Site <DestinationSiteUrl>

  • 앱에 SharePoint 관리 사이트 읽기 권한을 부여하려면 명령은 다음과 같습니다.

Grant-PnPAzureADAppSitePermission -AppId <ClientId> -DisplayName <App name or a random name> -Permissions Read -Site < AdminSiteUrl >

  • 대상 사이트에 대한 FullControl 권한을 앱에 부여하려면 명령은 다음과 같습니다.

Grant-PnPAzureADAppSitePermission -AppId <ClientId> -DisplayName < App name or a random name > -Permissions FullControl -Site < DestinationSiteUrl >