MIP(Microsoft Information Protection) SDK 설정 및 구성

빠른 시작 및 자습서 문서에서는 MIP SDK 라이브러리 및 API를 사용하는 애플리케이션을 빌드하는 데 중점을 줍니다. 이 문서에서는 SDK를 사용하기 전에 Microsoft 365 구독 및 클라이언트 워크스테이션을 설정하고 구성하는 방법을 보여 줍니다.

필수 조건

시작하기 전에 다음 항목을 검토합니다.

중요한

사용자 개인 정보를 보호하려면 자동 로깅을 사용하도록 설정하기 전에 사용자에게 동의하도록 요청해야 합니다. 다음 예제는 Microsoft가 로깅 알림에 사용하는 표준 메시지입니다.

오류 및 성능 로깅을 켜면 오류 및 성능 데이터를 Microsoft 보내는 데 동의합니다. Microsoft 인터넷을 통해 오류 및 성능 데이터를 수집합니다("데이터"). Microsoft 이 데이터를 사용하여 Microsoft 제품 및 서비스의 품질, 보안 및 무결성을 제공하고 개선합니다. 예를 들어 Microsoft 사용하는 기능, 기능 응답 시간, 디바이스 성능, 사용자 인터페이스 상호 작용 및 제품에서 발생하는 문제와 같은 성능 및 안정성을 분석합니다. 데이터에는 현재 실행 중인 소프트웨어와 같은 소프트웨어 구성 및 IP 주소에 대한 정보도 포함됩니다.

Office 365 구독에 등록

대부분의 SDK 샘플을 사용하려면 Office 365 구독에 액세스해야 합니다. 다음 구독 유형 중 하나에 등록합니다.

이름 등록
Office 365 Enterprise E3 평가판(30일 평가판) https://go.microsoft.com/fwlink/p/?LinkID=403802
Office 365 Enterprise E3 또는 E5 https://www.microsoft.com/microsoft-365/enterprise/office-365-e3
Enterprise Mobility and Security E3 또는 E5 https://www.microsoft.com/security
Azure Information Protection Premium P1 또는 P2 보안 및 규정 준수를 위한 Microsoft 365 라이선스 지침
Microsoft 365 E3, E5 또는 F1 https://www.microsoft.com/microsoft-365/enterprise/microsoft365-plans-and-pricing

참고

Azure Information Protection 프리미엄 P1 또는 P2는 더 이상 독립 실행형 제안으로 포함되지 않습니다. Microsoft 365 E3 또는 E5 또는 Enterprise Mobility and Security E3 또는 E5의 일부로 구매할 수 있습니다.

민감도 레이블 구성

현재 레거시 레이블 구성을 사용하는 경우 레이블을 Microsoft Purview로 마이그레이션해야 합니다. 프로세스에 대한 자세한 내용은 민감도 레이블 및 해당 정책 만들기 및 구성을 참조하세요.

클라이언트 워크스테이션 구성

