본문 바로가기
개발

Sign in With Apple 정리

by 꼬마상어 2019. 7. 19.
반응형

WWDC 19에서 발표된 내용입니다.

Sign In With Apple 이란?

유저의 AppleID를 사용하여 서비스를 사용할 수 있도록 함

Updates to the App Store Review Guidelines (19.06.03)

Sign In with Apple will be available for beta testing this summer.

It will be required as an option for users in apps that support third-party sign-in when it is commercially available later this year.

Sign In with Apple은 이번 여름부터 Beta Test가 가능할 것.

올해 말에 상용화가 되면 타사 로그인을 사용하고있는 앱은 이용자를 위한 옵션으로 요구될 예정임

  • 정확한 시기는 기재되어 있지 않지만 iOS 13이 Release가 되는 9월부터 연말인 12월까지 예상됨 => 기존앱은 2020년 4월까지, 신규앱은 즉시 적용 (개발자 뉴스 참고 : https://developer.apple.com/kr/news/?id=09122019b )

 

지원 Platforms

For the Web and Other Platforms

iOS, macOS, tvOS, watchOS에 적용되며 Web, 그리고 다른 플랫폼도 지원함

web과 타 플랫폼은 Apple JS 제공

 

참고

https://developer.apple.com/documentation/signinwithapplejs#overview

https://developer.apple.com/documentation/signinwithapplejs/configuring_your_webpage_for_sign_in_with_apple

iOS, macOS, tvOS, watchOS

AuthenticationServices 프레임 워크를 사용하여 native iOS, macOS, tvOS, and watchOS 에서 로그인 할 수 있음

AuthenticationServices 는 iOS 12 이상부터 사용가능한 프레임워크이다.

Apple 에서 공개한 샘플 앱 참고 : https://developer.apple.com/documentation/authenticationservices/adding_the_sign_in_with_apple_flow_to_your_app

 

앱 내에 Sign In With Apple Entitlement 추가해야함

https://developer.apple.com/documentation/bundleresources/entitlements/com_apple_developer_applesignin

 

특징

Private Email Relay Service

사용자는 계정 설정시 개인 이메일 주소를 비공개로 하고 애플의 Private Email Relay Service를 사용할 수 있음

사용자에게 메일을 보내려면 아웃바운드 전자 메일 도메인을 등록해야 함

 

Q. 아웃바운드 전자 메일 도메인을 등록?

Apple private email relay service를 사용하는 사용자에게 연락하려면 조직에서 통신에 사용할 도메인 및 이메일 주소를 등록해야한다.

도메인과 도메인에 연결된 이메일 주소는 Sender Policy Framework를 준수해야 하며, 등록 전에 애플이 검증하는 절차가 있다. (아래 Development-Configuration 참고)

 

Service API

Sign In with Apple API를 앱에 전달된 인증 코드를 확인하고 애플 서버를 통해 직접 사용자의 상태를 확인할 수 있음

사용자 세션 확인 가능

ExampleApp 에는 아직 관련 확인 내용 없음

 

얻을 수 있는 공개 정보

전체이름(성, 이름), 이메일

단, 이메일은 Private Email Relay Service로 인해 Identifier로 유저를 구분해야함

 

참고

https://developer.apple.com/documentation/authenticationservices/asauthorization/scope

 

Guidelines

1. AppleID를 사용하기 위해 폼을 입력해야한다던가, 비밀번호를 입력해야하는 절차가 없어야 함 .

Displaying a Sign In with Apple button in your app or website means that people can sign in or sign up with just a tap using the Apple ID they already have, and skip filling out forms, verifying email addresses, and choosing passwords. 

Sign In With Apple 버튼을 앱이나 웹에 표시한다는 것은, 유저가 이미 가지고 있는 Apple ID를 사용하여 탭만으로도 로그인하거나 등록할 수 있고. 양식 작성, 이메일 주소 확인, 비밀번호 선택등을 생략한다는 것을 의미한다.

Sign In with Apple provides a new, more private way to simply and quickly sign into apps and websites while giving people a consistent sign-in experience they can trust and the convenience of not having to remember multiple accounts and passwords.

Sign In with Apple은 간단하고 신속하게 앱과 웹사이트에 로그인할 수 있는 새롭고 더 private한 방법을 제공하는 동시에 사람들에게 신뢰할 수 있는 일관된 로그인 경험과 여러 개의 계정과 비밀번호를 기억하지 않아도 되는 편리함을 제공한다.

사용자가 앱의 로그인 흐름 내에서 저장된 암호를 검색할 수 있도록 해야 한다.

 

참고

https://developer.apple.com/documentation/authenticationservices

 

2. 유저는 이메일 주소를 비공개로 하고 대신 고유한 임의의 이메일 주소를 공유할 수 있다. (Private Email Relay Service)

iOS는 AuthenticationServices 프레임워크를 사용하여 대응가능

 

3. API에서 제공하는 버튼 존재함

사용하지 않아도 되나 HIG를 따라야 함

 

Configuration 

development.apple.com의 Certificates, Identifiers & Profiles 메뉴에서 식별자와 키를 설정해아함

 

도메인의 소유권을 확인하려면 다운로드를 선택하여 verification 파일을 가져오고 아래 나열된 URL에 업로드한 후 확인을 누르기

등록된 도메인과 관련된 모든 이메일 주소는 Apple private email relay service을 사용하는 고객에게 메일을 받을 수 있음

 

 

위에 등록된 이메일 주소로 Apple private email relay service를 사용하는 고객과 메일을 주고 받을 수 있음

 


앞으로 확인해 보고 싶은 점

1. 앱을 사용하는데 필요한 약관동의 절차같은거는 적용되어도 되는건지?

=> 애플 코리아에게 문의해봤지만 역시나 안알려줌ㅋ

 

2. 현재(20190925) 기준으로 쏘카가 애플 로그인이 적용된 채로 나왔다.

여기서 애플 로그인으로 회원가입은 없고 로그인만 제공하고 있는데, 이렇게 해도 상관없을까?

=> 쏘카는 계정이 존재해야지만 이용할 수 있는 서비스이기때문에, 애플 로그인은 부수적으로 적용된 상태

 

3. 쏘카에 애플 로그인 적용 방식은 잘 모르겠으나 우선 표면적으로는 애플아이디로 사용하고 있는 이메일이 없는 경우 이메일을 찾을수 없다는 팝업이 노출된다.

이메일 기반으로 아이디를 체크하고 있는 것 같은데,,,  이메일 기반으로 동작되면 안되는 걸로 가이드를 이해했는데.. private 이메일로 적용되면 새로운 아이디로 인지하는게 맞을까?

=> 쏘카는 계정이 존재해야지만 이용할 수 있는 서비스이기때문에, 애플 로그인은 부수적으로 적용된 상태

 

 

 

 

반응형

댓글