2단계: MSAL 필수 구성 요소 및 설정

Intune 앱 SDK는 인증 및 조건부 시작 시나리오에 Microsoft 인증 라이브러리를 사용합니다. 또한 장치 등록 시나리오 없이 관리를 위해 MSAL을 사용하여 MAM 서비스에 사용자 ID를 등록합니다.

참고

이 가이드는 여러 단계로 나뉩니다. 먼저 1단계: 통합 계획을 검토합니다.

스테이지 목표

  • Microsoft Entra ID를 사용하여 애플리케이션을 등록합니다.
  • MSAL을 iOS 애플리케이션에 통합합니다.
  • 애플리케이션이 보호된 리소스에 대한 액세스 권한을 부여하는 토큰을 얻을 수 있는지 확인합니다.

Microsoft Entra 앱 등록 설정 및 구성

MSAL은 앱에 부여된 토큰의 보안을 보장하기 위해 앱이 Microsoft Entra ID에 등록하고 고유한 클라이언트 ID를 만들고 URI를 리디렉션하도록 요구합니다. 애플리케이션이 자체 인증에 이미 MSAL을 사용하고 있는 경우 앱과 연결된 Microsoft Entra 앱 등록/클라이언트 ID/리디렉션 URI가 이미 있어야 합니다.

앱에서 아직 MSAL을 사용하지 않는 경우 Microsoft Entra ID에서 앱 등록을 구성하고 Intune SDK에서 사용해야 하는 클라이언트 ID 및 리디렉션 URI를 지정해야 합니다.

앱이 현재 ADAL을 사용하여 사용자를 인증하는 경우 앱을 ADAL에서 MSAL로 마이그레이션하는 방법에 대한 자세한 내용은 iOS 및 macOS용 MSAL로 애플리케이션 마이그레이션 을 참조하세요.

앱은 MSAL의 최신 릴리스에 연결하는 것이 좋습니다.

설치 섹션에 따라 MSAL 바이너리를 앱에 넣습니다.

MSAL 구성

구성 섹션에 따라 MSAL을 구성합니다. 구성 섹션의 모든 단계를 따라야 합니다. 앱이 이미 Microsoft Entra ID에 등록되어 있는 경우 1단계를 무시합니다.

아래 항목에는 MSAL을 구성하고 연결하기 위한 추가 정보가 포함되어 있습니다. 애플리케이션에 적용되는 경우 다음 내용을 따르세요.

  • 앱에 정의된 키체인 액세스 그룹이 없는 경우 앱의 번들 ID를 첫 번째 그룹으로 추가합니다.
  • 키체인 액세스 그룹에 추가 com.microsoft.adalcache 하여 MSAL SSO(Single Sign-On)를 사용하도록 설정합니다.
  • MSAL 공유 캐시 키 집합 그룹을 명시적으로 설정하는 경우 로 설정되어 있는지 확인합니다.<appidprefix>.com.microsoft.adalcache 사용자가 재정의하지 않는 한 MSAL이 이를 설정합니다. 바꿀 com.microsoft.adalcache사용자 지정 키체인 그룹을 지정하려면 키를 사용하여 ADALCacheKeychainGroupOverrideIntuneMAMSettings 아래의 Info.plist 파일에서 지정합니다.

Intune 앱 SDK에 대한 MSAL 설정 구성

Microsoft Entra ID에서 애플리케이션에 대한 앱 등록이 구성되면 Intune Entra ID에 대한 인증 중에 앱 등록의 설정을 사용하도록 Intune App SDK를 구성할 수 있습니다. 다음 설정 채우기에 대한 자세한 내용은 Intune 앱 SDK에 대한 설정 구성을 참조하세요.

  • ADALClientId
  • ADALAuthority
  • ADALRedirectUri
  • ADALRedirectScheme
  • ADALCacheKeychainGroupOverride

