nyancoder

WWDC 2021 - Discover account-driven User Enrollment 본문

WWDC/WWDC 2021

WWDC 2021 - Discover account-driven User Enrollment

nyancoder 2021. 10. 13. 01:51

원본 영상: https://developer.apple.com/videos/play/wwdc2021/10136/

 

 

  • 사용자 등록은 사용자가 장치를 소유하는 조직의 BYOD 또는 기기 배포를 위한 것입니다.
  • 사용자가 기기를 소유하기 때문에 모바일 장치 관리 솔루션에서 장치에 적용할 수 있는 제한 사항 이 있습니다.
  • iOS, iPadOS 및 macOS에서 사용할 수 있습니다.

  • 사용자 등록의 핵심 요소는 보안과 개인 정보 보호입니다.
  • 사용자는 자신의 개인 정보와 개인 데이터가 보호된다는 것을 안심할 수 있고, 조직은 데이터가 안전하다고 확신할 수 있습니다.

  • 사용자 등록에는 세 가지 핵심 구성 요소가 있습니다.

  • 관리되는 Apple ID는 iCloud와 같은 Apple 서비스에 대한 접근을 제공합니다.
  • 조직에서 소유 및 관리하며 Apple Business Manager 및 Apple School Manager를 통해 사용할 수 있습니다.
  • 사용자가 조직의 기존 자격 증명으로 인증할 수 있도록 Azure Active Directory와의 연합 인증을 지원합니다.

  • 사용자를 등록하는 동안 다른 암호화 키가 있는 별도의 APFS 볼륨 이 생성됩니다.
  • 관리 앱 및 관리 계정의 데이터는 개인 콘텐츠와 별도로 이 볼륨에 안전하게 보관됩니다.
  • 장치가 관리에서 등록 해제되면 볼륨과 암호화 키가 지워집니다.

  • 관리 기능은 장치에서 조직의 콘텐츠를 제어할 수 있습니다.
  • 하지만 사용자가 장치를 소유하고 사용하고 있으므로 사용자의 개인 정보를 보호하는 것이 중요합니다.
  • 사용자 등록을 통해 사용자는 장치에서 자신의 개인 데이터를 제어할 수 있습니다.
  • 장치는 사용자 등록을 통해 감독되지 않는 것으로 간주됩니다.

  • MDM 서버에서 사용할 수 있는 관리 기능을 통해 관리되는 콘텐츠를 완전히 제어할 수 있습니다.
  • 개인 데이터 및 설정에 대한 액세스 및 제한은 제한됩니다.
  • 개인 계정, 앱 및 고유한 장치 식별자에 대한 액세스는 MDM 서버에서 사용할 수 없습니다.
  • 장치를 원격으로 지우는 것과 같은 시스템 전체 작업도 사용할 수 없습니다.

 

Managed Apple ID

  • iOS 15에서 장치를 사용자 등록하면 설정의 최상위에 계정이 표시됩니다.
  • 거기에서 iCloud에 대한 세부 정보와 설정을 볼 수 있습니다.

  • 이제 추가 계정을 관리하는 것이 보다 쉬워졌습니다.
  • 이 항목을 통해 설정에서 조직 콘텐츠의 명확한 분리를 확인할 수 있습니다.
  • 사용자는 조직에서 관리하는 시스템 부분과 그렇지 않은 부분을 ​​확인할 수 있습니다.

  • iOS 15 및 macOS Monterey의 새로운 기능인 관리되는 Apple ID는 iCloud Drive를 지원합니다.
  • iCloud Drive는 iCloud 계정의 중요한 기능이며 이제 사용자가 등록한 기기에서 사용할 수 있습니다.

  • iOS 및 iPadOS에서는 파일 앱에 새 위치로 표시됩니다.

  • macOS에서는 Finder에서 추가 위치로 나타납니다.
  • 관리되는 Apple ID용 iCloud Drive를 사용하여 조직은 사용자에게 내장형 클라우드 스토리지를 제공할 수 있습니다.

  • 문서 브라우저 기반 앱 은 추가 iCloud Drive에도 접근할 수 있습니다.
  • iCloud Drive는 관리 앱 및 데이터 접근에 대한 관리 접근 제한을 준수합니다.

 

