나도 구글 드라이브를 사용할 수 있는 api 를 사용하여 인증을 OAuth2.0. 놀이를하고 그리고 나는 attaboy 몇 가지 질문 우리 섹스한거요.
클라이언트 app 가 client id 와 암호를 어떻게 내 식별하는 데 사용됩니다. 그러나 그들은 반드시 코딩된 경우 클라이언트 애플리케이션. 그래서 내 앱을 추출하여 소스 코드로부터 모두라뇨 디컴파일 수 있습니다. It 수행 할 수 있는 좋은 앱 치라구요 스크램블된 짓궂군요 나쁜 app # 39 의 클라이언트 id 와 암호를 사용하여, 좋은 app& 않기 때문에 사용자가 화면 표시 할 수 있는 권한을 부여하는 것을 요구하고 있는 가능 약간만이라도 좋은 앱 요청할 경우에도 실제로 나쁜 앱? 그렇다면 어떻게 해야 합니까? 나 진짜 걱정은 안 이?
우리가 할 수 있는 모바일 앱 (app 웹보기 포함되어 있으며, 우리의 푸십시오 웹보기 필드에 있는 앱을 쉽게 암호를 묻는 권한 때문에 실제로는 browser" ";). 그럼, OAuth 의 않을 수 없는 클라이언트 응용 프로그램이 사용자에게 액세스할 수 있는 모바일 애플리케이션 서비스 제공자 가능 크레덴셜
그런데 내가 글을 쓰기 시작한 셀명 데이터베이스에구성원을 질문 나와 너무 많습니다 그래서 여기 내 의견을 말할 수 있는 주제라서요 해답이야
예를 들어 일부 버그를 페이스북 library for Android 전송되었기 토큰으로 로깅합니다 있었다, 여기에 대한 자세한 것은 어디서 찾을 수 있습니다. http://attack-secure.com/all-your-facebook-access-tokens-are-belong-to-us avamar https://www.youtube.com/watch? v = twyL7Uxe6sk. 모두 사용 될 추가 경계하는 타사 라이브러리 (common sense) 는 실제로 있는 큰 대한 추가 납치 신앙이니라 토큰인지 염려사항 다른 추가 신중한).
내가 내 자신을 않았고, 몇 가지 연구를 통해 이 같은 질문을 경식도 같은 질문 1) 은 최근, 내 것이 되지 않도록, 클라이언트 secret" 렉시한테서 " 결론을 내렸다. 비밀. 이 유형의 클라이언트뿐 기밀을 유지할 수 없는 비밀 클라이언트입니다 호출됨 ", 공개 client". oauth2 의 spec. 누군가 가져올 수 있다는 가능성을 막을 내린 후 인증 코드 액세스 토큰, 다음에 의해 있다 "고 덧붙였다.
설사 자신이 있음을 신뢰 하는 서비스 사용자 인증 코드를 보여주는 것만으로 클라이언트상의 서비스에서 클라이언트는 클라이언트 id 와 암호를 클라이언트입니다 가져올 수 없습니다. 대신, 클라이언트 사용자 인증 코드를 직접 가져올 수 있다. (이는 나중에 얘기할 수 있는 URL 로 대개 리디렉션을 내아기마저도.) 따라서 클라이언트상의 악의적인 사용자가 id / 암호를 알 만한 클라이언트입니다 신뢰할 수 있는 것은 아니다. 이 회사는 이를 위해 속임수, 사용자 인증 코드 또는 전달자로써 mediaagent 짐작이지만요. 그냥 client id / 비밀을 알고 있는 것보다 더 많은 노력을 해야 합니다.
악의적인 사용자가 직접 관리할 수 있는 가정하겠습니다 저회가 그녀의 / 그를 ", 인증 클라이언트 짐작이지만요.) 를 이 app". 이 서비스에 대한 버튼를 호출이네요 이 서비스를 통해 사용자의 브라우저에 url 을 트리거됩니다 반응이 리디렉션합니다 인증 코드 진행합니다. 인증 코드 보낸 후, 그 클라이언트가 될 수 있어야 사용자의 브라우저에 URL 들을 선수단 리디렉션하십시오 리디렉션할 uirl 수신하십시오 인증 코드. (이 리디렉션할 uirl 수 로컬호스트 너무, 그리고 내가 생각 그것이 "공용" 클라이언트 "받고 있는 대표적인 방법이 인증 코드를.) 이 때문에 url 은 client id / secret service 를 리디렉션하십시오 레지스터링 선수단 악의적인 클라이언트입니다 제어할 수 있는 방법이 없는 것을 있는 인증 코드. 즉, 고객과의 id / 비밀 또다시 걸림돌이 입수합니다 악의적인 클라이언트 사용자 인증 코드.