한국의 개발자들을 위한 Google for Developers 국문 블로그입니다.
더 나은 사용성과 보안을 위해 - 웹뷰에서의 OAuth 사용 제한
2016년 8월 29일 월요일
ID 팀은, 사용자가 자신의 구글 계정을 이용해, 다양한 애플리케이션에 쉽고 안전하게 로그인하고, 그리고 달력 또는 연락처 등의 정보를 다른 앱과 공유할 수 있도록 노력하고 있습니다.
이러한 상호 작용은 OAuth 요청을 통해 이루어지며, 구글은 개발자가 구글과 자신의 서비스 사이에 OAuth 흐름을 구현할 수 있는 다양한 방법들을 수년간 지원해왔습니다. 저희는 더 나은 보안과 사용성을 염두에 두고서 이런 방법 중 하나를 곧 종료할 예정입니다.
향후 몇 개월 내에 저희는 “웹 뷰”라고 하는 임베디드 브라우저에서 구글에 대한 OAuth 요청을 더 이상 허용하지 않을 것입니다.
(예: 안드로이드의 웹뷰 UI 요소, iOS의 UIWebView/WKWebView, Windows 및 OS X의 해당 요소).
임베디드 웹 뷰 대신에 OAuth 요청을 위해 기기 브라우저를 사용할 경우, 앱의 사용성이 상당히 개선됩니다. 사용자는 기기당 한 번만 구글에 로그인하면 됩니다. 여러분의 앱의 로그인 전환율이 개선됩니다. 일부 운영 체제에서 사용 가능한 최신 “인앱 브라우저 탭” 패턴(예: 안드로이드의 크롬 커스텀 탭, iOS의 SFSafariViewController)을 활용하면, 보다 자연스러운 UX 환경을 제공할 수 있습니다.
이와 반대로, OAuth를 위해 임베디드 브라우저를 사용하는 방법은 사용자가 기존의 로그인된 세션을 사용하는 대신, 매번 구글에 로그인해야 합니다. 또한, 웹뷰를 사용할 때와는 달리, 개별 앱은 기기 브라우저에 표시되는 컨텐츠의 내용을 분석하거나 변경할 수 없음으로 보안이 향상됩니다.
여러분의 마이그레이션을 돕기 위해, 저희는 여러분이 이용할 수 있는 다음과 같은 라이브러리와 샘플을 제공합니다.
구글 계정으로 로그인 및 OAuth를 위해 저희가 권장하는 SDK인
안드로이드
및
iOS
용
Google Sign-In
.
구글 및 기타 OAuth 공급자와 함께 사용될 수 있는 오픈 소스 OAuth 클라이언트 라이브러리인
안드로이드
,
iOS 및 OS X
용
AppAuth
. 저희는
Objective-C용 Google API 클라이언트 라이브러리
와
GTM Session Fetcher
프로젝트에 대한 AppAuth 지원을 활성화하는 라이브러리인
GTMAppAuth
(iOS 및 OS X용)도 제공합니다.
Windows용 구글 로그인 및 OAuth 예제
. 이 예제에서는 UWP(Universal Windows Platform), 콘솔, 데스크톱 앱과 같은 다양한 Windows 환경에서 브라우저를 사용하여 구글 사용자를 인증하는 방법을 보여줍니다.
또한, 네이티브 앱을 지원하는 저희의 표준 기반 지원에 대해서는
프로토콜 수준 설명서
와 이 주제에 관한
IETF 최신 모범 사례
초안을 읽어보실 수 있습니다.
iOS에서 구글 로그인의 버전이 3.0 이전인 경우에는 인앱 브라우저 탭의 최신 모범 사례를 지원하지 않으며, 따라서 지원이 중단되었습니다. 구글 로그인을 사용하는 경우, 보안 및 사용성에 관련된 모든 최신 정보를 얻으려면 최신 버전으로 업데이트하세요. 현재 이 정책에서 iOS 8 상에서 웹뷰 지원을 제거하는 것은 아니지만, 보안을 더욱 강화하기 위해 사용자가 자신의 기기를 업그레이드하도록 알려주는 알림을 저희가 표시할 수도 있습니다.
구글에 대한 OAuth 요청 시에 웹 뷰의 지원 중단을 위한 출시 일정은 다음과 같습니다.
2016년 10월 20일
부터 가능한 대안이 있는 플랫폼 상에서 새 OAuth 클라이언트가 웹 뷰를 사용하지 못하게 차단할 것이며, 기존 OAuth 클라이언트의 경우는 사용자에게 직접 노출되는 알림을 단계적으로 표시할 것입니다.
2017년 4월 20일
에 저희는 가능한 대안이 존재하는 플랫폼 상에서 모든 OAuth 클라이언트에 대해 웹 뷰를 사용하는 OAuth 요청을 차단하기 시작할 것입니다.
마이그레이션에 대한 질문이 있으신 경우, “
google-oauth
”라는 태그가 붙은 Stack Overflow에 게시물을 올려주세요.
게시자: William Denniss, 제품 관리자, ID 및 인증
Contents
ML/Tensorflow
Android
Flutter
Web/Chrome
Cloud
Google Play
Community
Game
Firebase
검색
Tag
인디게임페스티벌
정책 세미나
창구프로그램
AdMob
AI
Android
Android 12
Android 12L
Android 13
Android 14
Android Assistant
Android Auto
Android Games
Android Jetpack
Android Machine Learning
Android Privacy
Android Studio
Android TV
Android Wear
App Bundle
bootcamp
Business
Chrome
Cloud
Community
compose
Firebase
Flutter
Foldables
Game
gdg
GDSC
google
Google Developer Student Clubs
Google Play
Google Play Games
Interview
Jetpack
Jetpack Compose
kotlin
Large Screens
Library
ma
Material Design
Material You
ML/Tensorflow
mobile games
Now in Android
PC
Play Console
Policy
priva
wa
wear
Wearables
Web
Web/Chrome
Weeklyupdates
WorkManager
Archive
2024
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2023
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2022
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2021
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2020
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2019
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2018
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2017
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2016
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2015
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2014
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2013
12월
11월
10월
9월
8월
7월
6월
5월
4월
3월
2월
1월
2012
12월
11월
10월
9월
8월
7월
6월
5월
3월
2월
1월
2011
12월
11월
Feed