해설

Site Pulse가 Analytics를 읽기만 하는 이유

Google 권한 하나하나가 무엇을 위한 것인지, 로그인 정보가 어디에 보관되는지, 실시간 현황 서버가 무엇을 보관하는지 알려드려요.

Site Pulse 팀 · 3분 분량 다른 언어로 읽기 English · Português · Español · Français · Deutsch · Italiano · 日本語 · 简体中文

iPhone의 Site Pulse 설정: Add Google Account 버튼이 있는 Google 계정, 사이트, 사이트 색상
Site Pulse의 Settings: Google 계정, 사이트, 사이트 색상.

앱에 Google을 연결하면 Google이 그 앱이 원하는 권한 목록을 보여줘요. 이 목록은 앱이 내 계정으로 무엇을 할 수 있는지를 정하기 때문에 꼭 읽어볼 만해요. Site Pulse의 목록은 일부러 짧게 만들었어요. 이 글에서는 목록의 항목 하나하나와, 로그인한 뒤 로그인 정보가 어디에 보관되는지, 그리고 데이터가 저희 서버에 닿는 유일한 곳을 설명해요.

권한, 하나씩 살펴보기

Site Pulse는 Google에 네 가지를 요청해요.

  • Google Analytics 읽기 전용 권한(analytics.readonly). 가장 중요한 권한이에요. Site Pulse가 GA4 속성과 그 보고서, 즉 실시간 방문자, 오늘과 이번 달, 국가, 페이지, 이벤트를 읽을 수 있게 해줘요. 무언가를 바꾸는 건 허용하지 않아요.
  • OpenID(openid), 이메일, 프로필. Google의 표준 로그인 권한이에요. 방금 어떤 Google 계정을 연결했는지 앱이 알 수 있게 해줘서, 여러 계정을 구분하고 어느 계정이 어느 것인지 보여줄 수 있어요.

목록은 이게 전부예요. Gmail, Drive, Calendar, 연락처를 비롯해 Analytics 밖의 어떤 것에도 접근하지 않아요.

‘읽기 전용’이 막아주는 것

읽기 전용은 저희 코드 속 약속이 아니라 Google이 강제하는 거예요. 이 권한으로는 계정을 바꾸려는 요청을 Google이 그냥 거부해요. Site Pulse는 이런 일을 할 수 없어요.

  • 속성 설정, 데이터 스트림, 데이터 보관 기간 변경
  • 사용자 추가나 삭제, 사용자 역할 변경
  • 이벤트, 주요 이벤트, 잠재고객, 보고서 생성, 수정, 삭제
  • 데이터 삭제

실시간 숫자 앱은 읽기만 하면 되니까, 읽기 권한만 요청해요. 무슨 일이 있어도 이 권한으로 할 수 있는 최대치는 보는 것뿐이에요.

로그인 정보가 보관되는 곳

로그인한 뒤 Site Pulse는 로그인 정보를 기기의 키체인에 보관해요. Apple이 암호를 보관할 때 쓰는 바로 그 안전한 저장소예요. 로그인 정보는 iCloud 키체인을 통해 기기 사이를 오가기 때문에, Mac에서 연결한 계정이 iPhone에도 나타나요.

어떤 속성을 지켜보는지, 짧은 이름과 색상은 무엇인지 같은 사이트 선택은 iCloud를 통해 옮겨져요.

어느 기기가 누구와 통신할까요

  • iPhone, iPad, Mac은 Google에서 직접 숫자를 읽어와요. Mac에서 Site Pulse는 Google하고만 통신하고, 저희 서버와는 절대 통신하지 않아요.
  • Apple Watch는 iPhone에서 숫자를 받아요.
  • Apple TV는 iPhone과 연결해 로그인해요. TV에 QR 코드가 나오면 그걸 스캔하고, 계정은 중간에 서버를 거치지 않고 암호화된 상태로 로컬 네트워크를 통해 옮겨져요.
  • iPhone과 iPad의 위젯은 15분보다 오래되면 Google에서 직접 새 숫자를 가져와요.

단 하나의 서버: 실시간 현황

실시간 현황은 Site Pulse가 닫혀 있는 동안에도 1분마다 계속 업데이트돼요. 닫힌 앱은 이걸 스스로 할 수 없기 때문에 Site Pulse 서버가 대신해요. 1분마다 Google에서 실시간 숫자를 읽어와 Apple을 통해 실시간 현황으로 보내요.

이를 위해 서버는 두 가지를 보관해요.

  1. Google 계정 ID. Google이 계정을 식별할 때 쓰는 번호예요. 이메일 주소는 절대 아니에요.
  2. 새로 고침 토큰. Google에 새 숫자를 요청할 수 있게 해주는 읽기 전용 권한이에요. 저장하기 전에 관리형 키 서비스로 암호화해요.

둘 다 Site Pulse의 Delete my Live Activity data로 언제든 지울 수 있어요. 실시간 현황을 더 이상 쓰지 않으면 30일 후에 데이터가 삭제돼요.

권한 되돌리기

원할 때 언제든 Google 쪽에서 Site Pulse의 권한을 거둘 수 있어요. Google 계정에서 보안 설정을 열고, 계정에 접근할 수 있는 서드파티 앱 및 서비스 목록에서 Site Pulse를 골라 접근 권한을 삭제하세요. 다음에 숫자가 필요할 때 앱이 다시 로그인하라고 요청하고, 실행 중인 실시간 현황에는 “paused · reconnect in Site Pulse”가 표시돼요.

자세한 내용은 개인정보 처리방침에 있어요. 궁금한 점이 있다면 지원 페이지에서 물어보세요.

자주 묻는 질문

Site Pulse가 Google Analytics에서 무언가를 바꾸거나 지울 수 있나요?

아니요. Analytics에 대한 읽기 전용 권한만 요청하기 때문에, 실수로라도 설정, 사용자, 데이터를 바꾸는 건 Google이 허용하지 않아요.

Site Pulse가 내 이메일 주소를 보나요?

로그인 권한 덕분에 앱이 어떤 Google 계정을 연결했는지 보여줄 수 있어요. 실시간 현황 서버는 이메일을 절대 저장하지 않고, Google 계정 ID만 보관해요.

실시간 현황 데이터는 어떻게 지우나요?

Site Pulse 설정의 Delete my Live Activity data를 쓰세요. 실시간 현황을 더 이상 쓰지 않으면 어차피 30일 후에 데이터가 삭제돼요.

모든 글 

같은 개발자의 다른 앱

사진과 사이트를 아끼는 분들을 위한 앱 일곱 개가 더 있어요.