21 Matching Annotations
  1. Jun 2026
    1. if a refresh token was reused, Hydra would invalidate the whole access and refresh token chain

      大多数人认为重用刷新令牌应该只影响单个令牌,但作者指出新版本会撤销整个访问和刷新令牌链,这实际上提高了安全性但改变了客户端行为。这种严格的做法与大多数OAuth实现中更宽松的令牌重用策略形成对比,代表了更安全但可能破坏兼容性的设计选择。

  2. Apr 2026
    1. Vercel is advising Google Workspace administrators and Google account owners to check for the following application: OAuth App: 110671459871-30f1spbu0hptbs60cb4vsmv79i7bbvqj.apps.googleusercontent.com

      大多数人认为企业安全事件主要影响企业自身系统,但作者指出这次事件实际上要求普通Google Workspace管理员检查特定应用,这挑战了'企业安全事件仅影响企业内部'的常见认知,表明第三方应用的安全风险可能广泛影响普通用户。

  3. Dec 2022
  4. Nov 2022
    1. But what about a Refresh Token flow? When using a refresh token, confidential clients also have to authenticate. Public clients, such as browser-based applications, do not authenticate during the Refresh Token flow. So in a typical frontend application, refresh tokens issued to frontend web applications are bearer tokens.   In practice, this means that if an attacker manages to steal a refresh token from a frontend application, they can use that token in a Refresh Token flow. To counter such attacks, the OAuth 2.0 specifications mandate that browser-based applications apply a security measure known as refresh token rotation.
  5. Aug 2022
  6. Oct 2021
  7. Oct 2019
    1. OAuth can be many things. It is most commonly used to allow an application (the consumer) to access data or services that the user (the resource owner) has with another service (the provider), and this is done in a way that prevents the consumer from knowing the login credentials that the user has with the provider
  8. Sep 2019
    1. click a button that says "Sign in with GitHub." I am then sent to GitHub to sign in and, if this is my first time, grant permissions

      The Implicit flow:

      1. The application requests authorization from the user ➡
      2. The user authorizes the request ➡
      3. The authorization server issues an access token via the redirect URI ⬅
      4. The application uses the token to call the API ➡