애플 사용자로서 상당히 많은 앱 서비스에 가입할 때 '애플로 로그인' 기능을 이용한다.
그런데 이제 네이버, 카카오 등과는 다르게 애플이 나한테 이메일 비공개 여부 선택권을 매번 주기 때문에 나도 매번 비공개로 선택하는 편.
애플로 로그인을 구현하고 나면 이 옵션을 선택한 사용자한테서는 ```~@privaterelay.appleid.com``` 형태의 이메일 주소만 받을 수 있는데,
이번에 회원 탈퇴 기능을 추가하면서 사용자가 가입했던 이메일로 코드 발송 → 인증하는 과정을 구현해야 했다.
변형된 값도 이메일 주소 형태겠다, 애플이니까 알아서 잘 넘겨주게 해두지 않았을까? 생각했는데,
🔗 iPhone의 설정에서 나의 이메일 가리기 주소 생성 및 관리하기
이 설명서 보면 역시 그런 것 같았다.
그런데 아니었다.
조금 찾아보니, 애플의 이메일 릴레이 서버를 통해서만 작동하기 때문에, 정상적인 메일 송수신을 위해서 애플이 허용하는 이메일 발신 도메인을 등록해야 한다더라.
앱쪽 설정은 아닌데, 그래도 내용은 알아야 하니까 간단히 정리해둔다.
1. 공식 문서
🔗 Communicating using the private email relay service
2. SPF(Sender Policy Framework)
이메일을 발송할-본인의 경우 회원 탈퇴 인증 코드를 발송할- 도메인은 SPF 설정이 되어 있어야 한다.
본인은 위 문서 링크와 함께 담당자에게 전달했다.
이미 되어 있는 부분이라면 바로 3번 진행하면 된다.
그러나 앱개발자가 설정의 A to Z를 모두 해야 할 경우가 있을 수도 있으니, 그때는 아래 링크 한번 참고하면 좋을 것 같다. (따라해보진 않음)
🔗 [iOS] 애플로그인 - 개인정보 얻기, private email relay
3. 도메인 등록
2번 과정에서 담당자가 이것까지 다 해줬다면 ㅇㅋ인데, 아니라면 이 부분은 앱 개발자도 할 수 있다.
2-i. 인증서, 식별자 및 프로파일 카테고리에서 ```서비스 구성(Services)```을 선택한다.
2-ii. Email Sources 추가 (+ 버튼)
- Domains and Subdomains: gmail.com 형태
- Email Addresses: test@gmail.com 형태
예시라고 gmail을 적어두긴 했지만, 사실 구글 메일은 사용할 수 없다.
애플의 정책상 발신 이메일 주소로 공용 이메일 도메인은 사용 불가능하고, 커스텀 도메인만 허용한다고 한다.
(커스텀 도메인이기만 하면 Gmail의 SMTP 서버를 통해 이메일을 전송하는 건 괜찮다고 하는데, 이것도 시도해보진 않았다.)
'개발노트 > iOS' 카테고리의 다른 글
the Certification Authority (CA) for Apple Push Notification service (APNs) is changing (5) | 2024.12.06 |
---|---|
iOS 프로젝트에서 Kakao Login 설정하기 (0) | 2024.11.27 |
Swift에서 싱글톤을 쓰지 마세요 (0) | 2024.11.25 |
iOS 인앱 결제 테스트하기 (3) | 2024.11.22 |
iOS에서 API Key 파일 분리하기 (0) | 2024.11.18 |