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사용자 지정 키체인 그룹을 지정하려면 키를 ADALCacheKeychainGroupOverride사용하여 IntuneMAMSettings 아래의 Info.plist 파일에서 를 지정합니다.

Intune 앱 SDK에 대한 MSAL 설정 구성

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

  • ADALClientId
  • ADALAuthority
  • ADALRedirectUri
  • ADALRedirectScheme
  • ADALCacheKeychainGroupOverride

다음 구성이 필요합니다.

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

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

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

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

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

    참고

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

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

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

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

경고

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

종료 조건

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

FAQ

ADAL은 어떨까요?

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

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

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

다음 단계

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