18

Tôi sử dụng phạm vi https://www.googleapis.com/auth/userinfo.email để nhận địa chỉ email của người dùng được xác thực. Nhưng trong khi chứng thực, Google sẽ nhắc người dùng:Phạm vi để nhận địa chỉ email một mình?

Ứng dụng muốn:

  • biết bạn là ai trên Google+ (mà biểu tượng trợ giúp nói: Ứng dụng này đang yêu cầu quyền liên kết bạn với hồ sơ công khai trên Google)
  • Xem địa chỉ email của bạn

tôi không muốn thứ thông tin liên quan đến Google+ của người dùng điện tử. Tôi đang sử dụng OAuth2 authentication method. Để xác thực yêu cầu Authsub, nó chỉ yêu cầu quyền truy cập địa chỉ email. Làm cách nào tôi có thể truy cập vào địa chỉ email của người dùng một mình?

+0

Những gì bạn cần có thể OpenID [Sự khác nhau giữa OpenID và OAuth] [1] [1] : http://stackoverflow.com/questions/1087031/whats-the-difference-between-openid-and-oauth – zinking

+2

Bạn đã từng sửa lỗi này chưa? (Liên quan: [Tại sao bạn cần phải biết tôi biết ai trên Google?] (Http://meta.stackexchange.com/questions/234365/why-do-you-need-to-know-who-i-know- trên google) trên Meta Stack Exchange.) – Arjan

+0

Thật không may, @zinking, Google [đang ngừng sử dụng OpenID vào tháng 4 năm 2015] (https://developers.google.com/+/api/auth-migration#timetable). – Arjan

Trả lời

2

Nếu bạn đang sử dụng Google+ Sign-In, phạm vi https://www.googleapis.com/auth/plus.login được tự động đưa, đó sẽ là lý do tại sao bạn đã thấy rằng phần của hộp thoại cho phép.

Nếu bạn không cần các tính năng nâng cao đi kèm với tính năng Đăng nhập bằng Google+ thì có thể bạn muốn thực hiện luồng OAuth chuẩn. Xem số Google OAuth scenarios để có giải pháp phù hợp với nhu cầu của bạn, nơi bạn chỉ có thể yêu cầu phạm vi email.

+0

Tôi không sử dụng Đăng nhập bằng Google+. Tôi vừa sử dụng để gọi liên kết này để xác thực https://accounts.google.com/o/oauth2/auth?scope=https://adwords.google.com/api/adwords/%20https%3A%2F%2Fwww. googleapis.com% 2Fauth% 2Fuserinfo.email & state =% 2Fprofile & redirect_uri = https% 3A% 2F% 2Foauth2-login-demo.appspot.com% 2Fcode & response_type = code & client_id = 812741506391.apps.googleusercontent.com & approval_prompt = force – Barani

+6

Tôi cũng thấy điều này . Bất kể người dùng sử dụng Đăng nhập bằng Google+ hay bất kỳ dịch vụ G + nào, việc thêm phạm vi userinfo.email hiện hiển thị "Biết bạn là ai trên Google+" trên trang yêu cầu cấp phép. Là một nhà cung cấp dịch vụ, tôi không cần biết người dùng là ai. Là người dùng, tôi không muốn Google khuyến khích các dịch vụ có được - hoặc chỉ đơn giản là cấp cho họ - nhiều quyền truy cập hơn là thực sự cần thiết. –

+1

+1.Trong trường hợp của tôi, phạm vi duy nhất tôi yêu cầu là "email", nhưng người dùng đang được nhắc "Xem địa chỉ email của bạn" và "Biết bạn là ai trên Google+". Phản hồi từ người dùng tiềm năng là họ KHÔNG muốn cấp quyền truy cập vào những gì họ cho là thông tin cá nhân. – pinoyyid

1

Nếu bất kỳ ai vẫn đang tìm kiếm điều này, tôi nghĩ điều này có thể hữu ích. Trong phương thức gapi.auth2.init trong tham chiếu máy khách JS Đăng nhập của Google, hãy đặt fetch_basic_profile thành false (đúng theo mặc định). Bây giờ sử dụng param phạm vi cho cùng một phương pháp xác định "email", "Hồ sơ" quyền

Các vấn đề liên quan