iOS 키보드의 전체 접근 권한 허용은 무엇을 뜻하나요
이 권한이 기술적으로 무엇을 열어 주는지, iOS가 왜 그렇게 무서운 문구로 경고하는지, 그리고 특정 키보드에 이 권한이 정말 필요한지 어떻게 판단할지 정리했습니다.
아이폰에서 어떤 키보드든 전체 접근 권한을 켜려고 하면, 이 키보드가 신용카드 번호와 비밀번호를 포함해 입력하는 모든 내용을 전송할 수 있다는 취지의 경고가 뜹니다. 읽고 나면 손이 멈칫할 수밖에 없는 문장이고, 방금 내려받은 키보드의 설정을 중간에 포기하게 만드는 가장 흔한 이유이기도 합니다. 그래서 이 문장이 정확히 무엇을 말하고 무엇을 말하지 않는지 짚어 볼 가치가 있습니다.
기술적으로는 이런 이야기입니다
iOS의 키보드 확장은 기본 상태에서 네트워크 접근이 아예 없는 샌드박스 안에서 동작합니다. 자신이 붙어 있는 텍스트 필드를 볼 수 있고, 사실상 그것이 전부입니다. 인터넷에 접속할 수 없고, 시스템 클립보드를 읽을 수 없고, 위치 정보를 쓸 수 없으며, 자기를 담고 있는 앱의 저장 공간과도 일반적인 방식으로는 데이터를 주고받지 못합니다.
전체 접근 권한을 켜면 이 샌드박스가 풀립니다. 구체적으로는 다음이 허용됩니다.
- 네트워크 접근. 확장이 서버로 요청을 보낼 수 있게 됩니다.
- 시스템 페이스트보드, 즉 클립보드에 대한 접근.
- 해당 키보드를 담고 있는 앱과의 공유 저장 공간.
- 앱이 별도로 요청한 경우에 한해, 위치 정보 같은 일부 시스템 서비스에 대한 접근.
그러니 경고 문구는 정확하지만 동시에 일반적인 문장입니다. 지금 설치한 그 키보드에 대한 평가가 아닙니다. 네트워크 접근이 가능해진 이상 확장이 입력 내용을 가지고 무엇을 하는지 시스템이 더 이상 기술적으로 보장할 수 없다는 사실을 알려 주는 것입니다. 애플은 클라우드 동기화를 하는 대형 키보드에도, 테마만 바꿔 주는 작은 유틸리티에도 똑같은 문구를 보여 줍니다.
키보드가 이 권한을 요구하는 이유
납득할 만한 이유는 몇 가지로 정리됩니다.
- 클립보드 기능. 키보드 도구 막대에 있는 붙여넣기 버튼이나 클립보드 기록 패널은 이 권한 없이는 원리적으로 동작할 수 없습니다.
- 사용자 사전, 학습한 단어, 설정 값을 여러 기기 사이에서 동기화하는 기능.
- 서버에서 처리하는 예측 입력, 번역, 문법 검사처럼 텍스트를 기기 밖으로 보내야 하는 기능.
- 설치 이후에 테마, 사전, 언어 팩을 내려받는 기능.
- 사용 통계 수집. 사용자 입장에서 얻는 것 대비 위험이 가장 큰 이유입니다.
이 중 어느 것도 하지 않는 키보드라면 전체 접근 권한을 요구할 정직한 이유가 없고, 스위치를 끈 상태에서도 기능이 온전해야 정상입니다.
특정 키보드를 판단하는 방법
아래 세 가지 질문이면 대부분 판단이 섭니다.
- 전체 접근 권한을 끈 상태에서도 아예 쓸 수 있는가. 권한을 주기 전에는 입력조차 되지 않는다면 좋지 않은 신호입니다. 글자를 입력하는 일 자체에는 어떤 특별한 권한도 필요하지 않기 때문입니다.
- 개발자가 이 권한을 무엇에 쓰는지 구체적인 표현으로 밝혀 두었는가. 모든 기능을 쓰려면 필요하다는 말은 설명이 아닙니다. 붙여넣기 버튼에 필요하다는 말이 설명입니다.
- App Store의 개인정보 처리방침 표시에 무엇이 적혀 있는가. 수집하는 항목이 없고 서버도 없는 키보드라면, 권한이 열려 있어도 보낼 곳 자체가 없습니다.
그냥 꺼 둔 채로 써 보면서 무엇이 안 되는지 확인하는 방법도 있습니다. 전체 접근 권한은 설정 앱 → 일반 → 키보드 → 키보드 → 해당 키보드 항목 안의 스위치이고, 언제든 다시 끌 수 있습니다.
켜기 전에 기억해 둘 점
이 권한은 항목별로 나뉘어 있지 않고 한 번에 샌드박스 전체를 여는 방식입니다. 클립보드만 열고 네트워크는 막아 두는 식의 선택은 존재하지 않습니다. 그래서 iOS의 확인 문구가 그토록 강한 표현을 쓰는 것이고, 판단의 무게가 사용자에게 넘어오는 것이기도 합니다. 필요한 기능이 분명할 때만 켜고, 그 기능을 더 이상 쓰지 않게 되면 다시 꺼 두는 편이 합리적입니다.
자주 묻는 질문
전체 접근 권한이 켜져 있으면 키보드가 비밀번호를 읽을 수 있나요?
보안 텍스트 필드에서는 읽을 수 없습니다. 비밀번호 입력칸과 결제 입력칸에서는 어떤 키보드를 설치해 두었든 iOS가 자체 키보드로 전환하기 때문에, 서드파티 코드가 그 텍스트를 보는 일 자체가 일어나지 않습니다. 전체 접근 권한이 바꾸는 것은 일반적인 입력 내용을 기기 밖으로 보낼 수 있는지 여부입니다.
한 번 켠 전체 접근 권한을 다시 끌 수 있나요?
언제든 끌 수 있습니다. 설정 앱 → 일반 → 키보드 → 키보드 에서 해당 키보드를 선택하고 스위치를 내리면 됩니다. 그 권한에 의존하던 기능만 동작을 멈추고, 나머지는 그대로입니다.
전체 접근 권한을 켜지 않으면 키보드를 못 쓰나요?
글자를 입력하는 일에는 어떤 권한도 필요하지 않으므로, 제대로 만들어진 키보드라면 스위치가 꺼진 상태에서도 정상적으로 입력됩니다. 오히려 권한을 주기 전까지 입력이 되지 않는다면, 입력이 요구하지 않는 무언가를 요구하고 있다는 신호로 보는 편이 좋습니다.
내 키보드에서 직접 써보기
Kibo는 진짜 기계식 키음과 다양한 테마, RGB 백라이트 효과를 갖춘 iPhone용 무료 키보드입니다. 계정도 광고도 없고, 전체 접근 권한을 꺼둔 상태에서도 작동합니다.