2013-07-25 35 views
5

Tôi đang sử dụng api từ xa GAE để truy cập kho dữ liệu của ứng dụng của tôi. Việc xác thực GAE được thực hiện bằng cách sử dụng remote_api_stub.ConfigureRemoteApi với chức năng xác thực trả về tên người dùng và mật khẩu.API từ xa của Google App Engine + OAuth

Có cách nào để xác thực bằng cách sử dụng access_token, ví dụ: OAuth hoặc OAuth 2.0 không?

+0

ConfigureRemoteApi có tham số rtok. Có thể sử dụng mã thông báo OAuth không? Tôi chưa thử. – jacob

+0

'rtok' chỉ dành cho tra cứu app_id. (từ chuỗi mã hóa 'ConfigureRemoteApi') > rtok: Mã thông báo xác thực được gửi với tra cứu app_id. Nếu Không, một mã thông báo ngẫu nhiên được sử dụng. và trong các mã dưới đây, bạn có thể thấy: ' nếu không app_id: APP_ID = GetRemoteAppIdFromServer (máy chủ, đường dẫn, rtok) ' Nó dường như chỉ có ích cho việc kiểm tra nếu APP_ID cho tồn tại trên App Động cơ, không phải để xác thực thực tế cho remote_api_shell – Bodhi

Trả lời

3

Có giải pháp cho tài khoản Google được định cấu hình sử dụng Xác minh 2 bước.

Tại thời điểm này, có thể bạn đang gặp lỗi “BadAuthentication InvalidSecondFactor" ném, như bạn không thể đăng nhập hoàn toàn khỏi vỏ.

Để giải quyết điều này, bạn sẽ cần một App Password để ủy quyền cho ứng dụng để truy cập tài nguyên tài khoản của bạn Thực hiện theo các hướng dẫn và sử dụng mật khẩu được tạo ra và tên người dùng của một admin của mục tiêu ứng dụng App Engine như các thông tin cho API từ xa

UPDATE:..

Ngoài ra, bạn có thể mất một xem tệp remote_api_stub.py từ A ppEngine SDK. Bạn sẽ tìm thấy một gia đình của các phương pháp gọi là _ConfigureRemoteApiWith * (lưu ý dấu gạch chân hàng đầu), chẳng hạn như:

  • _ConfigureRemoteApiWithKeyFile
  • _ConfigureRemoteApiWithComputeEngineCredential
  • _ConfigureRemoteApiWithOAuthCredentials

Phương pháp tự cũng là tài liệu, xin hãy xem xét tài liệu của họ. Chúng sẽ cho phép bạn xác thực với các phương thức an toàn hơn ASP thông thường được cung cấp bởi remote_api_stub.ConfigureRemoteApi().

+0

Cảm ơn, tuy nhiên điều này không trả lời được câu hỏi của tôi. Câu hỏi của tôi là xác thực mà không cần sử dụng mật khẩu và thay vào đó, sử dụng mã thông báo oauth. – Tzach

+0

@Tzach là bạn đã bao giờ có thể nhận OAuth 2.0 hoạt động với GAE. Tôi thích làm một cái gì đó tương tự. – mba12

+0

@ mba12 Tôi đã cập nhật câu trả lời của mình để biết thêm thông tin. – cjlallana

0

Bạn không thể sử dụng OAuth2 để kết nối với ứng dụng của mình bằng remote_api_stub/shell. Tùy chọn này không được cung cấp.

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