Chúng tôi cần phát triển phần mở rộng gmail nội bộ để xử lý email đến, cho phép người nhận tương tác với phần mềm nội bộ của chúng tôi. Tôi đã cố gắng tìm hiểu cách sử dụng OAuth 2.0 trong Gmail Contextual Gadget, nhưng tôi không thể tìm thấy bất kỳ tài liệu cụ thể nào về điều này. Tôi không thể tìm thấy bất kỳ điều gì hữu ích khi tôi tìm kiếm tràn ngăn xếp với ngữ cảnh + google-oauth (từ khóa được đề xuất bởi Google).Gmail Contextual Gadget (plugin/tiện ích mở rộng của Gmail): Không được chấp nhận? Không thể nào? Làm sao? (Không thể thực hiện OAuth 2.0)
Trước khi bạn cho tôi trang tiêu chuẩn, hãy chắc chắn rằng nó có này:
- Tối thiểu, một ví dụ về Gmail theo ngữ cảnh manifest.xml tiện ích sử dụng OAuth 2.0
- Lý tưởng nhất, với lời giải thích làm thế nào để triển khai nó tại một tên miền (không phải thị trường), vì vậy tôi biết nó thực sự đã được triển khai & thử nghiệm.
Ví dụ, tiêu chuẩn chào ví dụ trong trang theo ngữ cảnh Gadgets sử dụng OpenID ("openIdRealm"), và đã được viết trước khi OAuth 2.0:
OpenID là không được cho phép trong OAuth 2.0:
https://developers.google.com/apps-marketplace/practices#3_use_oauth20
Your application must not use OpenID or OAuth1.0. Any evidence of such usage will result in your application failing the review process.
Lưu ý rằng Tiện ích theo ngữ cảnh là ứng dụng Javascript phía máy khách, rất khác với ứng dụng máy chủ web và ứng dụng đã cài đặt. Vì vậy, OAuth 2.0 nên được sử dụng như thế này:
https://developers.google.com/accounts/docs/OAuth2#clientside https://developers.google.com/accounts/docs/OAuth2UserAgent
Nhưng theo ngữ cảnh tiện ích chạy trong một container, trong đó xử lý các cuộc gọi đầu tiên của OAuth (google gọi, trong đó kêu gọi trở lại trang web của chúng tôi với thẻ ...). Sống ở phía khách hàng, các tiện ích theo ngữ cảnh "không thể giữ bí mật". trang web của chúng tôi (trang chuyển hướng, https://example.com/oauth2callback) cần lưu mã thông báo truy cập (và có thể làm mới mã thông báo) cho phiên có thể truy cập được vào mã tiện ích của chúng tôi ở phía máy khách.
Tôi lý tưởng không sử dụng SSO mà tôi thấy chỉ "cần thiết cho các ứng dụng được triển khai trên thị trường". Việc triển khai thay thế là "cho tên miền của bạn", trong đó sử dụng Google Apps Extensions điều khiển:
https://developers.google.com/google-apps/extensions-console/
Nhưng phần mở rộng giao diện điều khiển nói, trên đầu, "Chúng tôi đang cải thiện kinh nghiệm người dùng, hãy thử Developers Console mới", trong đó liên kết đến:
Developers Console:
- Nó cho thấy t dự án mũ đã được tạo trước đó trong bảng điều khiển tiện ích mở rộng ứng dụng. Tôi có thể nhấp vào nó để mở một menu lớn (sang một bên, bên trái)
- APIs & Xác thực/thông tin xác thực - Tôi đã tạo ID ứng dụng khách và bí mật cho ứng dụng của mình. Rõ ràng, tôi phải sử dụng Ứng dụng web, không phải Tài khoản dịch vụ hoặc ứng dụng đã cài đặt vì tôi đang cố gắng truy cập vào một số dữ liệu cá nhân của người dùng (truy cập email), không chỉ dịch vụ của Google và tôi không phải là ứng dụng được cài đặt độc lập.
Không có nơi nào để báo cáo ID ứng dụng khách này ở bất kỳ đâu trong tiện ích theo ngữ cảnh. Có đăng ký và quên không?
Ngoài ra (một lỗi?), quyền hiển thị ID ứng dụng khách của tôi trong "Tài khoản dịch vụ" mặc dù tôi KHÔNG tạo thông tin đăng nhập tài khoản dịch vụ.
Và sau đó điều này: Tôi không biết cách triển khai tiện ích theo ngữ cảnh của mình (không phải là ứng dụng độc lập) trên miền của tôi từ Bảng điều khiển dành cho nhà phát triển mới này. Dường như chỉ có các tùy chọn liên quan đến triển khai trên đám mây dưới tab tổng quan và tab Tính toán ở bên trái.
Khi tôi cố gắng triển khai từ Apps Extensions Console (được cho là không phản đối, chỉ là cải tiến), tôi nhận được lỗi này:
Google Apps Marketplace (I never deployed to marketplace, only my own domain)
Application installation not allowed.
The OAuth1.0 version is no longer available.
Instead, try installing the OAuth2.0 version.
[Return to dashboard] (button)
Hơn thế nữa, trở về nút bảng điều khiển sẽ đưa tôi đến miền quản trị trang web cho phép không phát triển cũng không triển khai:
bằng cách này, Console Apps Extensions không bao giờ truy cập vào trang chuyển hướng tôi đã tạo ra, và không bao giờ đọc các tập tin thông số tiện ích trên trang web của một trong hai (không bao giờ truy cập bằng google như đã hứa), vì vậy hãy báo lỗi cho tôi ssage phải nói rằng tệp manifest.xml không sử dụng OAuth 2.0 ... Hoặc Bảng điều khiển tiện ích mở rộng ứng dụng không sử dụng chính nó và đổ lỗi cho tôi!
Vì vậy, Gmail theo ngữ cảnh App:
- Deprecated?
- Không thể bây giờ?
- Được cấp phép bằng OAuth 2.0? Làm sao?
Bạn đã kiểm tra bài viết trên blog này mà đi qua en giải thích bằng ví dụ của việc sử dụng tiện ích gmail theo ngữ cảnh : http://pipetree.com/qmacro/blog/2010/06/getting-started-with-gmail-contextual-gadgets/ – user3378649
Tôi đã xem bài đăng. Bài đăng là từ năm 2010, trước phiên bản OAuth 2.0, hiện bắt buộc. –