2014-10-06 5 views
0

안녕하세요. 내 웹 사이트에 Google+ 로그인을 구현하려고하는데, PHP가 사용자에게 Google ID와 이메일을 확인하는 부분을 제외한 모든 기능을 사용하고있어 계정이나 i가 있는지 확인했습니다. 그들을 위해 하나를 만들어야합니다.Google+ 로그인 확인 문제

내가 겪고있는 문제는 어떻게 PHP가 클라이언트에서 자바 스크립트로부터 실제로 수신되는지 확인할 수 있습니까? 누군가가 쉽게 Google 사용자 ID와 이메일을 보내고 다른 사람으로 로그인하도록 스크립트를 수정할 수있는 것 같습니다. 어떻게 이것을 막을 수 있습니까?

내가 잘못 하나를 사용하고, 정말 실제 사용자인지 지금까지 https://developers.google.com/+/web/signin/add-button

그들은 사용자가 로그인 이잖아 백엔드에 확인하는 방법에 대한 아무 말도하지 않는이 구글에서 가이드를 따라 한 내 목적으로 사이트에 로그인하여 활성 상태 인 경우에만 계정 정보에 대한 오프라인 액세스가 필요하지 않습니다.

+0

Google에 로그인하려면 + 이메일 주소와 비밀번호가 필요합니다. 누구나 클라이언트 전자 메일 주소를 알 수 있으므로 다른 사람에게 줄 수 있습니다. 그러나 자신의 계정에 로그인하려면 "비밀번호"가 필요합니다. – Juniar

+0

@Juniar Google+ 로그인의 핵심은 사용자에게 비밀번호를 묻지 않아도된다는 것입니다. 사이트는 ** Google 비밀번호를 묻지 않습니다 **. – abraham

+0

@abraham 비밀번호가 없으면 유효한 전자 메일 주소를 가진 사람이 전자 메일 : 소유권에 관계없이 로그인 할 수 있다고 생각합니다. 그래서 프라이버시가 중요하지 않습니다. – Juniar

답변

1

5 단계에서 링크를 클릭하면 성공 결과에 대한 인증 객체가 있습니다. 여기에는 access_token이 포함되어 있습니다. 이 access_token은 권한이 부여 된 특정 사용자에게 요청 된 권한을 기반으로 액세스 권한을 식별하고 부여하는 비밀입니다. 이 access_token을 XHR 또는 다른 방법을 통해 백엔드에 전달하고 인증 요청을 people.get으로 만들고 userId를 me으로 설정합니다. 그러면 사용자의 신원과 확인 된 이메일 주소 인 email 범위를 요청하면 알려줍니다.

+0

HTTPS를 사용하여 access_token을 다시 전달해야합니까 아니면 HTTP 만 사용할 수 있습니까? 나는 cors를 시도했지만 작동하지 않습니다. 서버에 SSL 인증서가 없습니다. – Wes

+0

전체 사이트에 대해 SSL을 사용해야합니다. 그렇지 않으면 브라우저와 서버 사이의 네트워킹 장비에 동일한 Wi-Fi 액세스 권한을 가진 사람이 액세스 태그를 도용 할 수 있습니다. – abraham