Managed apps

  • macOS Big Sur에서는 macOS 에서 관리 앱을 도입하였습니다.
  • 이를 통해 조직은 사용자 지정 구성 페이로드를 사용하여 iOS에서와 유사한 방식으로 관리되는 장치에 앱을 설치할 수 있습니다.
  • 또한 MDM 명령을 사용하거나 기기가 등록을 취소할 때 앱을 제거하는 기능도 제공합니다.

  • macOS Monterey에서는 이 기능이 사용자 등록으로 확장되었습니다.

  • iOS와 마찬가지로 앱 데이터는 다른 볼륨으로 분리됩니다.
  • 앱은 등록 취소 중에 또는 MDM 명령으로 제거되며, 이 경우 데이터 컨테이너도 지워집니다.

  • CloudKit을 사용하는 관리되는 앱은 MDM 프로필과 연결된 관리되는 Apple ID를 사용합니다.
  • InstallApplication 명령에 InstallAsManaged 키를 추가해야 합니다.
  • 관리되는 앱은 애플리케이션 폴더에 설치해야 하며, 하나의 앱 번들만 포함해야 합니다.
  • 데이터가 올바르게 분리되도록 데이터 보호 키체인 및 앱 샌드박싱을 사용하는 것이 좋습니다.

  • Managed Open-In에 대한 제한 기능이 복사 및 붙여 넣기를 포함하게 되었습니다.
  • 조직은 관리되는 경계를 넘어 양방향으로 데이터를 붙여 넣을 수 있습니다.
  • 장치가 관리에 등록될 때 필수 앱이 설치되도록 지정할 수 있는 기능도 있습니다.
  • 앱은 장치가 등록될 때 설치가 승인되므로 추가 사용자 확인이 필요하지 않습니다.

 

