diff --git a/fetch.bs b/fetch.bs index 10052fdc0..bd1451c04 100644 --- a/fetch.bs +++ b/fetch.bs @@ -1892,6 +1892,25 @@ source of security bugs. Please seek security review for features that deal with exclude fragment set to true. +

To check Cross-Origin-Embedder-Policy allows credentials, given a +request request, run theses steps: + +

    +
  1. If request's mode is not no-cors", return + true.

    + +
  2. If request's client is null, return true.

    + +
  3. If request's client's embedder policy is not + "credentialless", return true.

    + +
  4. If request's origin is not same origin with + request's client's origin, + return true.

    + +
  5. Return false.

    +

Responses

@@ -1978,6 +1997,10 @@ initially unset. being provided to an API that didn't make a range request. See the flag's usage for a detailed description of the attack. +

A response has an associated request-include-credentials, which is +initially set. +

A response has an associated timing allow passed flag, which is initially unset. @@ -3421,9 +3444,22 @@ Cross-Origin-Resource-Policy = %s"same-origin" / %s"same-site" / %s"cross-or

  • If policy is neither `same-origin`, `same-site`, nor `cross-origin`, then set policy to null. -

  • If policy is null and embedderPolicyValue is - "require-corp", then set policy to - `same-origin`. +

  • If policy is null, switch on embedderPolicyValue: +

    +
    `unsafe-none` +
    `credentialless` +
    Set policy to `same-origin` if one of the + following is true: + + +
    `require-corp` +
    Set policy to `same-origin`. +
    +
  • Switch on policy: @@ -4585,6 +4621,10 @@ steps. They return a response.

    is true; otherwise false. +

  • +

    If Cross-Origin-Embedder-Policy allows credentials with + request is false, set includeCredentials to false.

    +
  • Let contentLength be httpRequest's body's length, if httpRequest's body is non-null; otherwise null. @@ -4945,6 +4985,9 @@ steps. They return a response.

  • If httpRequest's header list contains `Range`, then set response's range-requested flag. +

  • Set response's request-include-credentials to + includeCredentials. +

  • If response's status is 401, httpRequest's response tainting is not "cors", includeCredentials is @@ -7758,6 +7801,7 @@ Arkadiusz Michalski, Arne Johannessen, Artem Skoretskiy, Arthur Barstow, +Arthur Sonzogni, Asanka Herath, Axel Rauschmayer, Ben Kelly,