Tôi đã sử dụng làm mới thẻ nhiều lần chỉ trong vòng một thời gian ngắn cho mục đích thử nghiệm, nhưng tôi tự hỏi rằng, đừng Google làm mới thẻ hết hạn? Hoặc tôi có thể gọi cùng một mã thông báo làm mới để nhận lại một mã thông báo truy cập khác trong một thời gian dài (Một tuần hoặc thậm chí hàng tháng)?Mã thông báo làm mới của Google có hết hạn không?
Trả lời
Máy chủ Google Auth ban hành thẻ Refresh bao giờ hết hạn - đó là toàn bộ điểm của thẻ làm mới. Các refresh thẻ sẽ hết hạn (hay tôi nên nói trở thành bất hợp pháp) khi người dùng hủy bỏ quyền truy cập vào ứng dụng của bạn.
Tham khảo này doc nó nêu rõ chức năng của thẻ làm mới.
Thay vì phát hành mã thông báo dài hạn (thường tốt trong một năm hoặc không giới hạn), máy chủ có thể phát hành mã truy cập tồn tại trong thời gian ngắn và mã thông báo làm mới lâu. Vì vậy, trong ngắn hạn, bạn có thể sử dụng thẻ làm mới một lần nữa và một lần nữa cho đến khi người dùng được phép truy cập thu hồi quyền truy cập vào ứng dụng của bạn.
Cảm ơn! Phải xem tài liệu. –
Phần "tốt cho một năm" làm cho nó không hoàn toàn rõ ràng như bạn đề nghị; nhưng vì nó dường như không gây ra vấn đề trong thực tế, tôi giả định mã thông báo làm mới là thường xanh. – mahemoff
Hết hạn mã thông báo Bạn nên viết mã của mình để dự đoán khả năng mã thông báo được cấp có thể không hoạt động nữa. Mã thông báo có thể ngừng hoạt động vì một trong các lý do sau: Người dùng đã thu hồi quyền truy cập. Mã thông báo không được sử dụng trong sáu tháng. Tài khoản người dùng đã vượt quá một số yêu cầu mã thông báo nhất định. Hiện tại, giới hạn 25 mã thông báo cho mỗi tài khoản người dùng Google. Nếu tài khoản người dùng có 25 mã thông báo hợp lệ, yêu cầu xác thực tiếp theo sẽ thành công, nhưng lặng lẽ làm mất hiệu lực mã thông báo nổi bật cũ nhất mà không có bất kỳ cảnh báo nào hiển thị của người dùng. (từ https://developers.google.com/accounts/docs/OAuth2) Mã thông báo làm mới 'sống lâu' – bazik
Tôi không nghĩ đó là hoàn toàn đúng:
Lưu ý rằng có những giới hạn về số lượng thẻ làm mới sẽ được phát hành; một giới hạn cho mỗi kết hợp khách hàng/người dùng và một giới hạn khác cho mỗi người dùng trên tất cả các ứng dụng khách. Bạn nên lưu mã thông báo làm mới trong bộ nhớ dài hạn và tiếp tục sử dụng chúng miễn là chúng vẫn hợp lệ. Nếu ứng dụng của bạn yêu cầu quá nhiều mã thông báo làm mới, nó có thể chạy vào các giới hạn này, trong trường hợp đó mã thông báo làm mới cũ sẽ ngừng hoạt động.
từ trang này: https://developers.google.com/youtube/v3/guides/authentication#installed-apps
Đó là từ các tài liệu youTube (mà tôi tìm thấy là tốt hơn nhiều so với tài liệu api khác) nhưng tôi nghĩ rằng nó là giống nhau trên tất cả các ứng dụng google.
thấy điều này:
Refresh thẻ có giá trị đến khi người dùng hủy bỏ quyền truy cập. Trường này chỉ xuất hiện nếu access_type = offline được bao gồm trong yêu cầu mã ủy quyền.
trong https://developers.google.com/accounts/docs/OAuth2WebServer
Khái niệm chính của thẻ làm mới, là nó là lâu dài và không bao giờ hết hạn.
Mã thông báo truy cập có thời gian hết hạn và hết hạn, khi hết hạn, chúng tôi có thể sử dụng mã thông báo làm mới, mã này sẽ được sử dụng lại cho đến khi người dùng thu hồi từ tài khoản của anh ấy.
Tôi đã làm một số nghiên cứu sâu hơn và có vẻ như rằng thẻ truy cập Google được sử dụng để lấy một thẻ làm mới, trong 'ẩn' yêu cầu đầu tiên. Từ điểm này trở đi, mã thông báo làm mới được sử dụng để phát hành mã thông báo truy cập mới. Ý tưởng là mã thông báo truy cập là mã thông báo ngắn hạn, nhưng nó có thể được gia hạn bằng mã thông báo làm mới dài hạn.Điều này loại bỏ sự cần thiết phải yêu cầu 'mã' URL biến, đòi hỏi một cách tiếp cận hai thiết bị đầu cuối và phải được bắt đầu, sử dụng một giới thiệu dựa theo yêu cầu:
http://www.jensbits.com/2012/01/09/google-api-offline-access-using-oauth-2-0-refresh-token/
Một số, dịch vụ REST API như Dropbox, cấp mã thông báo truy cập tồn tại mãi mãi, nhưng Google phát hành mã thông báo truy cập ngắn hạn. PayPal sử dụng một thỏa hiệp, theo đó nó cho phép các mã thông báo truy cập được truy xuất mà không cần thực thi liên kết giới thiệu URI. Điều này có nghĩa là thẻ truy cập có thể được truy xuất mà không cần phải nhấp vào liên kết để bắt đầu quá trình. Phương pháp của Google có nghĩa là các thói quen API chỉ nên được gọi dựa trên nhu cầu sử dụng cơ sở. Về cơ bản, các cuộc gọi được bắt đầu thông qua các thủ tục dựa trên liên kết giới thiệu. Điều này được kiểm soát bằng cách cấp mã thông báo truy cập ngắn, hoặc mã thông báo truy cập phải được làm mới trong một chuỗi. Điều này đòi hỏi các nhà phát triển phải suy nghĩ cẩn thận hơn về cách một hệ thống nên chạy.
Đây là một chuỗi rất khó hiểu. Câu trả lời đầu tiên có vẻ đúng, nhưng không thực sự trích dẫn bất cứ điều gì có thẩm quyền từ google.
Câu trả lời dứt khoát nhất tôi tìm thấy thực sự nằm trong sân chơi của nhà phát triển nơi bạn nhận được mã thông báo. Bước 2 có ghi chú ở dưới cùng có nội dung:
"Lưu ý: OAuth Playground không lưu mã thông báo làm mới nhưng người dùng nên truy cập trang Truy cập được ủy quyền của Tài khoản Google nếu họ muốn để thu hồi chúng theo cách thủ công. "
câu trả lời hay nhất ở đây - lý do tại sao không ai đã upvoted là không thể tin được - cảm ơn rất nhiều - xử lý thẻ làm mới như thể họ không bao giờ hết hạn - tuy nhiên khi đăng nhập kiểm tra một cái mới trong trường hợp người dùng thu hồi mã thông báo làm mới, trong trường hợp này Google sẽ cung cấp một làm mới mới mã thông báo khi đăng nhập để chỉ cập nhật mã thông báo làm mới – danday74
Các quy tắc đã thay đổi về vấn đề này đôi khi vào năm 2017, vì vậy câu trả lời tốt nhất mà tôi nghĩ là nó phụ thuộc vào sản phẩm. Ví dụ: trên API Gmail, mã thông báo làm mới Oauth 2.0 sẽ hết hạn sau khi thay đổi mật khẩu. Xem này https://support.google.com/a/answer/6328616?hl=en
Chúng tôi đã sử dụng để thiết lập quyền truy cập API trước và tạo mã thông báo làm mới khi chúng tôi thiết lập người dùng gmail MỚI, và sau đó chúng tôi có thể lưu trữ thư của họ (chúng tôi bắt buộc phải làm như vậy), nhưng ngay sau khi họ thay đổi mật khẩu của họ, mã thông báo làm mới bị thu hồi.
Có lẽ đối với youtube, bản đồ, mã thông báo làm mới vẫn thực sự tồn tại lâu, nhưng đối với api gmail, hãy đếm trên một mã thông báo ngắn.
Có vẻ như nó đã chính thức được phát hành vào ngày 5 tháng 10 năm 2016. https://developers.googleblog.com/2016/09/increased-account-security-via-oauth-2-0-token -revocation.html – user3919648
- 1. Việc phát hành mã thông báo Github OAUTH mới có hết hạn không?
- 2. OAuth - Thời hạn hết hạn mã thông báo truy cập?
- 3. SDK iOS của Facebook: làm mới mã thông báo truy cập đã hết hạn mà không hiển thị hộp thoại
- 4. Truy cập Facebook Mã thông báo hết hạn dài hơn
- 5. Nhận thời gian hết hạn API đăng ký Google Android cho mã thông báo đăng ký.
- 6. Cách tạo mã thông báo truy cập bằng mã thông báo làm mới thông qua Google Drive SDK trong .NET?
- 7. Mã thông báo làm mới oauth của Twitter
- 8. Hỗ trợ DotNetOpenAuth có làm mới Mã truy cập hết hạn không?
- 9. GoogleAccountCredential có cung cấp mã thông báo làm mới không?
- 10. Mã thông báo Google oAuth2 của tôi có đúng không?
- 11. Nhận mã thông báo làm mới OAuth2
- 12. Rails - Facebook với Omniauth và Koala: Cách gia hạn mã thông báo đã hết hạn
- 13. Hết hạn và gia hạn mã thông báo Facebook, với Koala và omniauth-facebook
- 14. Cách chính xác để làm mới mã thông báo truy cập Facebook OAuth2 sau khi hết hạn là gì?
- 15. (JAVA) Phân tích API Google - không thể lấy "mã thông báo truy cập" mới bằng cách sử dụng "mã thông báo làm mới"
- 16. Cách tạo mã thông báo truy cập bằng mã thông báo làm mới thông qua API ổ google?
- 17. Mã thông báo truy cập Facebook hết hạn vì lý do không rõ
- 18. Mã thông báo truy cập OAuth2 cho ứng dụng dành cho thiết bị di động có hết hạn không?
- 19. Twitter API - Lý do cho "mã thông báo không hợp lệ hoặc hết hạn"
- 20. Mã thông báo làm mới của Google-api-php trả về invalid_grant
- 21. Mã thông báo làm mới API Google API không được gửi
- 22. Cách làm mới mã thông báo mà tôi nhận được từ google oauth 2.0 trong iOS
- 23. Google OAuth2 Refresh_token hết hạn khi Access_token thực hiện
- 24. Cách nhận mã thông báo ngoại tuyến và mã thông báo làm mới cũng như tự động làm mới quyền truy cập vào API Google
- 25. Tại sao mã thông báo truy cập twitter oauth của tôi không hợp lệ/đã hết hạn
- 26. cách làm mới mã thông báo oauth khi sử dụng SDK iPhone của Facebook
- 27. Hết hạn mã thông báo truy cập ứng dụng Facebook (NOT user)
- 28. Làm cách nào để nhận mã thông báo truy cập mới sau khi hết hạn mà không cần tải lại trang?
- 29. Khi đăng ký tự động gia hạn trong ứng dụng Google Play, nó có gửi thông báo mua hàng khác (trong thông báo ứng dụng) không?
- 30. Tự động làm mới mã thông báo bằng cách sử dụng google drive api bằng tập lệnh php
bạn đang sử dụng ruby hay bạn có mẫu mã cho điều đó không? – Thufir