Onboarding

  • iOS 13에 도입된 사용자 등록에 대한 온보딩 환경은 MDM 등록 프로필에 의해 시작되고 구동됩니다.
  • 이 프로필은 각 사용자에 대해 생성되고 관리자가 배포해야 합니다.

  • iOS 15에서는 사용자와 관리자 모두에게 보다 간소화된 경험을 제공하기 위해 사용자의 조직 ID를 진입점으로 사용하는 새로운 사용자 등록 온보딩 시나리오를 만들었습니다.

  • 사용자는 이미 조직 ID에 로그인하여 메일 및 캘린더와 같은 서비스를 설정하는 데 익숙하므로 조직 ID를 사용하여 iPhone에서 MDM을 설정하 것 또한 자연스러울 것입니다.

  • 온보딩 흐름은 사용자 등록을 위한 새로운 보안 기능을 활성화합니다.
  • MDM 프로필이 기기에 다운로드되기 전과 조직 데이터가 기기로 전송되기 전에 MDM 서버가 사용자를 확인할 수 있도록 등록합니다.
  • 이 등록 과정에 보안 계층이 있습니다.

  • 새 사용자 등록 온보딩에는 네 가지 구성 요소가 있습니다.
  • 서비스 검색을 통하여 장치가 조직의 MDM 서버를 식별할 수 있습니다.
  • 사용자 인증을 거쳐 MDM 서버가 사용자를 확인합니다.
  • 세션 토큰을 발급하여 지속적인 인증을 수행합니다.
  • 등록 과정을 통해 MDM 페이로드를 장치에 설치합니다.

  • 사용자가 온보딩 흐름을 시작하면 조직 아이디를 입력하라는 메시지가 표시됩니다.
  • 이 아이디는 @기호로 구분되는 두 가지 부분이 있습니다.
  • 첫 번째 부분은 사용자 ID입니다.
  • 두 번째 부분은 조직의 도메인 또는 하위 도메인입니다.

  • 사용자가 조직 ID를 입력한 후 장치는 식별자의 도메인 부분을 가져와 해당 도메인의 HTTP 리소스를 가리키는 HTTPS URL로 변경합니다.
  • 이 검색 URL은 등록 장치를 알려주는 MDM 서버 문서를 호스팅 합니다.
  • 장치는 해당 URL에 대해 GET 요청을 수행하고, JSON 문서를 가져올 수 있습니다.

  • 수신된 JSON에는 서버가 지원하는 등록 유형을 장치에 알리는 버전 키가 있습니다.
  • 또한 MDM 서버의 등록 끝점 URL을 지정하는 BaseURL 키가 포함됩니다.

  • 이 정보를 사용하여 장치는 서버에 등록 프로필을 요청합니다.

  • 장치는 다양한 속성을 사용하여 서버에 속성 목록을 게시합니다.
  • 무선 프로필 전달 프로세스에 익숙하다면 장치가 프로필 서비스에 보내는 요청과 동일해 보일 것입니다.

  • 그러나 여기서 중요한 차이점은 서버가 프로필을 넘기기 전에 사용자에게 자신을 인증하도록 요청한다는 것입니다.
  • 사용자에게 자격 증명을 요청하기 위해 HTTP 401 Unauthorized 응답을 전달합니다.

  • 이 401 응답 에는 장치가 인증하는 데 사용하는 정보가 포함된 WWW-Authenticate 헤더 가 포함되어 있습니다.
  • WWW-Authenticate 헤더는 Bearer 인증 체계와 두 개의 추가 매개변수를 사용합니다.
  • method 매개변수는 사용 중인 인증 유형을 장치에 알려줍니다.
  • method의 값은 현재는 고정되어 있으며 장치가 AuthenticationServices 웹 로그인 흐름을 사용하여 사용자를 인증 함을 나타냅니다.
  • URL 매개변수는 인증이 발생하는 지점을 지정하는 HTTPS URL입니다.

  • 이 URL은 MDM 서버 자체여야 하며, 이 인증 헤더를 수신하면 AuthenticationServices 웹 로그인 흐름이 시작됩니다.

  • AuthenticationServices 웹 로그인 흐름의 처음은 서버의 401 응답의 URL 매개변수로 지정된 인증 지점에 대한 HTTP GET 요청의 결과입니다.

  • 일반적인 경우에는 이 웹 로그인 시나리오는 사용자 이름과 암호를 입력하는 웹 양식을 표시할 수 있습니다.

  • 더 복잡한 경우에는 엔터프라이즈 싱글 사인온을 사용하거나, 타사 ID 공급자로 리디렉션 하거나, 다단계 인증을 수행할 수도 있습니다.

  • 장치와 인증 서비스 간에 여러 번 응답을 주고받을 수 있습니다.
  • AuthenticationServices 웹 흐름 은 서버가 HTTP 리디렉션 응답을 장치에 반환하면 완료됩니다.

  • 응답에는 URL이 있는 Location 헤더 가 포함됩니다.
  • 또한 URL에는 MDM 서버에 요청할 때 장치가 세션 토큰으로 사용할 access-token 매개변수도 포함됩니다.

  • 세션 토큰을 사용하여 장치는 등록 프로필을 가져오기 위해 원래 HTTP POST 요청을 다시 수행합니다.
  • 이번 요청에는 Authorization 헤더가 포함되며, 서버는 이 토큰의 유효성을 검사하고 성공하면 장치에 등록 프로필을 반환합니다.

  • 사용자 등록 프로필에는 MDM 페이로드에 두 개의 새 키 가 포함되어 있습니다.
  • AssignedManagedAppleID키는 엔터프라이즈 사용자와 연결된 관리되는 Apple ID입니다.
  • 사용자는 등록 과정에서 iCloud 및 iTunes 계정에 로그인하기 위해 이 관리되는 Apple ID를 인증해야 합니다.
  • MDM 등록이 성공하면 관리되는 Apple ID 가 기기에서 활성화되며, AssignedManagedAppleID 키가 없거나 사용자가 성공적으로 인증하지 않으면 장치가 등록되지 않습니다.
  • 두 번째 새 키는 등록이 BYOD 유형임을 나타내는 EnrollmentMode 키입니다.
  • 장치는 이 값이 현재 모드와 일치하는지 확인하고 불일치가 있거나 키가 없으면 등록에 실패합니다.

  • 등록 프로필을 수신하면 이제 장치에서 필요한 관리되는 Apple ID 계정을 설정하고 MDM 서버에 등록합니다.
  • 서버에 대한 모든 요청은 서버가 유효성을 검사할 수 있도록 Authorization 헤더에 세션 토큰을 포함합니다.

  • 이 과정을 사용자 측면에서 보면 우선 사용자는 VPN으로 이동하여 설정의 장치 관리 섹션을 클릭하고, 새로운 직장 또는 학교에 로그인 버튼을 탭 합니다.

  • 그런 다음 조직 ID를 입력하여 서비스 검색 단계를 시작합니다.

  • 그다음 인증 서비스 웹 UI 흐름이 시작되며, 위의 예에서 인증에 사용되는 간단한 웹 양식을 볼 수 있습니다.

  • 사용자가 조직 암호를 입력하여 조직의 인증이 성공하면 MDM 프로필이 전달됩니다.
  • 프로필에서 AssignedManagedAppleID키 값을 가져와 사용자가 비밀번호를 입력하는 다음 로그인 화면에 미리 채웁니다.

  • 이 인증이 성공하면 사용자는 장치 관리를 허용합니다.

  • 암호화된 엔터프라이즈 데이터 파티션을 생성하고 MDM 등록을 승인하기 위해 장치 암호를 입력합니다.

  • 그러면 사용자 등록에 성공한 것을 볼 수 있습니다.

 