다음과 같은 구성이 필요합니다.

  1. 프로젝트의 Info.plist 파일에서 키 이름이 ADALClientId있는 IntuneMAMSettings 사전에서 MSAL 호출에 사용할 클라이언트 ID를 지정합니다.

  2. 1단계에서 구성된 클라이언트 ID에 매핑되는 Microsoft Entra 앱 등록이 단일 Microsoft Entra 테넌트에서만 사용하도록 구성된 경우 애플리케이션의 Info.plist 파일 내의 IntuneMAMSettings 사전에서 키를 구성 ADALAuthority 합니다. Intune 모바일 응용 프로그램 관리 서비스에 대한 토큰을 획득하기 위해 MSAL에서 사용할 Microsoft Entra 기관을 지정합니다.

  3. 또한 키 이름이 ADALRedirectUri있는 IntuneMAMSettings 사전에서 MSAL 호출에 사용할 리디렉션 URI를 지정합니다. 또는 애플리케이션의 리디렉션 URI가 형식인 경우 대신 지정할 ADALRedirectScheme 수 있습니다.scheme://bundle_id

    또는 앱에서 런타임에 이러한 Microsoft Entra 설정을 재정의할 수 있습니다. 이렇게 하려면 클래스에서 IntuneMAMSettings ,aadClientIdOverride, aadRedirectUriOverride 및 속성을 설정aadAuthorityUriOverride하기만 하면 됩니다.

  4. iOS 앱에 Intune MAM(모바일 앱 관리) 서비스에 권한을 부여하는 단계를 따랐는지 확인합니다. Intune 모바일 앱 관리 서비스에 대한 앱 액세스 권한 부여 아래의 Intune SDK 시작 가이드의 지침을 사용합니다.

    참고

    앱 보호 정책이 관리되는 디바이스와 관련된 경우 Intune이 통합된 애플리케이션의 앱 구성 프로필도 만들어야 합니다.

    Info.plist 접근 방식은 정적이고 런타임에 결정할 필요가 없는 모든 설정에 권장됩니다. 런타임 시 클래스 속성에 IntuneMAMSettings 할당된 값은 Info.plist에 지정된 해당 값보다 우선하며 앱을 다시 시작한 후에도 유지됩니다. SDK는 사용자가 등록 취소되거나 값이 지워지거나 변경될 때까지 정책 검사에 계속 사용합니다.

앱 시작 인증에 MSAL을 사용할 때 특별히 고려해야 할 사항

애플리케이션에서 앱에서 시작된 MSAL 대화형 인증 작업의 웹 보기로 SFSafariViewController, SFAuththenticationSession 또는 ASWebAuthenticationSession을 사용하지 않는 것이 좋습니다. 기본적으로 MSAL은 ASWebAuthenticationSession을 사용하므로 앱 개발자 는 웹 보기 유형을 명시적으로 WKWebView로 설정해야 합니다. 어떤 이유로 앱에서 대화형 MSAL 인증 작업에 WKWebView 이외의 웹 보기 유형을 사용해야 하는 경우 애플리케이션의 Info.plist에 있는 사전 아래 IntuneMAMSettings 로도 true 설정 SafariViewControllerBlockedOverride 되어야 합니다.

경고

이렇게 하면 인증 세션을 사용하도록 설정하기 위해 Intune의 SafariViewController 후크가 꺼집니다. 이렇게 하면 응용 프로그램이 SafariViewController를 사용하여 회사 데이터를 보는 경우 앱의 다른 곳에서 데이터가 누출될 위험이 있으므로 응용 프로그램은 이러한 웹 보기 유형에서 회사 데이터를 표시해서는 안 됩니다.

종료 조건

  • Microsoft Entra 앱 등록 페이지에서 앱을 등록하셨나요?
  • MSAL을 애플리케이션에 통합했나요?
  • 리디렉션 URI를 생성하고 MSAL 구성 파일에서 설정하여 브로커 인증을 활성화했나요?
  • IntuneMAMSettings 사전의 MSAL에 대한 필수 구성 정보가 Microsoft Entra 앱 등록의 정보와 일치하는지 확인하셨나요?

FAQ

ADAL은 어떤가요?

Microsoft의 이전 인증 라이브러리인 Azure ADAL(Active Directory 인증 라이브러리)더 이상 사용되지 않습니다.

애플리케이션이 이미 ADAL을 통합한 경우 MSAL(Microsoft 인증 라이브러리)을 사용하도록 애플리케이션 업데이트를 참조하세요. 앱을 ADAL에서 MSAL로 마이그레이션하려면 iOS 및 macOS용 MSAL로 애플리케이션 마이그레이션을 참조하세요.

Intune 앱 SDK를 통합하기 전에 ADAL에서 MSAL로 마이그레이션하는 것이 좋습니다.

다음 단계

위의 모든 종료 조건을 완료한 후 3단계: iOS 앱에 Intune SDK 통합으로 계속 진행합니다.