InfoGrab DocsInfoGrab Docs

Microsoft Intune MAM(모바일 애플리케이션 관리) 구성

요약

iOS에서 Mattermost 모바일 앱이 Microsoft Intune 앱 보호 정책(MAM)을 적용하도록 구성하여 기기 등록(MDM) 없이도 BYOD(개인 기기 업무 활용) 및 혼용 기기에서 조직 데이터를 보호할 수 있습니다.

iOS에서 Mattermost 모바일 앱이 Microsoft Intune 앱 보호 정책(MAM)을 적용하도록 구성하여 기기 등록(MDM) 없이도 BYOD(개인 기기 업무 활용) 및 혼용 기기에서 조직 데이터를 보호할 수 있습니다.

이 가이드는 iOS에서 Intune MAM을 성공적으로 활성화하는 데 필요한 구성을 설명합니다.

먼저 읽어보세요#

Mattermost의 Intune MAM 적용은 ID 기반이며 시스템 콘솔 > 환경 > 모바일 보안에서 적용된 인증 공급자로 선택된 로그인 방법에만 적용됩니다.

* 적용된 인증 공급자는 Azure AD objectId(IdAttribute = objectId)를 사용하여 사용자를 확인해야 합니다.

* MSAL 액세스 토큰에는 oid 클레임이 포함되어야 하며, 동일한 Azure AD objectId와 일치해야 합니다(신원 정렬 확인: objectId ↔ oid).

Important

Intune MAM 등록이 기술적 오류로 인해 실패하면, 영향을 받은 Mattermost 서버는 모바일 앱에서 제거되고 해당 서버에 대한 캐시된 데이터는 기기에서 삭제됩니다.

지원되지 않는 시나리오#

이 가이드는 다음 경우에는 적용되지 않습니다.

* Android 기기에서 Intune MAM이 필요한 경우.

* Microsoft Entra ID가 지원하지 않는 로그인 방법에 대해 Intune MAM 적용을 원하는 경우.

* 적용된 인증 공급자가 사용자를 Azure AD objectId로 확인할 수 없는 경우.

* 사용자가 적용된 로그인 방법에 대해 Intune MAM을 우회하거나 연기할 수 있는 롤아웃 모델이 필요한 경우.

게스트 액세스와 같은 다른 인증 방법은 별도로 활성화할 수 있지만, Intune MAM에 의해 평가되지 않습니다.

전제 조건#

계속하기 전에 다음을 확인하세요.

* Microsoft Entra ID가 인증에 사용되고 있습니다.

* Azure AD objectId를 권한 있는 신원으로 사용하기로 결정할 수 있습니다.

* 서버에 Mattermost Enterprise Advanced 라이선스를 사용할 수 있습니다.

* 대상 사용자가 Microsoft Intune에 라이선스가 부여되어 있습니다.

* Microsoft Entra에서 애플리케이션을 등록하고 테넌트 전체 관리자 동의를 부여할 수 있습니다.

* SAML에서 Intune MAM을 적용하는 경우, 사용자가 이미 Mattermost에 존재해야 합니다(모바일 로그인은 SAML에 대해 사용자를 생성하지 않습니다).

Note

이 가이드에서 OpenID Connect(OIDC)는 MSAL을 통해 Mattermost 모바일 앱에서 사용하는 Microsoft Entra 로그인 방법을 의미합니다.

구성 개요#

Intune MAM 적용을 성공적으로 수행하려면 다음 항목 전반에 걸쳐 조율된 구성이 필요합니다.

* Microsoft Entra ID – 앱 등록, 범위, API 권한, 관리자 동의

* Microsoft Intune – iOS 앱 보호 정책

* Mattermost 서버 – MAM 활성화 및 공급자 선택

* Mattermost 모바일 앱(iOS) – 등록 및 적용

아래 단계를 순서대로 완료하세요.

설정 요약#

  1. 신원 요구 사항 및 정렬을 확인합니다(objectId ↔ oid).
  2. Microsoft Entra를 구성합니다(서버에서 참조하는 애플리케이션).
  3. Intune 앱 보호 정책을 구성합니다.
  4. Mattermost에서 Intune MAM을 활성화하고 적용할 공급자를 선택합니다.
  5. 공식 Mattermost iOS 앱을 배포합니다.
  6. 등록 및 적용을 검증합니다.

나중에 필요한 값#

설정 중에 다음 값을 확보하세요.

확인 위치사용 위치
디렉터리(테넌트) IDEntra 앱 등록 개요Mattermost 시스템 콘솔
애플리케이션(클라이언트) IDEntra 앱 등록 개요Mattermost 시스템 콘솔
애플리케이션 ID URIEntra 앱 > API 노출승인된 클라이언트 애플리케이션에서 api://<APPLICATION-ID>/login.mattermost 범위 참조를 구성하는 데 사용
login.mattermost 범위Entra 앱 > API 노출승인된 클라이언트 애플리케이션
모바일 클라이언트 애플리케이션 IDMattermost에서 제공Entra 앱 > 승인된 클라이언트 애플리케이션
iOS 번들 ID(프로덕션/베타)이 가이드Intune 앱 보호 정책

1단계: Intune MAM에 대한 신원 구성#

이 단계에서는 Intune MAM 적용을 위해 선택된 인증 공급자에 필요한 신원 모델을 정의합니다.

필수 신원 모델#

Mattermost용 Microsoft Intune MAM은 Azure AD objectId를 권한 있는 사용자 식별자로 요구합니다. 다음은 협상 불가능한 사항입니다.

* 적용된 공급자에 대해 IdAttribute는 반드시 objectId와 같아야 합니다.

* MSAL 액세스 토큰에는 oid 클레임이 포함되어야 합니다.

* Intune MAM을 활성화하기 전에 신원 정렬(objectId ↔ oid)을 확인하세요.

신원 정렬 확인(objectId ↔ oid)#

동일한 사용자에 대해 다음 값이 일치해야 합니다.

* Azure AD objectId

* MSAL 액세스 토큰 oid 클레임

* SAML objectidentifier(해당하는 경우)

* LDAP msDS-aadObjectId(해당하는 경우)

불일치가 있으면 등록이 방지됩니다.

인증 방법별 신원 적용#

OIDC(MSAL을 통한 모바일 로그인)

* Mattermost는 신원 확인 및 등록에 MSAL 액세스 토큰을 사용합니다.

* 신원 정렬을 확인하세요(objectId ↔ oid).

SAML(Entra 기반)

* SamlSettings.IdAttribute는 반드시 objectidentifier에 매핑되어야 합니다.

* 이메일, UPN, immutableID는 지원되지 않습니다.

* 모바일 로그인 전에 사용자가 이미 Mattermost에 존재해야 합니다.

LDAP(Entra ID Domain Services)

* msDS-aadObjectId를 사용하세요.

* objectGUID는 사용하지 마세요.

런타임 적용 동작#

Intune MAM이 공급자에 대해 활성화되면:

* 적용은 활성 세션 중에도 발생하며, 로그인 시에만 국한되지 않습니다.

* 정책, 라이선스 또는 구성 변경으로 인해 Intune MAM이 새로 필요해지면 즉시 등록이 트리거될 수 있습니다.

* 사용자는 적용된 공급자에 대한 적용을 우회할 수 없습니다.

사전 점검 체크리스트#

  • 라이선스가 부여된 Intune 테스트 사용자 확보
  • 테넌트 전체 관리자 동의를 부여할 수 있는 권한
  • 적용할 공급자 확인(OIDC 또는 SAML)
  • IdAttribute = objectId 구성 완료
  • 신원 정렬 확인(objectId ↔ oid)
  • 공식 Mattermost iOS 앱 배포 완료
  • 대상 번들 ID 확인: com.mattermost.rn(프로덕션), com.mattermost.rnbeta(베타)

2단계: Intune MAM에 대한 Microsoft Entra 구성#