다음으로 다음 단계를 완료하여 클라이언트 컴퓨터를 올바르게 설정하고 구성합니다.

  1. Windows 10 워크스테이션을 사용하는 경우:

    Windows 업데이트를 사용하여 컴퓨터를 Windows 10 Fall Creators Update(버전 1709) 이상으로 업데이트합니다. 현재 버전을 확인하려면 다음을 수행합니다.

    • 왼쪽 아래에 있는 Windows 아이콘을 선택합니다.
    • PC에 대해 입력하고 Enter 키를 누릅니다.
    • 아래쪽의 Windows 사양까지 스크롤하고 버전 아랫부분을 살펴봅니다.
  2. Windows 11 또는 Windows 10 워크스테이션을 사용하는 경우:

    워크스테이션에서 개발자 모드 를 켭니다.

    • 왼쪽 아래에 있는 Windows 아이콘을 선택합니다.
    • 개발자 기능 사용을 입력하고 개발자 기능 사용 항목이 나타나면 Enter 키를 누릅니다.
    • 설정 대화 상자의 개발자용 탭의 개발자 기능 사용에서 개발자 모드 옵션을 선택합니다.
    • 설정 대화 상자를 닫습니다.
  3. 다음 워크로드 및 선택적 구성 요소를 사용하여 Visual Studio 2022를 설치합니다.

    • 유니버설 Windows 플랫폼 개발 Windows 워크로드 및 다음과 같은 선택적 구성 요소:

      • C++ 유니버설 Windows 플랫폼 도구
      • Windows 10 SDK 10.0.16299.0 SDK 이상(기본적으로 포함되지 않은 경우)
    • C++로 데스크톱 개발 Windows 워크로드 및 다음과 같은 선택적 구성 요소:

      • Windows 10 SDK 10.0.16299.0 SDK 이상(기본적으로 포함되지 않은 경우)

      Visual Studio 설정.

  4. MSAL.PS PowerShell 모듈을 설치합니다.

    • 설치하려면 관리자 권한이 필요하므로 다음 옵션 중 하나를 사용합니다.

      • 관리자 권한이 있는 계정으로 컴퓨터에 로그인합니다.
      • 관리자 권한으로 Windows PowerShell 세션을 실행합니다(관리자 권한으로 실행).
    • Install-Module -Name MSAL.PS cmdlet을 실행합니다.

      PS C:\WINDOWS\system32> Install-Module -Name MSAL.PS
      
      Untrusted repository
      You are installing the modules from an untrusted repository. If you trust this repository, change its
      InstallationPolicy value by running the Set-PSRepository cmdlet. Are you sure you want to install the modules from
      'PSGallery'?
      [Y] Yes  [A] Yes to All  [N] No  [L] No to All  [S] Suspend  [?] Help (default is "N"): A
      
      PS C:\WINDOWS\system32>
      
  5. 파일 다운로드:

    MIP SDK는 지원되는 각 플랫폼 및 언어에 대해 별도의 다운로드와 함께 다음 플랫폼에서 지원됩니다.

    운영 체제 버전 다운로드 노트
    Ubuntu 22.04 C++ tar.gz
    Java(미리 보기) tar.gz
    .NET 코어
    Ubuntu 24.04 C++ tar.gz
    Java(미리 보기) tar.gz
    .NET 코어
    레드햇 엔터프라이즈 리눅스 8 및 9 C++ tar.gz
    데비안 10 및 11 C++ tar.gz
    macOS 지원되는 모든 버전 C++ .zip Xcode 개발에는 13 이상이 필요합니다.
    윈도우즈 지원되는 모든 버전, 32/64비트 C++
    C++/.NET NuGet
    Java(미리 보기) .zip
    안드로이드 9.0 이상 C++ .zip 보호 및 정책 SDK만 해당합니다.
    아이폰 OS 지원되는 모든 버전 C++ .zip 보호 및 정책 SDK만 해당합니다.

    Tar.gz/.zip 다운로드

    Tar.gz 및 .zip 다운로드에는 각 API에 대해 하나씩 압축된 파일이 포함됩니다. 압축 파일은 다음 명명 규칙을 사용합니다. 여기서 >APIupe = <, protection 또는 >, 그리고 fileOSmip_sdk_<API>_<OS>_1.0.0.0.zip (or .tar.gz) = 플랫폼 <입니다. 예를 들어 Debian의 Protection SDK 이진 파일 및 헤더 파일은 다음과 같습니다 mip_sdk_protection_debian9_1.0.0.0.tar.gz. 포함된 각 .tar.gz/.zip 파일은 세 개의 디렉터리로 분할됩니다.

    • Bins: 각 플랫폼 아키텍처에 대해 컴파일된 이진 파일입니다(해당하는 경우).
    • 포함: 헤더 파일(C++).
    • Samples: 샘플 애플리케이션에 대한 소스 코드입니다.

    NuGet 패키지

    Visual Studio 개발을 수행하는 경우 NuGet 패키지 관리자 콘솔을 사용하여 SDK를 설치할 수도 있습니다.

    Install-Package Microsoft.InformationProtection.File
    Install-Package Microsoft.InformationProtection.Policy
    Install-Package Microsoft.InformationProtection.Protection
    
  6. NuGet 패키지를 사용하지 않는 경우 SDK 이진 파일의 경로를 PATH 환경 변수에 추가합니다. PATH 변수를 사용하면 클라이언트 애플리케이션이 런타임에 종속 DLL(이진 파일)을 찾을 수 있습니다. 이 단계는 선택 사항입니다.

    Windows 11 또는 Windows 10 워크스테이션을 사용하는 경우:

    • 왼쪽 아래에 있는 Windows 아이콘을 선택합니다.

    • 경로를 입력하고 시스템 환경 변수 편집 항목이 나타나면 Enter 키를 누릅니다.

    • 시스템 속성 대화 상자에서 환경 변수를 선택합니다.

    • 환경 변수 대화 상자에서 사용자>에 대한 사용자 변수 아래의 경로 변수 행을 <선택한 다음 편집을 선택합니다.

    • 환경 변수 편집 대화 상자에서 새로 만들기를 선택하여 편집 가능한 행을 만듭니다. file\bins\debug\amd64, protection\bins\debug\amd64, upe\bins\debug\amd64 하위 디렉터리의 각 전체 경로마다 새 행을 추가합니다. SDK 디렉터리는 다음과 같은 형식으로 <API>\bins\<target>\<platform>에 저장됩니다.

      • <API> = file, protection, upe
      • <대상> = debug, release
      • <플랫폼> = amd64 (x64), x86, 등.
    • 경로 변수 업데이트를 마치면 [확인]을 선택합니다. 그런 다음, 환경 변수 대화 상자로 돌아가면 확인을 선택합니다.

  7. GitHub SDK 샘플을 다운로드합니다. 이 단계는 선택 사항입니다.

