자유 인앱 브라우저 사용 경험이 떨어지는 이유는 SSO 때문입니다.
- 콜홍
- 조회 수 451
- 2024.07.19. 08:24
Single Account도 아니고 Sing Sign On인데 말로만 싱글 사인온인 사이트가 많아요.
번역하면 한 번 로그인이죠. (한국에선 로그온아리는 말은 잘 안 하니..)
인앱 브라우저에서 네이버 로그인을 하려고 하면 네이버에 로그인을 해야 합니다.
구글도 마찬가지구요.
몇몇 사이트들은 아이폰에 저장된 구글 계정으로 로그인 한다던가, 네이버 앱으로 연결해줍니다.
그러면 로그인하려는 계정 선택하면 로그인이 되죠.
그게 진짜 한 번 로그인인데...
네이버 앱에서 로그인해두면 폰이든 피시든 피시방이든 다시 아이디와 패스워드를 입력할 필요가 없는 것이죠. 그게 구현이 안 된 것도 아니고요.
옛날엔 그냥 소셜 로그인이라고 불렸었던던데, 구글이나 네이버를 소셜이라고 할 수 없으니 싱글 사인온이라는 멋드러진 말을 쓴거라고 생각하는건지
싱글사인온이 진짜 싱글 사인온이 아닌게 참 안타까울 따름입니다
기본 브라우저를 썼으면 로그인 되어있었을 사이트들이 카톡 인앱 브라우저에서 로그인이 안 되어있고, 그게 참 불편해요. 싱글 사인온이라면 로그인이 귀찮거나 불편한 부분이 아니데 말이죠.
sso 자체는 사이트간의 정책이지 브라우저는 그저 쿠키 관리하는 역할이고요. 이건 좀 다르다 볼수있죠.
네이버앱은 크로뮴 엔진을 직접 올린 사실상 브라우저고, 통상 인앱브라우저라 불리는 물건들은 대부분 시스템 웹뷰를 쓰는걸로 압니다.
웹뷰자체는 거의 크로뮴 열화판 웹표시기 수준이고, 초보적인 쿠키관리와 js 구동이 가능합니다만 앱 프로세스별 쿠키 관리는 별도로 되고 있습니다. 다만 js 콜을 가지고 앱 네이티브와 연동하는 특수한 처리를 하는데 있어서 유용성이 있다보니 일부 개발 환경에선 유용하게 쓰입니다.
솔직히 카톡이 인앱브라우저 이어주는 부분은 그정도의 필요성은 없다 보는데, 모르겠네요. 제가모르는 기능이 더 있는지.. 다만 그렇다고 짜잘한 브라우징에 네이버앱처럼 크로뮴 엔진을 막 추가할순 없는게 이게 용량이 무식하게 큽니다.
저는 엔지니어링 관점에서 그냥 동작의 이유만 밝힌것일 뿐이고요. 딱히 사용자가 이해하길 바라는건 아니고 현실적인 문제가 이런게 있다는것만 얘기할 뿐입니다. 엔지니어링 관점에서 사용자에게 혼란을 주는 말이 안되는 스펙은 보통 빼고가자고 의사결정이 나는경우가 많고요.
브라우저별(X) -> 웹뷰별 로그인이 따로 되는 부분이고, 이건 시스템에서 프로세스 레벨로 강제하는거라 일반 개발자 레벨에선 이를 이을 수 있는 방법은 현실적으로 존재하진 않습니다. 애초에 쿠키가 다른 이상 사용자가 같다는걸 증명할 방법이 그 사이트들에서도 없다는게 문제인거죠. 무슨 인증방식을 가져오든 사이트도 결국 브라우저 위에서 돌아가는 법이니.
저도 그래서 이런 연속성을 해칠 수 있는 웹뷰 남용을 당연히 좋아하지 않고요. 가급적 쓰던 브라우저로 보내주는게 최선인데 특정 동작을 오버라이드 하지 않는 이상 인앱브라우저 고집하는건 별로 좋지않은 경험이란 뜻이었습니다.
죄송하지만 SSO라는 단어에 대해서 좀 오해가 있으신것 같은데요. SSO도 결국 브라우저 위에서 도는 인증 개념입니다. 그 브라우저를 탈출하면 별도의 툴이 개입하지 않는이상 통합으로 인증 관리하기가 불가능합니다.
보통 OAuth2같은 기술이 많이 언급되는데, 그 OAuth2도 토큰 교환으로 SSO 구현을 하지만 결국 그 토큰을 브라우저 끈 이후에도 다루려면 쿠키나 세션 정보가 있어야 하고 이것 또한 브라우저의 세계를 벗어나면 나가리가 된다는 의밉니다.
https://aws.amazon.com/ko/what-is/sso/
뭐 말씀 하신 내용들에 대한 기술적 대안으로써 삼성패스 같은게 존재하는지도 모르겠습니다.
카톡 브라우저때문에 빡쳤던 게 한두번이 아닙니다.
사파리랑 대부분의 크로미움 기반 모바일 브라우저에 SSO용 임시 인스턴스를 띄우는 기능이 이미 있는데도 굳이굳이 앱 안에서 웹뷰를 열어야 하나...