누구나 개인적이고 민감한 정보에 대해 신뢰할 수 있는 OS와 앱을 원합니다. 개인정보 보호는 Android 제품의 핵심 원칙입니다. 'Android 개인정보 보호 관련 새로운 소식' 세션에서도 안내해드렸듯이, Android 12는 플랫폼의 개인정보 보호를 강화하여 기존 토대를 계속 확장해 나갈 것입니다.
이 발표는 사용자에게 앱이 액세스할 수 있는 데이터를 투명하게 밝히는 한편, 정보에 입각하여 선택할 수 있도록 단순한 제어 방식을 제공합니다. 또한 Android는 앱이 제공하는 기능에 필요한 데이터에만 액세스할 수 있도록 권한 범위를 줄이기 위해 노력하고 있습니다. Android 12에서 사용자 개인정보 보호를 위해 변경된 이러한 몇 가지 중요한 사항을 살펴보겠습니다.
개인정보 보호 대시보드(Privacy dashboard): 사용자들이 앱에서 사용하는 데이터를 알고 싶다고 요청하는 경우가 종종 있습니다. 새로운 개인정보 보호 대시보드에서 사용자는 위치, 마이크, 카메라에 대한 최근 24시간의 액세스 현황을 단순하고 명확한 타임라인으로 볼 수 있습니다. 또한 Android 12의 신규 권한 인텐트 API로 앱의 데이터 사용에 대한 맥락을 더욱 상세히 제공할 수 있습니다. 개인정보 보호 대시보드는 베타 2에서 사용해 볼 수 있습니다.
모든 개발자가 코드를 검토하고 타사 SDK를 비롯하여 액세스가 필요한 데이터를 파악함으로써 모든 액세스에 확실한 사용 근거가 있는지 점검하는 것을 권장합니다. 이를 돕기 위해 현재 데이터 액세스를 간편하게 분석할 수 있도록 Android 11에 Data Access Auditing API를 추가하였습니다. 이 API를 사용하여 코드의 어느 부분이 비공개 데이터에 액세스하는지 추적하여 코드의 매핑을 정리할 수 있습니다.
그림 1. 개인정보 보호 대시보드 및 최근 24시간의 위치 액세스 타임라인.
마이크 및 카메라 표시기(Microphone and camera indicators): Android 12의 경우 마이크 및 카메라 액세스에 투명성 기능을 추가하고 있습니다. 앞으로 앱이 마이크 또는 카메라 피드에 액세스하면 사용자가 실시간으로 알게 됩니다. 빠른 설정을 열기만 하면 사용자의 데이터에 액세스 중인 앱을 볼 수 있습니다. 액세스를 원치 않는 경우 사용자는 즉시 앱 권한 페이지로 이동하여 권한을 취소할 수 있습니다.
개발자는 마이크와 카메라 사용을 검토하고 사전에 원치 않는 액세스를 삭제해야 합니다. 예를 들어 센서에 액세스가 필요한 기능을 사용자가 클릭하기 전에는 앱이 액세스하지 않도록 해야 합니다. 마이크와 카메라 표시기는 베타 2에서 사용해 볼 수 있습니다.
그림 2. 마이크 및 카메라 표시기 및 상태 전환
마이크 및 카메라 상태 전환(Microphone and camera toggles): 카메라에 스티커를 붙이거나 휴대폰에 오디오 차단기를 연결한 사람들을 본 적이 있을 것입니다. Android 12에서는 사용자가 쉽고 빠르게 앱의 기기 마이크 및 카메라 액세스를 차단하는 두 가지 새로운 제어 방식을 도입합니다. 사용자의 안전을 위해 긴급 전화는 배제됩니다.
권한 있는 앱이 마이크나 앱에 액세스하려 하지만 사용자가 센서를 꺼 둔 경우, 시스템에서는 사용자에게 앱 기능을 사용하려면 해당 센서를 다시 켜야 한다고 메시지로 알립니다. 앱이 권한 모범 사례를 따르고 있다면 상태 전환을 도입하는 데 별도의 작업이 필요하지 않습니다. 마이크 및 카메라 상태 전환은 베타 2에서 사용해 볼 수 있습니다.
대략적인 위치(Approximate location): 최근 두 번의 출시에 걸쳐 Google은 위치 권한을 더욱 세분화했습니다. 먼저 백그라운드와 포그라운드 액세스를 분리했습니다. 그다음 '이번만 허용(only this time)' 옵션을 추가하여 백그라운드 위치에 대한 액세스를 한층 더 제한했습니다. 사용자가 이러한 제어에 긍정적으로 반응하고 이 옵션을 더 자주 사용하는 것을 관찰했습니다. '이번만 허용' 옵션을 제시했을 때 사용자는 약 80%의 경우 포그라운드 위치 액세스에 더 적은 정보를 공유하는 것을 선택했습니다.
Android 12에서는 사용자에게 위치 데이터에 대한 제어권을 강화합니다. 사용자는 대략적인 위치를 선택함으로써 앱에 제공하는 위치 정확도에 대해 명확한 선택을 할 수 있습니다.
위치에 대한 사용 상황을 검토하고, 사용자의 정확한 위치가 필요한 기능이 아니라면 ACCESS_COARSE_LOCATION을 요청하는 것을 권장합니다. 사용자가 위치 정확도를 낮추는 것에도 대비해야 합니다. 사용자가 대략적인 위치를 선택했을 때도 앱이 작동하는지 확인하시기 바랍니다. 대략적인 위치는 베타 1에서 사용해 볼 수 있습니다.
그림 3. 대략적인 위치 및 정확한 위치 선택이 제시된 위치 권한 요청 대화상자
클립보드 읽기 알림(Clipboard read notification): 사용자들이 이메일, 주소 심지어 암호도 종종 복사하는 만큼, 클립보드에 복사된 콘텐츠에는 민감한 정보가 담겨 있습니다. Android 12에서는 앱이 클립보드를 읽을 때마다 사용자에게 알림이 전송됩니다. 앱이 getPrimaryClip()을 호출할 때마다 사용자의 화면 하단에 토스트 메시지가 나타납니다. 클립보드 데이터의 출처가 해당 앱인 경우 토스트 메시지가 나타나지 않습니다. getPrimaryClipDescription()을 먼저 확인하여 클립보드에 있는 데이터 유형에 대해 알아봄으로써 액세스를 최소화할 수 있습니다. 권장 모범 사례는 사용자가 액세스 발생을 납득할 수 있을 때만 클립보드에 액세스합니다. 클립보드 읽기 알림은 베타 2에서 사용해 볼 수 있습니다.
주변 기기 권한(Nearby device permissions): Android 12는 위치를 사용하지 않는 주변 환경에 대해 새로운 런타임 권한을 추가하여 데이터 액세스를 최소화합니다. 지금까지는 시계, 헤드폰 호환 앱과 같은 앱에서 페어링할 주변 블루투스 기기를 스캔할 때 위치 권한을 요청했습니다. Google은 이것이 오해를 일으킬 뿐만 아니라 위치 데이터가 필요하지 않은 경우에도 액세스 권한이 부여된다는 사용자와 개발자의 의견을 들었습니다. Android 12를 타겟으로 하는 앱에서는 기기 페어링 등의 사용 사례에서 새로운 BLUETOOTH SCAN 권한을 사용하고 usesPermissionFlags=neverForLocation을 선언하여 정밀한 위치 권한과 주변 기기 찾기를 분리할 수 있습니다. 기기가 페어링된 후에는 앱에서 새로운 BLUETOOTH_CONNECT 권한으로 기기와 상호작용할 수 있습니다. 블루투스 위치 검색을 사용하는 앱은 여전히 위치 권한이 있어야합니다. 주변 기기 권한은 베타 1에서 사용해 볼 수 있습니다.
앱 절전(App hibernation): 작년 Google은 권한 자동 재설정(permissions auto-reset)을 출시했습니다. 앱을 장기간 사용하지 않으면 Android가 자동으로 앱의 권한을 취소합니다. 최근 14일간 850만 개 앱의 권한이 재설정되었습니다. 올해 Google은 장기간 사용하지 않은 앱을 지능적으로 절전 모드로 전환하여 권한 자동 재설정 기능을 강화함으로써 기기 저장용량과 성능, 안전성을 최적화할 것입니다. 이 시스템은 사용자가 이전에 허용했던 권한을 취소할 뿐만 아니라 앱을 강제 종료하고 메모리, 저장용량, 기타 임시 리소스를 회수합니다. 사용자는 앱을 실행하여 절전 모드를 쉽게 해제할 수 있습니다. 앱 절전은 베타 1에서 사용해 볼 수 있습니다.
Android 12는 가장 강력한 개인정보 보호 기능을 갖춘 제품입니다. 이를 실현하기 위해 개인정보 보호를 우선하는 한편, 개발자에 미칠 영향을 고려한 플랫폼을 구축하고자 개발자 커뮤니티와 밀접하게 협력하였습니다. 개인정보를 보호하고 모두에게 안전한 플랫폼을 만들기 위해 여러분이 보내주신 끊임없는 의견과 지원에 감사드립니다. 개발자 사이트에서 이러한 변경 사항에 대해 자세히 알아보세요.