Microsoft Entra ID를 사용하여 클라이언트 애플리케이션 등록

Microsoft 365 구독 프로비저닝 프로세스의 일부로 Microsoft 연결된 Microsoft Entra 테넌트를 만듭니다. Microsoft Entra 테넌트는 Microsoft 365 사용자 계정 및 애플리케이션 계정에 대한 ID 및 액세스 관리를 제공합니다. 보안 API(예: MIP API)에 액세스해야 하는 애플리케이션에는 애플리케이션 계정이 필요합니다.

런타임에 인증 및 권한 부여의 경우 보안 주체 는 계정을 나타내고 계정의 ID 정보에서 파생됩니다. 애플리케이션 계정을 나타내는 보안 주체를 서비스 주체라고 합니다.

빠른 시작 및 MIP SDK 샘플에 사용할 애플리케이션 계정을 Microsoft Entra ID 등록하려면 다음을 수행합니다.

중요한

계정 만들기를 위해 Microsoft Entra 테넌트 관리에 액세스하려면 구독에서 소유자 역할의 멤버인 사용자 계정으로 Azure 포털에 로그인합니다. 테넌트 구성에 따라 애플리케이션을 등록하려면 전역 관리자 디렉터리 역할의 멤버여야 할 수도 있습니다. 제한된 계정으로 테스트합니다. 계정에 필요한 SCC 엔드포인트에 액세스하는 데 필요한 권한만 부여합니다. 로깅 시스템은 명령줄을 통해 전달된 일반 텍스트 암호를 수집할 수 있습니다.

  1. 새 애플리케이션 등록 섹션의 단계를 따릅니다. 가이드 단계를 진행할 때 테스트를 위해 지정된 속성에 다음 값을 사용합니다.

    • 지원되는 계정 유형 - 이 조직 디렉터리에서만 계정을 선택합니다.
    • 리디렉션 URI - 리디렉션 URI 유형을 공용 클라이언트(모바일 및 데스크톱)로 설정합니다. 애플리케이션에서 Microsoft 인증 라이브러리(MSAL)를 사용하는 경우 http://localhost를 사용하세요. 그렇지 않은 경우 <app-name>://authorize 형식을 사용합니다.
  2. 완료되면 새 애플리케이션 등록을 위해 등록된 앱 페이지로 돌아갑니다. 빠른 시작에 필요한 대로 GUID를 복사하여 애플리케이션(클라이언트) ID 필드에 저장합니다.

  3. API 권한을 선택하여 클라이언트가 액세스해야 하는 API 및 권한을 추가합니다. 권한 추가를 선택하여 요청 API 권한 창을 엽니다.

  4. 런타임에 애플리케이션에 필요한 MIP API 및 권한을 추가합니다.

    • API 선택 페이지에서 Azure Rights Management Services를 선택합니다.
    • Azure Rights Management Services API 페이지에서 위임된 권한을 선택합니다.
    • 사용 권한 선택 섹션에서 user_impersonation 권한을 선택합니다. 이 권한을 통해 애플리케이션은 사용자를 대신하여 보호된 콘텐츠를 만들고 액세스할 수 있습니다.
    • 저장할 권한 추가 를 선택합니다.
  5. 4단계를 반복하지만 이번에는 API 선택 페이지로 이동한 후 API를 검색합니다.

    • API 선택 페이지에서 조직에서 사용하는 API를 선택합니다. 그런 다음 검색 상자에 Microsoft Information Protection 동기화 서비스를 입력하고 선택합니다.
    • Microsoft Information Protection 동기화 서비스 API 페이지에서 위임된 권한을 선택합니다.
    • UnifiedPolicy 노드를 확장하고 UnifiedPolicy.User.Read를 선택합니다.
    • 저장할 권한 추가 를 선택합니다.
  6. API 권한 페이지로 돌아가면 관리자 동의 부여(테넌트 이름)를 선택한 다음, 예(예)를 선택합니다. 이 단계에서는 이 등록을 사용하여 지정된 권한으로 API에 액세스하는 애플리케이션에 대한 사전 동의를 제공합니다. 전역 관리자로 로그인한 경우 애플리케이션을 실행하는 테넌트에 있는 모든 사용자에 대한 동의가 기록됩니다. 그렇지 않으면 사용자 계정에만 적용됩니다.