Ongoing authentication

  • iOS 15의 새로운 사용자 등록을 통하면 조직에서 언제든지 사용자를 재인증할 수 있습니다.
  • MDM 서버는 이제 클라이언트의 모든 요청에 ​​대해 권한을 확인할 수 있으며, 사용자에게 언제든지 ID 자격 증명을 다시 인증하도록 요청할 수 있습니다.
  • 이 기능은 세션 토큰을 사용하여 수행됩니다.

  • 위의 예제는 다음 MDM 명령을 가져오기 위해 서버에 체크인하는 MDM 클라이언트의 예입니다.
  • Authorization 헤더에는 세션 토큰이 포함되어 있으며, 지속적인 인증을 위한 두 가지 요소에 대한 필수 항목입니다.

  • 첫 번째는 세션 토큰이 서버에 대한 모든 클라이언트 요청에서 전송되는 영구 권한 부여입니다.

  • 두 번째는 세션 토큰을 새로 고치는 것입니다.
  • 이를 통해 조직 관리자는 언제든지 사용자 재인증을 요청할 수 있습니다.

  • 이 세션 토큰의 고유한 서버 측 유효성 검사 논리를 구현하여 조직의 보안 규칙을 관리 솔루션에 추가할 수 있습니다.
  • 예를 들어 사용자의 자격 증명을 주기적으로 확인하여 민감한 페이로드가 신뢰할 수 있는 사용자가 소유한 장치에만 전송되도록 할 수 있습니다.

  • 이 과정을 살펴보면 우선 세션 토큰이 무효화되면 재인증이 트리거 됩니다.
  • 그러면 장치가 다음 MDM HTTP 요청을 할 때 HTTP PUT에 포함된 현재 유효하지 않은 세션 토큰에 대해서 서버가 401 응답을 전달합니다.
  • 서버가 보내는 응답에는 이전 온보딩의 초기 인증 교환에서 본 것과 동일한 WWW-Authenticate 헤더 가 포함됩니다.

  • MDM 프로세스가 장치의 백그라운드에서 실행되기 때문에, 이 재인증 요청은 NotificationCenter를 통해 사용자에게 표시됩니다.
  • 알림을 탭 하면 사용자 가 설정에서 재인증 절차를 계속 진행합니다.

  • 클라이언트는 온보딩 프로세스 동안과 같은 다른 AuthenticationServices 웹 로그인 흐름을 시작합니다.

  • 사용자는 인증 서비스 웹 로그인 흐름의 간단한 메커니즘을 통해 인증할 수 있습니다.

  • 또는 ID 공급자와 서버의 통합에 의해 결정되는 더 복잡한 메커니즘 중 하나를 사용하여 인증해야 합니다.

  • 해당 인증 서비스 웹 흐름이 완료되면 서버는 새 세션 토큰이 포함된 사용자 지정 위치 헤더와 함께 리디렉션 응답을 다시 보냅니다.

  • 재인증에 성공하면 장치가 처음에 401 응답을 수신한 MDM 요청을 즉시 반복하고,  중단된 위치부터 계속됩니다.
  • 이전과 마찬가지로 이 새 세션 토큰은 모든 후속 MDM HTTP 요청에 포함됩니다.

  • 어떤 이유로든 사용자의 인증 시도가 실패하면 서버는 더 이상 장치를 신뢰하지 않을 수 있습니다.
  • 이 경우 서버는 민감한 MDM 페이로드를 제거하거나 장치를 완전히 등록 해제할 수 있습니다.

  • iOS 15 이전에는 모든 MDM 등록기기가 서버의 401 응답을 등록 취소 명령으로 처리했습니다.
  • 이 새로운 사용자 등록 스타일이 적용되면 401 응답이 대신 재인증을 트리거합니다.
  • 등록 취소를 트리거하기 위해 MDM 등록 프로필에 대해 RemoveProfile 명령을 보내는 기존 메커니즘을 계속 사용할 수 있습니다.
  • 이렇게 하면 전체 MDM 등록이 해제될 뿐만 아니라 전체 관리 계정, 관리 데이터 및 장치에서 데이터 분리 볼륨이 제거됩니다.
  • iOS13의 사용자 등록 흐름을 포함하여 프로필 기반 등록의 모든 등록 해제 동작은 변경되지 않은 상태로 유지됩니다.

 

Get started

  • iOS 15에서 새로운 사용자 등록 온보딩 및 지속적인 인증을 다섯 가지 과정을 통해 수행할 수 있습니다.
  • 우선 엔터프라이즈 도메인에 대해 잘 알려진 HTTP 리소스 파일을 설정하고 게시합니다.
  • 그다음 MDM 서버를 아이덴티티 공급자와 통합하여 등록 중에 사용자 인증을 수행하고, 지속적인 인증을 활용합니다.
  • 관리되는 Apple ID를 생성하거나 Apple School Manager 및 Apple Business Manager에서 이미 생성된 관리되는
  • Apple ID를 사용하여 서버의 MDM 페이로드에 AssignedManagedAppleID 키를 채웁니다.
  • 이때, 새 EnrollmentMode키도 포함하도록 MDM 페이로드를 업데이트합니다.
  • 마지막으로 새로운 iOS 15 Apple 기기 관리 문서를 찾아 오늘 살펴본 모든 세부 정보에 대한 업데이트를 검토하는 것이 좋습니다.

 

목차: https://nyancoder.tistory.com/2

Comments