Mattermost 서버가 참조하는 단일 테넌트 Microsoft Entra 애플리케이션을 등록합니다. 이 애플리케이션은 MSAL 액세스 토큰을 검증하고 Intune MAM 등록을 지원합니다.

Mattermost 모바일 앱 자체를 등록하지는 않습니다. 리디렉션 URI 구성은 필요하지 않습니다.

Entra 애플리케이션 등록#

  1. ID > 애플리케이션 > 앱 등록으로 이동합니다.
  2. 새 등록을 선택합니다.
  3. 구성:
  4. * 이름: Mattermost Mobile (Intune MAM)

    * 지원되는 계정 유형: 단일 테넌트
  5. 앱을 등록합니다.
  6. 다음을 복사합니다.

* 애플리케이션(클라이언트) ID

* 디렉터리(테넌트) ID

API 노출 및 범위 생성#

  1. API 노출로 이동합니다.
  2. 애플리케이션 ID URI가 설정되어 있는지 확인합니다(예: api://<APPLICATION-ID>).
  3. login.mattermost라는 이름의 범위를 추가합니다.
  4. 변경 사항을 저장합니다.

공식 모바일 클라이언트 승인#

Mattermost에서 제공하는 공식 Mattermost Mobile 클라이언트 애플리케이션 ID가 login.mattermost 범위를 요청하도록 승인합니다.

  1. Entra 앱 등록에서 API 노출로 이동합니다.
  2. 승인된 클라이언트 애플리케이션에서 클라이언트 애플리케이션 추가를 선택합니다.
  3. Mattermost에서 제공하는 공식 Mattermost Mobile 클라이언트 애플리케이션 ID를 다음과 같이 추가합니다.
    • 베타: 64e9952b-20eb-46dc-92ad-99089ed24903
    • 프로덕션: 9ac649f1-4f77-44d6-9792-b2f54ab3c9a7
  4. api://<APPLICATION-ID>/login.mattermost 범위를 승인합니다.
  5. 변경 사항을 저장합니다.

API 권한 및 관리자 동의#

  1. API 권한으로 이동합니다.
  2. 권한 추가를 선택합니다.
  3. 다음 Microsoft Graph 위임된 권한을 추가합니다.
  4. * Microsoft Graph → email(위임됨)

    * Microsoft Graph → profile(위임됨)
  5. 테넌트에 대해 관리자 동의 부여를 선택합니다.

이는 Mattermost 서버가 참조하는 Entra 애플리케이션에 대해 고객 관리자가 부여해야 하는 권한입니다.

이러한 권한이 누락되었거나 테넌트 전체 관리자 동의가 부족한 경우, 등록이 Entra 권한/관리자 동의 오류(예: AADSTS650057)로 실패하거나 최초 로그인 시 사용자에게 표시되는 동의 거부됨 메시지가 나타날 수 있습니다.

MSAL 토큰 및 필수 클레임 구성#

Intune MAM을 활성화하기 전에, Entra 앱 등록이 모바일 로그인 중 Mattermost가 요구하는 클레임을 포함한 액세스 토큰을 발급하는지 확인하세요.

  1. Entra 앱 등록에서 토큰 구성으로 이동합니다.
  2. 선택적 클레임 추가를 선택합니다.
  3. 토큰 유형에서 액세스를 선택합니다.
  4. 다음 선택적 클레임을 추가합니다.
  5. * email

    * family_name * given_name * preferred_username * upn
  6. 변경 사항을 저장합니다.
Note

Mattermost Intune MAM 적용은 MSAL 액세스 토큰을 사용합니다. 필수 클레임이 누락되면 로그인 및/또는 등록이 실패할 수 있습니다.

MSAL v2 액세스 토큰 활성화#

  1. 매니페스트를 엽니다.
  2. 토큰 버전을 2로 설정합니다.
  3. * 매니페스트에 api.requestedAccessTokenVersion이 표시되면 2로 설정합니다.

    * 그렇지 않으면 accessTokenAcceptedVersion2로 설정합니다.
  4. 변경 사항을 저장합니다.

3단계: Intune 앱 보호 정책 구성#

  1. Intune 관리 센터 > 앱 > 앱 보호 정책으로 이동합니다.
  2. 정책을 생성합니다.
  3. * 플랫폼: iOS/iPadOS

    * 대상 앱: 관리되는 앱
  4. 번들 ID로 Mattermost 앱을 추가합니다.
  5. * com.mattermost.rn(프로덕션)

    * com.mattermost.rnbeta(베타)
  6. 보호 설정을 구성합니다.
  7. Entra ID 사용자 그룹에 할당합니다.
  8. 변경 사항을 저장합니다.

프로덕션 앱과 베타 앱에는 각각 별도의 정책이 필요합니다.

4단계: Intune MAM에 대한 Mattermost 서버 구성#

  1. 시스템 콘솔 > 환경 > 모바일 보안으로 이동합니다.
  2. Microsoft Intune MAM 활성화True로 설정합니다.
  3. 인증 공급자를 선택합니다.
  4. * OpenID Connect(Entra 기반)

    * SAML 2.0(Entra 기반)
  5. 다음을 입력합니다.
  6. * 테넌트 ID

    * 애플리케이션(클라이언트) ID
  7. 변경 사항을 저장합니다.

적용된 공급자는 IdAttribute = objectId를 사용하여 신원을 확인해야 합니다.

5단계: Mattermost iOS 앱 배포#

다음을 사용하여 공식 Mattermost iOS 앱을 다운로드하고 설치하세요.

* Apple App Store(프로덕션)

* TestFlight(베타)

래핑되거나, 재서명되거나, 비공개로 배포된 앱은 지원되지 않습니다.

6단계: 등록 검증#

iOS에서 라이선스가 부여된 테스트 사용자로 검증하세요.

다음을 확인하세요.

* 등록이 성공적으로 완료됨

* 적용이 로그인 시 및 세션 중간에 적용됨

* 신원 정렬이 올바름(objectId ↔ oid)

모바일 로그인 중 예상되는 동작#

  1. 사용자가 MSAL을 통해 로그인합니다.
  2. Mattermost가 액세스 토큰을 검증합니다.
  3. Intune MAM 등록이 트리거됩니다.
  4. 앱 보호 정책이 적용됩니다.

등록이 필요하지만 완료할 수 없는 경우, 등록이 성공할 때까지 액세스가 차단됩니다.

문제 해결#

대부분의 실패는 다음으로 인해 발생합니다.

* 신원 불일치(objectId ↔ oid)

* IdAttributeobjectId로 설정되지 않음

* Entra API 권한 또는 관리자 동의 누락

* 앱 보호 정책이 사용자 또는 앱을 대상으로 하지 않음

* 지원되지 않는 클라이언트 또는 플랫폼

빠른 진단#

  1. 신원 정렬을 확인합니다(objectId ↔ oid).
  2. IdAttribute = objectId를 확인합니다.
  3. Entra 권한 및 관리자 동의를 확인합니다.
  4. 인증 공급자 선택을 확인합니다.
  5. Intune 정책 대상 지정을 확인합니다.

사용자가 등록을 거부한 경우, 재시도가 허용됩니다.

Intune MAM 오류#

아래 오류는 모바일 로그인 중이나 Intune MAM 적용이 세션 중간에 트리거될 때 발생할 수 있습니다. 일부 오류는 Mattermost 모바일 앱에 표시되고, 다른 오류는 표시되지 않으며 Mattermost 서버 로그를 사용하여 진단해야 합니다.

Note

아래 표에서 폴백: Web SSO는 모바일 앱이 Intune MAM이 활성화되지 않은 것처럼 구성된 로그인 방법(SAML 또는 OpenID Connect)의 비 Intune 버전을 사용함을 의미합니다.

오류 의미 관리자 원인 및 다음 단계
Enrollment Failed
오류 ID: (다양함)
HTTP: (다양함)
시나리오: 등록 실패(기술적)
사용자 메시지: "Enrollment Failed"
재시도: 불가
폴백: 없음
기술적 오류로 인해 Intune MAM 등록이 실패했습니다. 원인: 기술적 실패(MSAL 오류, Intune 등록 API 실패, 신원 불일치 또는 Entra 권한 누락)로 인해 등록을 완료할 수 없습니다.
동작: 서버가 즉시 제거되며 재시도 옵션이 없습니다. 해당 서버에 대한 캐시된 데이터가 삭제됩니다.
다음 단계: 근본 원인을 해결한 다음, 사용자가 모바일 앱에서 서버를 다시 추가하도록 안내하세요.
관리자 확인 사항: IdAttribute = objectId를 확인하세요. 신원 정렬(objectId ↔ oid)을 확인하세요. 테넌트 전체 관리자 동의를 확인하세요. 앱 보호 정책이 사용자와 올바른 iOS 번들 ID를 대상으로 하는지 확인하세요.
Enrollment Declined
오류 ID: (다양함)
HTTP: (다양함)
시나리오: 사용자가 등록을 거부함
사용자 메시지: "Enrollment Declined"
재시도: 가능
폴백: 없음
사용자가 Intune MAM 등록을 거부했습니다. 원인: 사용자가 등록 프롬프트를 취소했습니다.
동작: 재시도 옵션이 표시됩니다. 이후 기술적 등록 실패가 발생하지 않는 한 서버 데이터는 제거되지 않습니다.
다음 단계: 준비가 되면 사용자에게 등록을 재시도하도록 안내하세요.
Consent Denied
오류 ID: (다양함)
HTTP: (다양함)
시나리오: 관리자 동의 누락(최초 로그인)
사용자 메시지: "You denied consent for Intune management. The affected accounts have been unenrolled and signed out."
재시도: 가능(관리자 동의 이후)
폴백: 없음
필요한 Entra 앱 권한에 테넌트 전체 관리자 동의가 없어 등록을 완료할 수 없습니다. 원인: Mattermost 서버에 구성된 Entra 앱 등록의 필수 위임된 권한에 테넌트 전체 관리자 동의가 부여되지 않았습니다.
동작: 이 메시지는 사용자가 동의를 거부한 것처럼 보일 수 있지만, 근본 문제는 관리자 동의 누락입니다.
다음 단계: Microsoft Entra에서 Mattermost에 구성된 동일한 Entra 앱 등록에 대해 Microsoft Graph 위임된 권한 emailprofile에 테넌트 전체 관리자 동의를 부여한 다음, 사용자가 모바일 로그인을 재시도하도록 안내하세요.
(표시 없음)
오류 ID: api.user.login_by_intune.not_available.app_error
HTTP: 501
시나리오: Enterprise 빌드 아님
사용자 메시지: (표시 없음)
재시도: 불가
폴백: 표준 SSO(비 Intune)
이 서버에서는 Intune MAM 로그인을 사용할 수 없습니다. 원인: 서버가 Intune MAM을 지원하지 않습니다(이 빌드에서 사용할 수 없거나 배포에 대해 활성화되지 않음).
다음 단계: 서버 빌드에 Intune MAM 지원이 포함되어 있고 배포에 Enterprise Advanced 라이선스가 있는지 확인하세요.
사용자 안내: 서버가 업데이트되거나 구성이 수정되는 동안, 사용자가 웹/데스크톱에서 해당 공급자(SAML 또는 OpenID Connect)의 표준(비 Intune) SSO 흐름으로 로그인하도록 안내하세요.
(표시 없음)
오류 ID: api.user.login_by_intune.not_configured.app_error
HTTP: 400
시나리오: Intune이 구성되지 않음
사용자 메시지: (표시 없음)
재시도: 불가
폴백: 표준 SSO(비 Intune)
조직에 Intune MAM이 활성화되어 있지만 서버에 구성되지 않았습니다. 원인: 시스템 콘솔 > 환경 > 모바일 보안에서 Intune MAM이 완전히 구성되지 않았습니다.
다음 단계: Microsoft Intune MAM을 활성화하고 테넌트 ID, 애플리케이션(클라이언트) ID, 인증 공급자가 올바르게 설정되었는지 확인하세요.
관리자 확인 사항: 선택된 인증 공급자가 Entra 기반인지, 필요한 권한/관리자 동의가 Entra 앱 등록에 대해 부여되었는지 확인하세요.
사용자 안내: 서버가 업데이트되거나 구성이 수정되는 동안, 사용자가 웹/데스크톱에서 해당 공급자(SAML 또는 OpenID Connect)의 표준(비 Intune) SSO 흐름으로 로그인하도록 안내하세요.
Bot accounts cannot sign in using this method.
오류 ID: api.user.login_by_intune.bot_login_forbidden.app_error
HTTP: 403
시나리오: 봇이 로그인을 시도함
사용자 메시지: "Bot accounts cannot sign in using this method."
재시도: 불가
폴백: 없음
이 계정은 Intune MAM 로그인을 사용할 수 없습니다. 원인: 봇 계정은 Intune MAM을 통해 인증할 수 없습니다.
다음 단계: Intune MAM 등록 및 액세스에는 사람 사용자 계정을 사용하세요.
Your account has been deactivated. Please contact your administrator.
오류 ID: api.user.login_by_intune.account_locked.app_error
HTTP: 409
시나리오: 사용자 삭제/비활성화됨
사용자 메시지: "Your account has been deactivated. Please contact your administrator."
재시도: 불가
폴백: 없음
이 계정은 로그인이 허용되지 않습니다. 원인: Mattermost에서 사용자가 삭제, 비활성화 또는 잠긴 상태입니다.
다음 단계: Mattermost에서 사용자 계정을 다시 활성화하거나 복원한 다음, 로그인 및 등록을 재시도하세요.
(표시 없음)
오류 ID: ent.intune.login.not_configured.app_error
HTTP: 403
시나리오: IsConfigured() = false
사용자 메시지: (표시 없음)
재시도: 불가
폴백: 표준 SSO(비 Intune)
현재 로그인 경로에 대해 Intune MAM이 구성되지 않았습니다. 원인: 요청된 인증 경로에 대해 Intune MAM이 구성되지 않았습니다(구성 미완료 또는 공급자 선택 불일치).
다음 단계: Intune MAM이 활성화 및 구성되어 있는지, 선택된 인증 공급자가 사용자의 실제 인증 방식(OIDC 대 SAML)과 일치하는지 확인하세요.
사용자 안내: 서버가 업데이트되거나 구성이 수정되는 동안, 사용자가 웹/데스크톱에서 해당 공급자(SAML 또는 OpenID Connect)의 표준(비 Intune) SSO 흐름으로 로그인하도록 안내하세요.
We couldn't complete your sign in. Please try again.
오류 ID: ent.intune.login.extract_auth_data.app_error
HTTP: 400
시나리오: IdAttribute 매핑 실패
사용자 메시지: "We couldn't complete your sign in. Please try again."
재시도: 가능(1회)
폴백: 없음
로그인 중 신원 매핑이 실패했습니다. 원인: 서버가 Intune MAM에 필요한 신원 속성을 추출하거나 매핑하지 못했습니다(일반적으로 IdAttribute 구성 오류 또는 토큰이 MSAL v2가 아님).
다음 단계: IdAttribute = objectId인지 확인한 다음 신원 정렬(objectId ↔ oid)을 확인하세요. Entra 앱이 v2 토큰(accessTokenAcceptedVersion = 2)을 발급하는지 검증하세요.
Your account isn't fully set up yet. Please sign in to Mattermost via the web or desktop app first.
오류 ID: ent.intune.login.account_not_found.app_error
HTTP: 428
시나리오: SAML 사용자 계정을 찾을 수 없음
사용자 메시지: "Your account isn't fully set up yet. Please sign in to Mattermost via the web or desktop app first."
재시도: 불가
폴백: 없음
SAML 기반 로그인에서 사용자가 Mattermost에 존재하지 않습니다. 원인: SAML이 Intune MAM 적용을 위해 선택된 공급자인 경우, 모바일 로그인은 새 사용자를 생성할 수 없습니다.
다음 단계: 사용자가 웹 또는 데스크톱 앱을 통해 한 번 로그인하여 계정을 프로비저닝하도록 안내한 다음, 모바일 로그인을 재시도하세요.
관리자 확인 사항: 프로비저닝(웹/데스크톱 최초 로그인, LDAP 동기화 또는 기타 프로비저닝 방법)이 마련되어 있는지 확인하세요.
We couldn't verify your sign in. Please try again.
오류 ID: ent.intune.validate_token.invalid_token.app_error
HTTP: 400
시나리오: 토큰 검증 실패
사용자 메시지: "We couldn't verify your sign in. Please try again."
재시도: 가능(1회)
폴백: 없음
액세스 토큰을 검증할 수 없습니다. 원인: 토큰 검증이 실패했습니다(토큰 형식 오류, 잘못된 발급자/대상, 권한 누락 또는 Entra 구성 불일치).
다음 단계: 구성된 테넌트 ID애플리케이션(클라이언트) ID가 Mattermost 서버가 참조하는 Entra 앱 등록과 일치하는지 확인하세요. 동일한 앱 등록에서 Microsoft Graph 위임된 권한 emailprofile에 테넌트 전체 관리자 동의가 부여되었는지 확인하세요. 그런 다음 영향을 받은 사용자의 신원 정렬(objectId ↔ oid)을 확인하세요.
관리자 확인 사항: v2 토큰(accessTokenAcceptedVersion = 2)과 Microsoft Graph 위임된 권한 emailprofile에 테넌트 전체 관리자 동의가 있는지 확인하세요.
Your sign in session has expired. Please try signing in again.
오류 ID: ent.intune.validate_token.token_expired.app_error
HTTP: 400
시나리오: 토큰 만료됨
사용자 메시지: "Your sign in session has expired. Please try signing in again."
재시도: 가능(1회)
폴백: 없음
등록이 완료되기 전에 인증 세션이 만료되었습니다. 원인: 로그인/등록 중 액세스 토큰 또는 대화형 세션이 만료되었습니다.
다음 단계: 사용자가 다시 로그인하여 신속하게 등록을 완료하도록 안내하세요.
관리자 확인 사항: 반복적으로 발생하면 등록 중 기기가 Entra/Intune 엔드포인트에 접근할 수 있는지, 프롬프트가 차단되지 않는지 확인하세요.
We couldn't complete your sign in. Please contact your IT administrator.
오류 ID: ent.intune.validate_token.missing_claims.app_error
HTTP: 400
시나리오: 필수 클레임 누락
사용자 메시지: "We couldn't complete your sign in. Please contact your IT administrator."
재시도: 불가
폴백: 없음
액세스 토큰에 로그인 및 등록에 필요한 클레임이 누락되었습니다. 원인: MSAL 액세스 토큰에 필수 클레임이 누락되었습니다(가장 흔하게는 oid 또는 Mattermost가 요구하는 선택적 클레임).
다음 단계: MSAL v2 액세스 토큰이 발급되고(accessTokenAcceptedVersion = 2) 토큰에 oid가 포함되어 있는지 확인하세요. Entra 앱 등록에서 토큰 구성으로 이동하여 액세스 토큰에 대해 선택적 클레임 email, family_name, given_name, preferred_username, upn이 추가되었는지 확인하세요. 적용된 공급자가 IdAttribute = objectId를 사용하는지 확인한 다음 신원 정렬(objectId ↔ oid)을 검증하세요.
There was a configuration issue. Please contact your IT administrator.
오류 ID: ent.intune.validate_token.invalid_tenant_id.app_error
HTTP: 400
시나리오: 토큰 테넌트 ≠ 구성된 테넌트
사용자 메시지: "There was a configuration issue. Please contact your IT administrator."
재시도: 불가
폴백: 없음
토큰 테넌트가 구성된 테넌트와 일치하지 않습니다. 원인: 토큰이 Mattermost에 구성된 테넌트와 다른 테넌트에서 발급되었습니다.
다음 단계: 시스템 콘솔 > 환경 > 모바일 보안에 구성된 테넌트 ID가 사용자에 대해 MSAL 토큰을 발급하는 Entra 테넌트와 일치하는지 확인하세요.
AADSTS650057
(invalid_resource)
오류 ID: (AADSTS650057)
HTTP: (다양함)
시나리오: invalid_resource
사용자 메시지: (MSAL/Entra 오류)
재시도: 불가(수정될 때까지)
폴백: 없음
Entra 앱 구성에 필요한 권한 및/또는 관리자 동의가 누락되었습니다. 원인: 필요한 Intune MAM API 권한이 누락되었거나 테넌트 전체 관리자 동의가 없습니다.
다음 단계: Microsoft Entra 관리 센터에서 (앱 등록이 아닌) 엔터프라이즈 애플리케이션으로 이동하여 Mattermost Mobile / Mattermost Mobile Beta를 검색한 다음 권한을 열어 Intune MAM 권한(예: https://msmamservice.api.application/.defaultMicrosoft Mobile Application Managementuser_impersonation(위임됨))에 대해 관리자 동의를 추가/부여하세요. 그런 다음 사용자가 로그인을 재시도하도록 안내하세요.
NotLicensed
오류 ID: (NotLicensed)
HTTP: (다양함)
시나리오: 라이선스 누락 또는 비활성
사용자 메시지: (다양함)
재시도: 불가
폴백: 없음
서버가 Intune MAM 적용에 대해 라이선스가 부여되지 않았습니다. 원인: 서버에 Enterprise Advanced 라이선스가 누락되었거나 적용되지 않았습니다.
다음 단계: 서버에 Enterprise Advanced 라이선스를 적용하고 라이선스가 활성 상태인지 확인한 다음 재시도하세요.
HTTP 403 Forbidden
오류 ID: (HTTP 403)
HTTP: 403
시나리오: 서버 측 접근 차단
사용자 메시지: (다양함)
재시도: 불가
폴백: 없음
게이팅 조건으로 인해 서버 측 접근이 차단되었습니다. 원인: 서버 게이팅 조건이 등록을 방지하고 있습니다(Intune 서비스 장애가 아님).
다음 단계: Enterprise Advanced 라이선스, Intune MAM 활성화 여부, 인증 공급자 선택이 사용자의 실제 인증 방식과 일치하는지, 구성된 테넌트 ID애플리케이션(클라이언트) ID가 올바른지, 테넌트 전체 관리자 동의가 부여되었는지 확인하세요. 그런 다음 신원 정렬(objectId ↔ oid)과 올바른 iOS 번들 ID에 대한 Intune 앱 보호 정책 대상 지정을 확인하세요.

최초 로그인 시 동의#

사용자의 최초 모바일 로그인이 동의 거부됨으로 실패하거나 다음 메시지가 표시되는 경우:

You denied consent for Intune management. The affected accounts have been unenrolled and signed out.

이는 Mattermost 서버가 참조하는 Entra 앱 등록에 대한 테넌트 전체 관리자 동의가 누락된 것으로 처리하세요. 해결 방법은 위 Intune MAM Errors 표의 동의 거부됨 항목을 참조하세요.

이를 해결하려면:

  1. Microsoft Entra 관리 센터에서 엔터프라이즈 애플리케이션으로 이동합니다.
  2. Mattermost Mobile 또는 Mattermost Mobile Beta를 검색합니다.
  3. 권한으로 이동하여 Intune MAM 권한(예: https://msmamservice.api.application/.default 및 Microsoft Mobile Application Management → user_impersonation(위임됨))에 대해 테넌트 전체 관리자 동의를 추가/부여합니다.
  4. 사용자가 모바일 로그인을 재시도하도록 안내합니다.

롤아웃 및 복구 안내#

* 먼저 소규모 그룹으로 파일럿을 진행하세요.

* 전체 롤아웃 전에 신원 정렬을 검증하세요.

* 요구 사항이 변경되면 세션 중간에 적용이 발생할 수 있음을 예상하세요.

Microsoft Intune MAM(모바일 애플리케이션 관리) 구성

Mattermost v11.8
원문 보기
요약

iOS에서 Mattermost 모바일 앱이 Microsoft Intune 앱 보호 정책(MAM)을 적용하도록 구성하여 기기 등록(MDM) 없이도 BYOD(개인 기기 업무 활용) 및 혼용 기기에서 조직 데이터를 보호할 수 있습니다.

iOS에서 Mattermost 모바일 앱이 Microsoft Intune 앱 보호 정책(MAM)을 적용하도록 구성하여 기기 등록(MDM) 없이도 BYOD(개인 기기 업무 활용) 및 혼용 기기에서 조직 데이터를 보호할 수 있습니다.

이 가이드는 iOS에서 Intune MAM을 성공적으로 활성화하는 데 필요한 구성을 설명합니다.

먼저 읽어보세요#

Mattermost의 Intune MAM 적용은 ID 기반이며 시스템 콘솔 > 환경 > 모바일 보안에서 적용된 인증 공급자로 선택된 로그인 방법에만 적용됩니다.

* 적용된 인증 공급자는 Azure AD objectId(IdAttribute = objectId)를 사용하여 사용자를 확인해야 합니다.

* MSAL 액세스 토큰에는 oid 클레임이 포함되어야 하며, 동일한 Azure AD objectId와 일치해야 합니다(신원 정렬 확인: objectId ↔ oid).

Important

Intune MAM 등록이 기술적 오류로 인해 실패하면, 영향을 받은 Mattermost 서버는 모바일 앱에서 제거되고 해당 서버에 대한 캐시된 데이터는 기기에서 삭제됩니다.

지원되지 않는 시나리오#

이 가이드는 다음 경우에는 적용되지 않습니다.

* Android 기기에서 Intune MAM이 필요한 경우.

* Microsoft Entra ID가 지원하지 않는 로그인 방법에 대해 Intune MAM 적용을 원하는 경우.

* 적용된 인증 공급자가 사용자를 Azure AD objectId로 확인할 수 없는 경우.

* 사용자가 적용된 로그인 방법에 대해 Intune MAM을 우회하거나 연기할 수 있는 롤아웃 모델이 필요한 경우.

게스트 액세스와 같은 다른 인증 방법은 별도로 활성화할 수 있지만, Intune MAM에 의해 평가되지 않습니다.

전제 조건#

계속하기 전에 다음을 확인하세요.

* Microsoft Entra ID가 인증에 사용되고 있습니다.

* Azure AD objectId를 권한 있는 신원으로 사용하기로 결정할 수 있습니다.

* 서버에 Mattermost Enterprise Advanced 라이선스를 사용할 수 있습니다.

* 대상 사용자가 Microsoft Intune에 라이선스가 부여되어 있습니다.

* Microsoft Entra에서 애플리케이션을 등록하고 테넌트 전체 관리자 동의를 부여할 수 있습니다.

* SAML에서 Intune MAM을 적용하는 경우, 사용자가 이미 Mattermost에 존재해야 합니다(모바일 로그인은 SAML에 대해 사용자를 생성하지 않습니다).

Note

이 가이드에서 OpenID Connect(OIDC)는 MSAL을 통해 Mattermost 모바일 앱에서 사용하는 Microsoft Entra 로그인 방법을 의미합니다.

구성 개요#

Intune MAM 적용을 성공적으로 수행하려면 다음 항목 전반에 걸쳐 조율된 구성이 필요합니다.

* Microsoft Entra ID – 앱 등록, 범위, API 권한, 관리자 동의

* Microsoft Intune – iOS 앱 보호 정책

* Mattermost 서버 – MAM 활성화 및 공급자 선택

* Mattermost 모바일 앱(iOS) – 등록 및 적용

아래 단계를 순서대로 완료하세요.

설정 요약#

  1. 신원 요구 사항 및 정렬을 확인합니다(objectId ↔ oid).
  2. Microsoft Entra를 구성합니다(서버에서 참조하는 애플리케이션).
  3. Intune 앱 보호 정책을 구성합니다.
  4. Mattermost에서 Intune MAM을 활성화하고 적용할 공급자를 선택합니다.
  5. 공식 Mattermost iOS 앱을 배포합니다.
  6. 등록 및 적용을 검증합니다.

나중에 필요한 값#

설정 중에 다음 값을 확보하세요.

확인 위치사용 위치
디렉터리(테넌트) IDEntra 앱 등록 개요Mattermost 시스템 콘솔
애플리케이션(클라이언트) IDEntra 앱 등록 개요Mattermost 시스템 콘솔
애플리케이션 ID URIEntra 앱 > API 노출승인된 클라이언트 애플리케이션에서 api://<APPLICATION-ID>/login.mattermost 범위 참조를 구성하는 데 사용
login.mattermost 범위Entra 앱 > API 노출승인된 클라이언트 애플리케이션
모바일 클라이언트 애플리케이션 IDMattermost에서 제공Entra 앱 > 승인된 클라이언트 애플리케이션
iOS 번들 ID(프로덕션/베타)이 가이드Intune 앱 보호 정책

1단계: Intune MAM에 대한 신원 구성#

이 단계에서는 Intune MAM 적용을 위해 선택된 인증 공급자에 필요한 신원 모델을 정의합니다.

필수 신원 모델#

Mattermost용 Microsoft Intune MAM은 Azure AD objectId를 권한 있는 사용자 식별자로 요구합니다. 다음은 협상 불가능한 사항입니다.

* 적용된 공급자에 대해 IdAttribute는 반드시 objectId와 같아야 합니다.

* MSAL 액세스 토큰에는 oid 클레임이 포함되어야 합니다.

* Intune MAM을 활성화하기 전에 신원 정렬(objectId ↔ oid)을 확인하세요.

신원 정렬 확인(objectId ↔ oid)#

동일한 사용자에 대해 다음 값이 일치해야 합니다.

* Azure AD objectId

* MSAL 액세스 토큰 oid 클레임

* SAML objectidentifier(해당하는 경우)

* LDAP msDS-aadObjectId(해당하는 경우)

불일치가 있으면 등록이 방지됩니다.

인증 방법별 신원 적용#

OIDC(MSAL을 통한 모바일 로그인)

* Mattermost는 신원 확인 및 등록에 MSAL 액세스 토큰을 사용합니다.

* 신원 정렬을 확인하세요(objectId ↔ oid).

SAML(Entra 기반)

* SamlSettings.IdAttribute는 반드시 objectidentifier에 매핑되어야 합니다.

* 이메일, UPN, immutableID는 지원되지 않습니다.

* 모바일 로그인 전에 사용자가 이미 Mattermost에 존재해야 합니다.

LDAP(Entra ID Domain Services)

* msDS-aadObjectId를 사용하세요.

* objectGUID는 사용하지 마세요.

런타임 적용 동작#

Intune MAM이 공급자에 대해 활성화되면:

* 적용은 활성 세션 중에도 발생하며, 로그인 시에만 국한되지 않습니다.

* 정책, 라이선스 또는 구성 변경으로 인해 Intune MAM이 새로 필요해지면 즉시 등록이 트리거될 수 있습니다.

* 사용자는 적용된 공급자에 대한 적용을 우회할 수 없습니다.

사전 점검 체크리스트#

  • 라이선스가 부여된 Intune 테스트 사용자 확보
  • 테넌트 전체 관리자 동의를 부여할 수 있는 권한
  • 적용할 공급자 확인(OIDC 또는 SAML)
  • IdAttribute = objectId 구성 완료
  • 신원 정렬 확인(objectId ↔ oid)
  • 공식 Mattermost iOS 앱 배포 완료
  • 대상 번들 ID 확인: com.mattermost.rn(프로덕션), com.mattermost.rnbeta(베타)

2단계: Intune MAM에 대한 Microsoft Entra 구성#

Mattermost 서버가 참조하는 단일 테넌트 Microsoft Entra 애플리케이션을 등록합니다. 이 애플리케이션은 MSAL 액세스 토큰을 검증하고 Intune MAM 등록을 지원합니다.

Mattermost 모바일 앱 자체를 등록하지는 않습니다. 리디렉션 URI 구성은 필요하지 않습니다.

Entra 애플리케이션 등록#

  1. ID > 애플리케이션 > 앱 등록으로 이동합니다.
  2. 새 등록을 선택합니다.
  3. 구성:
  4. * 이름: Mattermost Mobile (Intune MAM)

    * 지원되는 계정 유형: 단일 테넌트
  5. 앱을 등록합니다.
  6. 다음을 복사합니다.

* 애플리케이션(클라이언트) ID

* 디렉터리(테넌트) ID

API 노출 및 범위 생성#

  1. API 노출로 이동합니다.
  2. 애플리케이션 ID URI가 설정되어 있는지 확인합니다(예: api://<APPLICATION-ID>).
  3. login.mattermost라는 이름의 범위를 추가합니다.
  4. 변경 사항을 저장합니다.

공식 모바일 클라이언트 승인#

Mattermost에서 제공하는 공식 Mattermost Mobile 클라이언트 애플리케이션 ID가 login.mattermost 범위를 요청하도록 승인합니다.

  1. Entra 앱 등록에서 API 노출로 이동합니다.
  2. 승인된 클라이언트 애플리케이션에서 클라이언트 애플리케이션 추가를 선택합니다.
  3. Mattermost에서 제공하는 공식 Mattermost Mobile 클라이언트 애플리케이션 ID를 다음과 같이 추가합니다.
    • 베타: 64e9952b-20eb-46dc-92ad-99089ed24903
    • 프로덕션: 9ac649f1-4f77-44d6-9792-b2f54ab3c9a7
  4. api://<APPLICATION-ID>/login.mattermost 범위를 승인합니다.
  5. 변경 사항을 저장합니다.

API 권한 및 관리자 동의#

  1. API 권한으로 이동합니다.
  2. 권한 추가를 선택합니다.
  3. 다음 Microsoft Graph 위임된 권한을 추가합니다.
  4. * Microsoft Graph → email(위임됨)

    * Microsoft Graph → profile(위임됨)
  5. 테넌트에 대해 관리자 동의 부여를 선택합니다.

이는 Mattermost 서버가 참조하는 Entra 애플리케이션에 대해 고객 관리자가 부여해야 하는 권한입니다.

이러한 권한이 누락되었거나 테넌트 전체 관리자 동의가 부족한 경우, 등록이 Entra 권한/관리자 동의 오류(예: AADSTS650057)로 실패하거나 최초 로그인 시 사용자에게 표시되는 동의 거부됨 메시지가 나타날 수 있습니다.

MSAL 토큰 및 필수 클레임 구성#

Intune MAM을 활성화하기 전에, Entra 앱 등록이 모바일 로그인 중 Mattermost가 요구하는 클레임을 포함한 액세스 토큰을 발급하는지 확인하세요.

  1. Entra 앱 등록에서 토큰 구성으로 이동합니다.
  2. 선택적 클레임 추가를 선택합니다.
  3. 토큰 유형에서 액세스를 선택합니다.
  4. 다음 선택적 클레임을 추가합니다.
  5. * email

    * family_name * given_name * preferred_username * upn
  6. 변경 사항을 저장합니다.
Note

Mattermost Intune MAM 적용은 MSAL 액세스 토큰을 사용합니다. 필수 클레임이 누락되면 로그인 및/또는 등록이 실패할 수 있습니다.

MSAL v2 액세스 토큰 활성화#

  1. 매니페스트를 엽니다.
  2. 토큰 버전을 2로 설정합니다.
  3. * 매니페스트에 api.requestedAccessTokenVersion이 표시되면 2로 설정합니다.

    * 그렇지 않으면 accessTokenAcceptedVersion2로 설정합니다.
  4. 변경 사항을 저장합니다.

3단계: Intune 앱 보호 정책 구성#

  1. Intune 관리 센터 > 앱 > 앱 보호 정책으로 이동합니다.
  2. 정책을 생성합니다.
  3. * 플랫폼: iOS/iPadOS

    * 대상 앱: 관리되는 앱
  4. 번들 ID로 Mattermost 앱을 추가합니다.
  5. * com.mattermost.rn(프로덕션)

    * com.mattermost.rnbeta(베타)
  6. 보호 설정을 구성합니다.
  7. Entra ID 사용자 그룹에 할당합니다.
  8. 변경 사항을 저장합니다.

프로덕션 앱과 베타 앱에는 각각 별도의 정책이 필요합니다.

4단계: Intune MAM에 대한 Mattermost 서버 구성#

  1. 시스템 콘솔 > 환경 > 모바일 보안으로 이동합니다.
  2. Microsoft Intune MAM 활성화True로 설정합니다.
  3. 인증 공급자를 선택합니다.
  4. * OpenID Connect(Entra 기반)

    * SAML 2.0(Entra 기반)
  5. 다음을 입력합니다.
  6. * 테넌트 ID

    * 애플리케이션(클라이언트) ID
  7. 변경 사항을 저장합니다.

적용된 공급자는 IdAttribute = objectId를 사용하여 신원을 확인해야 합니다.

5단계: Mattermost iOS 앱 배포#

다음을 사용하여 공식 Mattermost iOS 앱을 다운로드하고 설치하세요.

* Apple App Store(프로덕션)

* TestFlight(베타)

래핑되거나, 재서명되거나, 비공개로 배포된 앱은 지원되지 않습니다.

6단계: 등록 검증#

iOS에서 라이선스가 부여된 테스트 사용자로 검증하세요.

다음을 확인하세요.

* 등록이 성공적으로 완료됨

* 적용이 로그인 시 및 세션 중간에 적용됨

* 신원 정렬이 올바름(objectId ↔ oid)

모바일 로그인 중 예상되는 동작#

  1. 사용자가 MSAL을 통해 로그인합니다.
  2. Mattermost가 액세스 토큰을 검증합니다.
  3. Intune MAM 등록이 트리거됩니다.
  4. 앱 보호 정책이 적용됩니다.

등록이 필요하지만 완료할 수 없는 경우, 등록이 성공할 때까지 액세스가 차단됩니다.

문제 해결#

대부분의 실패는 다음으로 인해 발생합니다.

* 신원 불일치(objectId ↔ oid)

* IdAttributeobjectId로 설정되지 않음

* Entra API 권한 또는 관리자 동의 누락

* 앱 보호 정책이 사용자 또는 앱을 대상으로 하지 않음

* 지원되지 않는 클라이언트 또는 플랫폼

빠른 진단#

  1. 신원 정렬을 확인합니다(objectId ↔ oid).
  2. IdAttribute = objectId를 확인합니다.
  3. Entra 권한 및 관리자 동의를 확인합니다.
  4. 인증 공급자 선택을 확인합니다.
  5. Intune 정책 대상 지정을 확인합니다.

사용자가 등록을 거부한 경우, 재시도가 허용됩니다.

Intune MAM 오류#

아래 오류는 모바일 로그인 중이나 Intune MAM 적용이 세션 중간에 트리거될 때 발생할 수 있습니다. 일부 오류는 Mattermost 모바일 앱에 표시되고, 다른 오류는 표시되지 않으며 Mattermost 서버 로그를 사용하여 진단해야 합니다.

Note

아래 표에서 폴백: Web SSO는 모바일 앱이 Intune MAM이 활성화되지 않은 것처럼 구성된 로그인 방법(SAML 또는 OpenID Connect)의 비 Intune 버전을 사용함을 의미합니다.

오류 의미 관리자 원인 및 다음 단계
Enrollment Failed
오류 ID: (다양함)
HTTP: (다양함)
시나리오: 등록 실패(기술적)
사용자 메시지: "Enrollment Failed"
재시도: 불가
폴백: 없음
기술적 오류로 인해 Intune MAM 등록이 실패했습니다. 원인: 기술적 실패(MSAL 오류, Intune 등록 API 실패, 신원 불일치 또는 Entra 권한 누락)로 인해 등록을 완료할 수 없습니다.
동작: 서버가 즉시 제거되며 재시도 옵션이 없습니다. 해당 서버에 대한 캐시된 데이터가 삭제됩니다.
다음 단계: 근본 원인을 해결한 다음, 사용자가 모바일 앱에서 서버를 다시 추가하도록 안내하세요.
관리자 확인 사항: IdAttribute = objectId를 확인하세요. 신원 정렬(objectId ↔ oid)을 확인하세요. 테넌트 전체 관리자 동의를 확인하세요. 앱 보호 정책이 사용자와 올바른 iOS 번들 ID를 대상으로 하는지 확인하세요.
Enrollment Declined
오류 ID: (다양함)
HTTP: (다양함)
시나리오: 사용자가 등록을 거부함
사용자 메시지: "Enrollment Declined"
재시도: 가능
폴백: 없음
사용자가 Intune MAM 등록을 거부했습니다. 원인: 사용자가 등록 프롬프트를 취소했습니다.
동작: 재시도 옵션이 표시됩니다. 이후 기술적 등록 실패가 발생하지 않는 한 서버 데이터는 제거되지 않습니다.
다음 단계: 준비가 되면 사용자에게 등록을 재시도하도록 안내하세요.
Consent Denied
오류 ID: (다양함)
HTTP: (다양함)
시나리오: 관리자 동의 누락(최초 로그인)
사용자 메시지: "You denied consent for Intune management. The affected accounts have been unenrolled and signed out."
재시도: 가능(관리자 동의 이후)
폴백: 없음
필요한 Entra 앱 권한에 테넌트 전체 관리자 동의가 없어 등록을 완료할 수 없습니다. 원인: Mattermost 서버에 구성된 Entra 앱 등록의 필수 위임된 권한에 테넌트 전체 관리자 동의가 부여되지 않았습니다.
동작: 이 메시지는 사용자가 동의를 거부한 것처럼 보일 수 있지만, 근본 문제는 관리자 동의 누락입니다.
다음 단계: Microsoft Entra에서 Mattermost에 구성된 동일한 Entra 앱 등록에 대해 Microsoft Graph 위임된 권한 emailprofile에 테넌트 전체 관리자 동의를 부여한 다음, 사용자가 모바일 로그인을 재시도하도록 안내하세요.
(표시 없음)
오류 ID: api.user.login_by_intune.not_available.app_error
HTTP: 501
시나리오: Enterprise 빌드 아님
사용자 메시지: (표시 없음)
재시도: 불가
폴백: 표준 SSO(비 Intune)
이 서버에서는 Intune MAM 로그인을 사용할 수 없습니다. 원인: 서버가 Intune MAM을 지원하지 않습니다(이 빌드에서 사용할 수 없거나 배포에 대해 활성화되지 않음).
다음 단계: 서버 빌드에 Intune MAM 지원이 포함되어 있고 배포에 Enterprise Advanced 라이선스가 있는지 확인하세요.
사용자 안내: 서버가 업데이트되거나 구성이 수정되는 동안, 사용자가 웹/데스크톱에서 해당 공급자(SAML 또는 OpenID Connect)의 표준(비 Intune) SSO 흐름으로 로그인하도록 안내하세요.
(표시 없음)
오류 ID: api.user.login_by_intune.not_configured.app_error
HTTP: 400
시나리오: Intune이 구성되지 않음
사용자 메시지: (표시 없음)
재시도: 불가
폴백: 표준 SSO(비 Intune)
조직에 Intune MAM이 활성화되어 있지만 서버에 구성되지 않았습니다. 원인: 시스템 콘솔 > 환경 > 모바일 보안에서 Intune MAM이 완전히 구성되지 않았습니다.
다음 단계: Microsoft Intune MAM을 활성화하고 테넌트 ID, 애플리케이션(클라이언트) ID, 인증 공급자가 올바르게 설정되었는지 확인하세요.
관리자 확인 사항: 선택된 인증 공급자가 Entra 기반인지, 필요한 권한/관리자 동의가 Entra 앱 등록에 대해 부여되었는지 확인하세요.
사용자 안내: 서버가 업데이트되거나 구성이 수정되는 동안, 사용자가 웹/데스크톱에서 해당 공급자(SAML 또는 OpenID Connect)의 표준(비 Intune) SSO 흐름으로 로그인하도록 안내하세요.
Bot accounts cannot sign in using this method.
오류 ID: api.user.login_by_intune.bot_login_forbidden.app_error
HTTP: 403
시나리오: 봇이 로그인을 시도함
사용자 메시지: "Bot accounts cannot sign in using this method."
재시도: 불가
폴백: 없음
이 계정은 Intune MAM 로그인을 사용할 수 없습니다. 원인: 봇 계정은 Intune MAM을 통해 인증할 수 없습니다.
다음 단계: Intune MAM 등록 및 액세스에는 사람 사용자 계정을 사용하세요.
Your account has been deactivated. Please contact your administrator.
오류 ID: api.user.login_by_intune.account_locked.app_error
HTTP: 409
시나리오: 사용자 삭제/비활성화됨
사용자 메시지: "Your account has been deactivated. Please contact your administrator."
재시도: 불가
폴백: 없음
이 계정은 로그인이 허용되지 않습니다. 원인: Mattermost에서 사용자가 삭제, 비활성화 또는 잠긴 상태입니다.
다음 단계: Mattermost에서 사용자 계정을 다시 활성화하거나 복원한 다음, 로그인 및 등록을 재시도하세요.
(표시 없음)
오류 ID: ent.intune.login.not_configured.app_error
HTTP: 403
시나리오: IsConfigured() = false
사용자 메시지: (표시 없음)
재시도: 불가
폴백: 표준 SSO(비 Intune)
현재 로그인 경로에 대해 Intune MAM이 구성되지 않았습니다. 원인: 요청된 인증 경로에 대해 Intune MAM이 구성되지 않았습니다(구성 미완료 또는 공급자 선택 불일치).
다음 단계: Intune MAM이 활성화 및 구성되어 있는지, 선택된 인증 공급자가 사용자의 실제 인증 방식(OIDC 대 SAML)과 일치하는지 확인하세요.
사용자 안내: 서버가 업데이트되거나 구성이 수정되는 동안, 사용자가 웹/데스크톱에서 해당 공급자(SAML 또는 OpenID Connect)의 표준(비 Intune) SSO 흐름으로 로그인하도록 안내하세요.
We couldn't complete your sign in. Please try again.
오류 ID: ent.intune.login.extract_auth_data.app_error
HTTP: 400
시나리오: IdAttribute 매핑 실패
사용자 메시지: "We couldn't complete your sign in. Please try again."
재시도: 가능(1회)
폴백: 없음
로그인 중 신원 매핑이 실패했습니다. 원인: 서버가 Intune MAM에 필요한 신원 속성을 추출하거나 매핑하지 못했습니다(일반적으로 IdAttribute 구성 오류 또는 토큰이 MSAL v2가 아님).
다음 단계: IdAttribute = objectId인지 확인한 다음 신원 정렬(objectId ↔ oid)을 확인하세요. Entra 앱이 v2 토큰(accessTokenAcceptedVersion = 2)을 발급하는지 검증하세요.
Your account isn't fully set up yet. Please sign in to Mattermost via the web or desktop app first.
오류 ID: ent.intune.login.account_not_found.app_error
HTTP: 428
시나리오: SAML 사용자 계정을 찾을 수 없음
사용자 메시지: "Your account isn't fully set up yet. Please sign in to Mattermost via the web or desktop app first."
재시도: 불가
폴백: 없음
SAML 기반 로그인에서 사용자가 Mattermost에 존재하지 않습니다. 원인: SAML이 Intune MAM 적용을 위해 선택된 공급자인 경우, 모바일 로그인은 새 사용자를 생성할 수 없습니다.
다음 단계: 사용자가 웹 또는 데스크톱 앱을 통해 한 번 로그인하여 계정을 프로비저닝하도록 안내한 다음, 모바일 로그인을 재시도하세요.
관리자 확인 사항: 프로비저닝(웹/데스크톱 최초 로그인, LDAP 동기화 또는 기타 프로비저닝 방법)이 마련되어 있는지 확인하세요.
We couldn't verify your sign in. Please try again.
오류 ID: ent.intune.validate_token.invalid_token.app_error
HTTP: 400
시나리오: 토큰 검증 실패
사용자 메시지: "We couldn't verify your sign in. Please try again."
재시도: 가능(1회)
폴백: 없음
액세스 토큰을 검증할 수 없습니다. 원인: 토큰 검증이 실패했습니다(토큰 형식 오류, 잘못된 발급자/대상, 권한 누락 또는 Entra 구성 불일치).
다음 단계: 구성된 테넌트 ID애플리케이션(클라이언트) ID가 Mattermost 서버가 참조하는 Entra 앱 등록과 일치하는지 확인하세요. 동일한 앱 등록에서 Microsoft Graph 위임된 권한 emailprofile에 테넌트 전체 관리자 동의가 부여되었는지 확인하세요. 그런 다음 영향을 받은 사용자의 신원 정렬(objectId ↔ oid)을 확인하세요.
관리자 확인 사항: v2 토큰(accessTokenAcceptedVersion = 2)과 Microsoft Graph 위임된 권한 emailprofile에 테넌트 전체 관리자 동의가 있는지 확인하세요.
Your sign in session has expired. Please try signing in again.
오류 ID: ent.intune.validate_token.token_expired.app_error
HTTP: 400
시나리오: 토큰 만료됨
사용자 메시지: "Your sign in session has expired. Please try signing in again."
재시도: 가능(1회)
폴백: 없음
등록이 완료되기 전에 인증 세션이 만료되었습니다. 원인: 로그인/등록 중 액세스 토큰 또는 대화형 세션이 만료되었습니다.
다음 단계: 사용자가 다시 로그인하여 신속하게 등록을 완료하도록 안내하세요.
관리자 확인 사항: 반복적으로 발생하면 등록 중 기기가 Entra/Intune 엔드포인트에 접근할 수 있는지, 프롬프트가 차단되지 않는지 확인하세요.
We couldn't complete your sign in. Please contact your IT administrator.
오류 ID: ent.intune.validate_token.missing_claims.app_error
HTTP: 400
시나리오: 필수 클레임 누락
사용자 메시지: "We couldn't complete your sign in. Please contact your IT administrator."
재시도: 불가
폴백: 없음
액세스 토큰에 로그인 및 등록에 필요한 클레임이 누락되었습니다. 원인: MSAL 액세스 토큰에 필수 클레임이 누락되었습니다(가장 흔하게는 oid 또는 Mattermost가 요구하는 선택적 클레임).
다음 단계: MSAL v2 액세스 토큰이 발급되고(accessTokenAcceptedVersion = 2) 토큰에 oid가 포함되어 있는지 확인하세요. Entra 앱 등록에서 토큰 구성으로 이동하여 액세스 토큰에 대해 선택적 클레임 email, family_name, given_name, preferred_username, upn이 추가되었는지 확인하세요. 적용된 공급자가 IdAttribute = objectId를 사용하는지 확인한 다음 신원 정렬(objectId ↔ oid)을 검증하세요.
There was a configuration issue. Please contact your IT administrator.
오류 ID: ent.intune.validate_token.invalid_tenant_id.app_error
HTTP: 400
시나리오: 토큰 테넌트 ≠ 구성된 테넌트
사용자 메시지: "There was a configuration issue. Please contact your IT administrator."
재시도: 불가
폴백: 없음
토큰 테넌트가 구성된 테넌트와 일치하지 않습니다. 원인: 토큰이 Mattermost에 구성된 테넌트와 다른 테넌트에서 발급되었습니다.
다음 단계: 시스템 콘솔 > 환경 > 모바일 보안에 구성된 테넌트 ID가 사용자에 대해 MSAL 토큰을 발급하는 Entra 테넌트와 일치하는지 확인하세요.
AADSTS650057
(invalid_resource)
오류 ID: (AADSTS650057)
HTTP: (다양함)
시나리오: invalid_resource
사용자 메시지: (MSAL/Entra 오류)
재시도: 불가(수정될 때까지)
폴백: 없음
Entra 앱 구성에 필요한 권한 및/또는 관리자 동의가 누락되었습니다. 원인: 필요한 Intune MAM API 권한이 누락되었거나 테넌트 전체 관리자 동의가 없습니다.
다음 단계: Microsoft Entra 관리 센터에서 (앱 등록이 아닌) 엔터프라이즈 애플리케이션으로 이동하여 Mattermost Mobile / Mattermost Mobile Beta를 검색한 다음 권한을 열어 Intune MAM 권한(예: https://msmamservice.api.application/.defaultMicrosoft Mobile Application Managementuser_impersonation(위임됨))에 대해 관리자 동의를 추가/부여하세요. 그런 다음 사용자가 로그인을 재시도하도록 안내하세요.
NotLicensed
오류 ID: (NotLicensed)
HTTP: (다양함)
시나리오: 라이선스 누락 또는 비활성
사용자 메시지: (다양함)
재시도: 불가
폴백: 없음
서버가 Intune MAM 적용에 대해 라이선스가 부여되지 않았습니다. 원인: 서버에 Enterprise Advanced 라이선스가 누락되었거나 적용되지 않았습니다.
다음 단계: 서버에 Enterprise Advanced 라이선스를 적용하고 라이선스가 활성 상태인지 확인한 다음 재시도하세요.
HTTP 403 Forbidden
오류 ID: (HTTP 403)
HTTP: 403
시나리오: 서버 측 접근 차단
사용자 메시지: (다양함)
재시도: 불가
폴백: 없음
게이팅 조건으로 인해 서버 측 접근이 차단되었습니다. 원인: 서버 게이팅 조건이 등록을 방지하고 있습니다(Intune 서비스 장애가 아님).
다음 단계: Enterprise Advanced 라이선스, Intune MAM 활성화 여부, 인증 공급자 선택이 사용자의 실제 인증 방식과 일치하는지, 구성된 테넌트 ID애플리케이션(클라이언트) ID가 올바른지, 테넌트 전체 관리자 동의가 부여되었는지 확인하세요. 그런 다음 신원 정렬(objectId ↔ oid)과 올바른 iOS 번들 ID에 대한 Intune 앱 보호 정책 대상 지정을 확인하세요.

최초 로그인 시 동의#

사용자의 최초 모바일 로그인이 동의 거부됨으로 실패하거나 다음 메시지가 표시되는 경우:

You denied consent for Intune management. The affected accounts have been unenrolled and signed out.

이는 Mattermost 서버가 참조하는 Entra 앱 등록에 대한 테넌트 전체 관리자 동의가 누락된 것으로 처리하세요. 해결 방법은 위 Intune MAM Errors 표의 동의 거부됨 항목을 참조하세요.

이를 해결하려면:

  1. Microsoft Entra 관리 센터에서 엔터프라이즈 애플리케이션으로 이동합니다.
  2. Mattermost Mobile 또는 Mattermost Mobile Beta를 검색합니다.
  3. 권한으로 이동하여 Intune MAM 권한(예: https://msmamservice.api.application/.default 및 Microsoft Mobile Application Management → user_impersonation(위임됨))에 대해 테넌트 전체 관리자 동의를 추가/부여합니다.
  4. 사용자가 모바일 로그인을 재시도하도록 안내합니다.

롤아웃 및 복구 안내#

* 먼저 소규모 그룹으로 파일럿을 진행하세요.

* 전체 롤아웃 전에 신원 정렬을 검증하세요.

* 요구 사항이 변경되면 세션 중간에 적용이 발생할 수 있음을 예상하세요.