완료되면 애플리케이션 등록 및 API 사용 권한은 다음 예제와 비슷해야 합니다.

Microsoft Entra 앱 등록. Microsoft Entra 앱 API 권한.

클라이언트 애플리케이션에 필요한 API 및 사용 권한을 추가하는 방법에 대한 자세한 내용은 웹 API에 액세스하도록 클라이언트 애플리케이션 구성을 참조하세요.

IPIA(Information Protection Integration Agreement) 요청

MIP를 사용하여 개발한 애플리케이션을 일반에 릴리스하기 전에 Microsoft 공식 계약을 신청하고 완료해야 합니다.

참고

내부 용도로만 사용하려는 애플리케이션에는 이 계약이 필요하지 않습니다.

  1. 다음과 같은 정보가 포함된 IPIA@microsoft.com에 이메일을 전송하여 IPIA를 가져옵니다.

    제목: 회사 이름에 대한 IPIA 요청

    이메일의 본문에는 다음이 포함됩니다.

    • 애플리케이션 및 제품 이름
    • 요청자의 성과 이름
    • 요청자의 이메일 주소
  2. Microsoft IPIA 요청을 받으면 Microsoft 양식을 Word 문서로 보냅니다. IPIA의 약관을 검토하고 다음과 같은 정보를 포함하여 양식을 IPIA@microsoft.com에 반환합니다.

    • 회사의 법적 이름
    • 주/지방(미국/캐나다) 또는 통합 국가/지역
    • 회사 URL
    • 연락처의 전자 메일 주소
    • 회사의 다른 주소(선택 사항)
    • 회사 애플리케이션의 이름
    • 애플리케이션에 대한 간략한 설명
    • Azure 테넌트 ID
    • 애플리케이션의 앱 ID
    • 중요한 상황 대응을 위한 회사 연락처, 전자 메일 및 전화
  3. Microsoft 양식을 받으면 Microsoft 디지털 서명에 대한 최종 IPIA 링크를 보냅니다. 서명 후 적절한 Microsoft 담당자가 계약에 서명합니다.

서명된 IPIA가 이미 있나요?

이미 서명된 IPIA가 있고 릴리스할 애플리케이션에 대한 새 앱 ID 를 추가하려는 경우 전자 메일을 IPIA@microsoft.com 보내고 다음 정보를 제공합니다.

  • 회사 애플리케이션의 이름
  • 애플리케이션에 대한 간략한 설명
  • Azure 테넌트 ID(이전과 동일한 경우에도)
  • 애플리케이션의 앱 ID
  • 중요한 상황 대응을 위한 회사 연락처, 전자 메일 및 전화

전자 메일을 보낸 후 수신 승인을 위해 최대 72시간을 기다립니다.

앱에 필요한 종속성이 있는지 확인

Windows MIP SDK를 사용하여 빌드된 애플리케이션에는 Visual C++ 런타임 구성 요소가 아직 설치되어 있지 않은 경우 필요합니다.

이러한 종속성은 애플리케이션을 릴리스로 빌드하는 경우에만 작동합니다. 애플리케이션을 디버그로 빌드하는 경우 Visual C++ 런타임 디버그 DLL을 애플리케이션과 함께 포함하거나 컴퓨터에 설치합니다.

Linux의 MIP SDK를 사용하여 빌드된 애플리케이션에는 지원되는 종속성 버전이 필요합니다.

바이너리에는 각 운영체제에 필요한 종속성을 설치하는 명령이 들어 있는 how-to-build-and-run.txt 파일을 포함한 samples 폴더가 포함되어 있습니다.

다음 단계