Apple 기기로 단일 로그인 개요
조직은 주로 사용자의 앱 및 웹사이트 로그인 경험을 향상하기 위해 만들어진 단일 로그인(SSO)을 사용합니다. SSO를 사용하면 사용자가 자신의 ID를 다시 증명하지 않아도 일반적인 인증 프로세스가 다양한 앱 또는 시스템에 걸쳐 실행됩니다. SSO는 사용자의 자격 증명(예: 암호)을 저장하거나 각각의 응용 프로그램에서 재사용하지 않고 최초의 인증에서 제공된 토큰을 사용하여 일회용 암호처럼 사용자에게 제공됩니다.
예를 들어, 기업 네트워크에서 Active Directory에 로그인하고 나서 암호를 다시 입력하지 않고도 기업용 앱 및 웹사이트에 원활히 접근하기 위해 SSO가 사용됩니다. 모든 앱과 시스템은 Active Directory를 신뢰하여 사용자를 식별하고 그룹 회원 권한을 제공하도록 구성되고 함께 보안 도메인을 구성합니다.
Kerberos
Kerberos는 SSO를 사용하는 대규모 네트워크에서 널리 쓰이는 인증 프로토콜입니다. 이는 또한 Active Directory에서 사용되는 기본 프로토콜입니다. 여러 플랫폼에서 작동하고 암호화를 사용하며 재전송 공격을 방지합니다. 이는 암호, 인증서 ID, 스마트 카드, NFC 기기 또는 기타 하드웨어 인증 제품을 사용하여 사용자를 인증할 수 있습니다. Kerberos를 수행하는 서버를 KDC(키 분배 센터)라고 합니다. 사용자 인증을 하려면 Apple 기기는 네트워크 연결을 통해서 KDC에 연결해야 합니다.
모든 클라이언트와 서버는 KDC로의 직접 연결하므로 Kerberos는 조직의 내부 또는 개인 네트워크에서 잘 작동합니다. 기업 네트워크상에 없는 클라이언트는 VPN(가상 개인 네트워크)을 사용하여 연결하고 인증해야 합니다. Kerberos는 클라우드 또는 인터넷 기반 앱에 적합하지 않습니다. 이 응용 프로그램이 기업 네트워크와 직접 연결되지 않기 때문입니다. 클라우드 또는 인터넷 기반 앱에는 아래에서 설명하는 최신 인증이 더 적합합니다.
macOS는 Active Directory 환경에 통합될 때 모든 인증 활동에 대해 Kerberos의 우선순위를 정합니다. 사용자가 Active Directory 계정을 사용하여 Mac에 로그인하면 Active Directory 도메인 제어기에서 Kerberos TGT(Ticket Granting Ticket)를 요청합니다. 사용자가 Kerberos 인증을 지원하는 도메인에서 서비스 또는 앱을 사용하려고 하면, TGT는 사용자에게 재인증을 요구하지 않고 해당 서비스의 티켓을 요청하는 데 사용됩니다. 스크린 세이버를 해제할 때 암호를 요구하는 정책이 설정된 경우, macOS는 인증 성공 상태에서 TGT 갱신을 시도합니다.
Kerberos화된 서버가 제대로 작동하려면 도메인 네임 시스템(DNS) 레코드 및 역 도메인 네임 시스템(DNS) 레코드가 모두 정확해야 합니다. 모든 서버와 클라이언트는 클락 스큐가 5분 미만이어야 하므로 시스템 시간 또한 중요합니다. time.apple.com과 같은 NTP(Network Time Protocol) 서비스를 사용하여 날짜와 시간을 자동으로 설정하는 것이 가장 바람직합니다.
SSO를 사용하는 최신 인증
최신 인증은 클라우드 응용 프로그램에서 사용하는 웹 기반 인증 프로토콜 모음을 가리킵니다. 그 예로 SAML 2.0, OAuth 2.0(iOS 16, iPadOS 16.1 및 visionOS 1.1 이상) 및 Open ID Connect(OIDC)가 있습니다. 이러한 프로토콜은 인터넷에서 잘 작동하며 HTTPS를 사용하여 연결을 암호화합니다. SAML2는 조직의 네트워크와 클라우드 응용 프로그램을 연합하는 데에 자주 사용됩니다. 연합은 신뢰 도메인을 교차할 때 사용됩니다. 예를 들어, 온프레미스 도메인에서 클라우드 응용 프로그램 세트에 접근할 때와 같은 경우입니다.
참고: OAuth 2.0을 활용하려면 MDM 솔루션은 서버측 지원을 사용자 등록에서 지원하려는 신원 제공자(IdP)와 구현해야 합니다.
이러한 프로토콜을 사용하는 단일 로그인은 공급업체 및 환경에 따라 달라집니다. 예를 들어, 조직의 네트워크에서 Active Directory Federation Services(AD FS)를 사용할 때 AD FS는 SSO에 Kerberos를 사용하며 인터넷에서 클라이언트를 인증할 때 AD FS는 브라우저 쿠키를 사용할 수 있습니다. 최신 인증 프로토콜은 사용자에게 ID 증명 방식을 지시하지 않습니다. 이러한 프로토콜의 대부분은 알려지지 않은 클라이언트를 인증할 때 SMS 코드와 같은 다중 인증과 함께 사용됩니다. 일부 공급업체는 인증 프로세스를 수월하게 하기 위해 기기에 인증서에 대한 권한 설정을 하여 알려진 기기를 식별합니다.
IdP는 단일 로그인 확장 프로그램을 사용하여 iOS, iPadOS, macOS 및 visionOS 1.1에서 SSO를 지원할 수 있습니다. 또한 이 확장 프로그램을 사용하여 IdP가 사용자를 위한 최신 인증 프로토콜을 구현할 수 있습니다.
지원되는 앱
iOS, iPadOS 및 visionOS 1.1은 네트워크 연결 및 인증을 관리하기 위해 클래스 NSURLSession
또는 URLSession
을 사용하는 모든 앱에 SSO를 유연하게 지원합니다. Apple은 모든 개발자에게 이러한 클래스를 제공하여, 앱 내 네트워크 연결을 원활하게 통합합니다.
Kerberos 인증을 지원하는 모든 Mac 앱은 SSO로 작동합니다. Safari, Mail, 캘린더와 같은 다수의 macOS 내장 앱과 파일 공유, 화면 공유 및 보안 셸(SSH)과 같은 서비스가 이에 포함됩니다. Microsoft Outlook과 같은 여러 타사 앱도 Kerberos를 지원합니다.
단일 로그인 구성하기
수동으로 설치하거나 MDM을 통해 관리할 수 있는 구성 프로필을 사용하여 SSO를 구성합니다. SSO 페이로드는 유연한 구성을 허용합니다. SSO는 모든 앱에 개방될 수도 있고, 앱 식별자나 서비스 URL(또는 둘 다)에 의해 제한될 수도 있습니다.
패턴을 요청된 URL의 접두사와 비교할 때 간단한 문자열 패턴 매칭이 사용됩니다. 따라서 패턴은 https:// 또는 http://로 시작해야 하며 다른 포트 번호와 일치하지 않습니다. URL 매칭 패턴이 슬래시(/)로 끝나지 않으면 하나가 추가됩니다.
예를 들어 https://www.betterbag.com/은 https://www.betterbag.com/index.html과 일치하지만 http://www.betterbag.com 또는 https://www.betterbag.com:443/과는 일치하지 않습니다.
또한 와일드카드 하나를 사용하여 누락된 하위 도메인을 지정할 수 있습니다. 예를 들어 https://*.betterbag.com/은 https://store.betterbag.com/과 일치합니다.
Mac 사용자는 /시스템/라이브러리/CoreServices/ 경로에 있는 티켓 뷰어 앱을 사용하여 Kerberos 티켓 정보를 보고 관리할 수 있습니다. 추가 정보를 보려면 티켓 메뉴를 클릭하고 진단 정보를 선택하십시오. 구성 프로필에서 허용하는 경우, 사용자는 kinit
, klist
및 kdestroy
명령어 라인 도구를 각각 사용하여 Kerberos 티켓을 요청하거나, 보거나 삭제할 수 있습니다.