oauth2.dev

software_version

IESG

Registry Context

software_version is a version identifier for the client software identified by software_id. It should change whenever that software is updated.

Technical Summary

RFC 7591 defines software_version as a string identifying the version of the client software associated with software_id. Its value should change on any update to that software. Values are compared using string equality; no other comparison semantics are defined.

When Used

Used as client metadata in dynamic client registration requests and responses. It can be communicated directly in a registration request, included as a claim in a software statement, or supplied in both locations.

Normative Requirements

Authorization servers

MUST
1
  1. RFC 7591 - Section 2

    give the software_version claim in a trusted software statement precedence over the directly supplied client metadata value.

    Condition: when software_version is present both in the registration request body and in a software statement trusted by the authorization server

    If the same client metadata name is present in both locations and the software statement is trusted by the authorization server, the value of a claim in the software statement MUST take precedence.

Unspecified actor

SHOULD
1
  1. RFC 7591 - Section 2

    change the software_version value.

    Condition: on any update to the client software identified by the same software_id

    The value of the "software_version" SHOULD change on any update to the client software identified by the same "software_id".

OPTIONAL
1
  1. RFC 7591 - Section 2

    implement and use the software_version client metadata field.

    Condition: unless another applicable specification states otherwise

    The implementation and use of all client metadata fields is OPTIONAL, unless stated otherwise.

Validation Guidance

error

Verify that software_version is represented as a JSON string when present.

warning

Warn when client software is known to have been updated under the same software_id but software_version has not changed.

info

Compare software_version values using string equality only; do not infer ordering or compatibility from their contents.

error

When trusted software-statement and direct request values conflict, use the software-statement value.

Reference

Details

Entry Id
software_version
Client Metadata Name
software_version
Client Metadata Description
Version identifier for the software that comprises a client
Change Controller
IESG
Reference
RFC7591