DEENESPTFRRUARHIKOZHNL

clase ara::diag::ClientAuthentication

[SWS_DM_01132] Upstream: RS_Diag_04251

class ClientAuthentication final {...};

Interface for the application to inform the Diagnostic Server instance about the authentication states and the user roles that are currently authenticated.

Header-Datei#include "ara/diag/client_authentication.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopenamespace ara::diag

Guía del usuarioGENERADO POR IA

Sirve a la aplicación para notificar estados de autenticación y roles de usuario activos al Diagnostic Server.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 426d68eb26e1 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Sirve a la aplicación para notificar estados de autenticación y roles de usuario activos al Diagnostic Server.

La interfaz permite a la aplicación informar al Diagnostic Server sobre el estado de autenticación, así como los roles de usuario activos de un cliente de diagnóstico [SWS_DM_01132]. A través de llamadas como Authenticate o OverrideDefaultRoles se controlan las transiciones de estado y se proporcionan identificadores para gestionar listas de acceso dinámicas [SWS_DM_01206]. Los cambios de estado derivados de tiempos de espera pueden supervisarse de forma asíncrona mediante un notificador. Dado que la clase no es segura para subprocesos y no permite copias, el acceso debe realizarse de forma sincronizada dentro de la aplicación.

Contexto

La clase ara::diag::ClientAuthentication sirve como interfaz central para que la aplicación informe a la instancia del Diagnostic Server sobre los estados de autenticación y los roles de usuario actualmente autenticados [SWS_DM_01132], SWS Diagnostics, p. 129. En esta interacción intervienen tres partes esenciales:

  • Aplicación (Application): realiza comprobaciones de autenticación —utilizando interfaces del Diagnostic Server o mediante mecanismos propios de la aplicación— y transmite roles de usuario al Diagnostic Server [SWS_DM_01142].
  • Diagnostic Server / Diagnostic Manager: gestiona las sesiones de diagnóstico y aplica derechos de acceso a los recursos de diagnóstico basándose en los roles y en el estado de autenticación [SWS_DM_01206].
  • Cliente de diagnóstico: un tester externo o cliente SOVD que dirige solicitudes de diagnóstico a la unidad de control [SWS_DM_01210], [SWS_DM_01470].

El número de instancias de ClientAuthentication queda determinado por el elemento de modelo DiagnosticExternalAuthenticationIdentification SWS Diagnostics, p. 129. Este elemento permite configurar una autenticación para un cliente con una dirección de origen fija o a través de un rango de direcciones, en caso de que la dirección de origen final aún no se conozca en tiempo de compilación SWS Diagnostics, p. 129. Interpretación: la asignación de clientes de diagnóstico a instancias concretas de ClientAuthentication se realiza en tiempo de ejecución a partir de estos rangos de direcciones de origen. Pregunta Q-6cc7e791e678def2 (abierta) En el caso de clientes SOVD, al validar el token de autorización mediante ara::diag::SovdAuthorization::ValidateAuthorization, el Diagnostic Server entrega directamente un objeto ClientAuthentication a la aplicación [SWS_DM_01470].

Application Application ClientAuthentication ClientAuthentication Application->ClientAuthentication Get / Authenticate DiagnosticServer DiagnosticServer ClientAuthentication->DiagnosticServer Zustandsmeldung DiagnosticClient DiagnosticClient DiagnosticClient->DiagnosticServer Diagnoseanfrage

Diagrama de contexto: interlocutores de la interfaz de autenticación. Fuentes: [SWS_DM_01132], [SWS_DM_01202], [SWS_DM_01470], SWS Diagnostics, p. 129

Ciclo de vida

La aplicación obtiene una instancia de ClientAuthentication a través de métodos sobrecargados de ara::diag::ExternalAuthentication::Get [SWS_DM_01202] o en el contexto de la comprobación del token SOVD [SWS_DM_01470]. La clase posee semánticas estrictas de propiedad: el constructor de copia [SWS_DM_01139] y el operador de asignación por copia [SWS_DM_01140] están eliminados (=delete). Las operaciones de movimiento (constructor de movimiento [SWS_DM_01137] y operador de asignación por movimiento [SWS_DM_01138]) están predefinidas por defecto y declaradas como noexcept. El destructor es igualmente noexcept [SWS_DM_01136]. Todas las funciones miembro, así como el destructor, no son seguras para subprocesos (not thread-safe) [SWS_DM_01136], [SWS_DM_01141], [SWS_DM_01142], [SWS_DM_01143], [SWS_DM_01144].

El estado de autenticación se representa mediante el tipo enumerado DiagnosticAuthState [SWS_DM_01133]:

  • kDeAuthenticated (0x00): ningún cliente de diagnóstico está autenticado. Al arrancar el sistema, el cliente se encuentra por defecto en este estado [SWS_DM_01205]. En este caso, se consideran roles estándar aquellos roles (DiagnosticAuthRole) cuyo atributo isDefault esté configurado como TRUE [SWS_DM_01204], [SWS_DM_01134]. A través de OverrideDefaultRoles, estos roles estándar pueden sobrescribirse temporalmente durante un tiempo de expiración establecido [SWS_DM_01141], [SWS_DM_01209].
  • kAuthenticated (0x01): un cliente de diagnóstico está autenticado. Este estado se alcanza llamando a Authenticate, con lo cual se activan en el Diagnostic Server los roles de usuario transferidos [SWS_DM_01142], [SWS_DM_01206].

Se desencadena una transición de estado automática de kAuthenticated de vuelta a kDeAuthenticated cuando un cliente en la sesión predeterminada no envía más solicitudes tras la última confirmación de transmisión (TransmitConfirmation) y expira el tiempo de inactividad [SWS_DM_01210], o cuando se produce un tiempo de espera S3 [SWS_DM_01144], [SWS_DM_02077].

kDeAuthenticated kDeAuthenticated kDeAuthenticated->kDeAuthenticated OverrideDefaultRoles() kAuthenticated kAuthenticated kDeAuthenticated->kAuthenticated Authenticate() kAuthenticated->kDeAuthenticated Inaktivitaet / S3-Timeout

Diagrama de estados: ciclo de vida y transiciones de estado de la autenticación del cliente. Fuentes: [SWS_DM_01133], [SWS_DM_01204], [SWS_DM_01205], [SWS_DM_01206], [SWS_DM_01209], [SWS_DM_01210]

Ruta de uso

El flujo regular para la gestión de la autenticación del cliente comprende los siguientes pasos:

  1. Registrar notificador: la aplicación registra con SetNotifier una función de retrollamada del tipo ClientAuthenticationSetNotifier (std::function<void(DiagnosticAuthState)>) [SWS_DM_01144], [SWS_DM_02077]. De este modo se le informa cuando ocurren cambios de estado, como por ejemplo la transición a kDeAuthenticated por inactividad o un tiempo de espera S3 [SWS_DM_01144]. Una nueva llamada sobrescribe el notificador establecido previamente [SWS_DM_01144].
  2. Consultar estado: mediante el método GetState(), la aplicación puede consultar de forma síncrona el estado de autenticación actual del cliente [SWS_DM_01143].
  3. Notificar autenticación: una vez completada con éxito la autenticación, la aplicación llama a Authenticate con los roles de usuario que deben activarse (ara::core::Vector<DiagnosticAuthRole>) [SWS_DM_01142], [SWS_DM_01134]. El Diagnostic Server establece el estado en kAuthenticated y devuelve un ClientAuthenticationHandle [SWS_DM_01206].
  4. Gestionar derechos de acceso: mediante el ClientAuthenticationHandle obtenido, la aplicación puede configurar la lista de acceso dinámico (DynamicAccessList) para el cliente [SWS_DM_01213], SWS Diagnostics, p. 132. Al mismo tiempo, al utilizar este handle se actualiza la ventana de tiempo de inactividad del cliente SWS Diagnostics, p. 133.

Si el cliente se encuentra en el estado kDeAuthenticated, la aplicación puede invocar en su lugar OverrideDefaultRoles(defaultRoles, timeout) para activar temporalmente roles predeterminados alternativos; en caso de éxito, esta llamada también devuelve un ClientAuthenticationHandle [SWS_DM_01141], [SWS_DM_01209].

Flujo de autenticación y gestión de permisosApplicationClientAuthenticationDiagnosticServerSetNotifier(notifier)Result<void>Authenticate(userRoles)Establecer estado kAuthenticated y rolesBestaetigung & HandleResult<ClientAuthenticationHandle>optClient-Inaktivitaet in Standard-Session / S3-TimeoutWechsel zu kDeAuthenticatednotifier(kDeAuthenticated)

Diagrama de secuencia: flujo de llamadas y notificaciones durante la autenticación. Fuentes: [SWS_DM_01142], [SWS_DM_01144], [SWS_DM_01206], [SWS_DM_01210]

Escenarios de error

Los métodos Authenticate, OverrideDefaultRoles y GetState devuelven sus valores de retorno encapsulados en ara::core::Result y están especificados como seguros contra excepciones (exception safe) así como noexcept [SWS_DM_01141], [SWS_DM_01142], [SWS_DM_01143]. En caso de error, se notifica el siguiente código de error estandarizado:

Para SetNotifier no se han definido códigos de error estandarizados [SWS_DM_01144]. Como condición previa esencial, OverrideDefaultRoles requiere que el cliente se encuentre en el estado kDeAuthenticated en el momento de la llamada [SWS_DM_01209].

Esta guía se basa en la especificación AUTOSAR Adaptive R25-11 (módulo diag) y fue creada para autodocs.

Mapa de miembros

Diagrama de clases

Hohle Dreieckspfeile = Vererbung (zeigt zur Basisklasse); Klicken öffnet die jeweilige Klassenseite.

G nara__diag__ClientAuthentication678 ClientAuthentication + ClientAuthentication() + ~ClientAuthentication() + Authenticate() + GetState() + OverrideDefaultRoles() + SetNotifier() + operator=()

Vista de detalle

Selecciona una entrada en el índice.

Constructores y destructor

Move constructor of ClientAuthentication.

Sobrecargas ClientAuthentication 2
ClientAuthentication (ClientAuthentication &&other) noexcept=default; SWS_DM_01137
ClientAuthentication (ClientAuthentication const &other)=delete; SWS_DM_01139

Destructor of ClientAuthentication.

~ClientAuthentication () noexcept;

Métodos

Authenticate función

This function is used by the application to report the authenticated state to the Diagnostic Server instance. The authentication could be either done using the Authentication interfaces of the Diagnostic Server instance, or through other means in the application.

GetState función

This function is used by the application to query the current authentication state of the diagnostic client.

ara::core::Result< DiagnosticAuthState > GetState () const noexcept;

This method is used by the application to temporarily change the default AuthenticationRole for a Diagnostic Server Instance. The diagnostic services allowed in the passed defaultRoles are now accessible to the tester for a time period defined in the parameter timeout.

SetNotifier función

This function is used by the application to set a Notifier function that shall be called by the Diagnostic Server instance when an Authentication Status Change occurs. This may be used, e.g, to notify the application when a transition to kDeAuthenticated state occurred due to an S3 timeout. A consecutive call of this method will overwrite the previous registered notifier.

ara::core::Result< void > SetNotifier (ClientAuthenticationSetNotifier notifier) noexcept;

Operadores

operator= función 2

Move assignment operator of ClientAuthentication.

Sobrecargas = 2
auto operator= (ClientAuthentication &&other) & noexcept -> Client Authentication & =default; SWS_DM_01138
auto operator= (ClientAuthentication const &other) -> Client Authentication &=delete; SWS_DM_01140

Alias de tipo

Notifier Function that is called by the Diagnostic Server instance when an Authentication Status Change Occurs. This may be used, for e.g, to notify the application when a transition to kDeAuthenticated State occurred due to an S3 timeout.

using ClientAuthenticationSetNotifier = std::function<void(Diagnostic AuthState)>;
DiagnosticAuthRole alias de tipo

The supported values for the Diagnostic Authentication roles are specified in the Diagnostic Extract.

using DiagnosticAuthRole = ara::core::String;

Enumeraciones

DiagnosticAuthState enumeración

Possible values of the Authentication State of the client.

enum class DiagnosticAuthState : std::uint8_t {...};

Documentación de los métodos

función Authenticate [SWS_DM_01142] Upstream: RS_Diag_04251

ara::core::Result< ClientAuthenticationHandle > Authenticate (ara::core::Vector< DiagnosticAuthRole > userRoles) noexcept;

This function is used by the application to report the authenticated state to the Diagnostic Server instance. The authentication could be either done using the Authentication interfaces of the Diagnostic Server instance, or through other means in the application.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 06f87d723d7c Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Uso y llamada

La función ara::diag::ClientAuthentication::Authenticate es invocada por una aplicación para comunicar a la instancia de Diagnostic Server la autenticación satisfactoria de un cliente de diagnóstico [SWS_DM_01142]. Esto puede llevarse a cabo tras una autenticación a través de las interfaces del Diagnostic Server o mediante mecanismos propios de la aplicación [SWS_DM_01142].

Como parámetro de entrada, la función recibe userRoles (de tipo ara::core::Vector<DiagnosticAuthRole>). En caso de invocación satisfactoria, el estado de autenticación de la instancia cambia a kAuthenticated y los roles de usuario transferidos se adoptan de forma permanente [SWS_DM_01206]. Como valor de retorno proporciona un ara::core::Result<ClientAuthenticationHandle> [SWS_DM_01142]. Dado que se proporciona de inmediato un objeto Result, es probable que el procesamiento se realice de forma síncrona en el contexto del invocador. Pregunta Q-dae22c82694f2103 (abierta)

Tratamiento de errores y concurrencia

El método está declarado como noexcept y se considera seguro frente a excepciones (exception safe) [SWS_DM_01142]. Si se produce un error debido a que funcionalidades fundamentales del Diagnostic Manager no están disponibles en el momento de la llamada, la operación falla con semántica de rollback y devuelve DiagErrc::kServiceNotAvailable en el objeto Result [SWS_DM_01142].

En lo que respecta a la concurrencia, el método está especificado expresamente como not thread-safe [SWS_DM_01142]. Por tanto, las invocaciones paralelas sobre el mismo objeto ClientAuthentication no están permitidas y deben ser sincronizadas por la aplicación.

Zusammenspiel y ciclo de vida

El ClientAuthenticationHandle obtenido permite a la aplicación definir o ampliar una DynamicAccessList para el cliente autenticado [SWS_DM_01142]. Además, la invocación inicia o referencia la supervisión de inactividad del cliente: si tras una autenticación satisfactoria en el estado de sesión estándar no se produce otra solicitud UDS durante un periodo de authenticationTimeout, la instancia de Diagnostic Server restablece automáticamente el cliente a kDeAuthenticated [SWS_DM_01210]. Para prevenir este timeout, la aplicación puede actualizar el temporizador a través del método Refresh del handle [SWS_DM_01155].

Este texto ha sido generado por una IA a partir de la especificación de AUTOSAR.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
userRolesThe user roles to set on the diagnostic client

Rückgabewert

TypBeschreibung
ara::core::Result< ClientAuthenticationHandle >A handler of the Authentication State, which can be used by the application to set or extend the DynamicAccessList

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01142
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01142@rel:R25-11#ee09f281
Content hash
ee09f281
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01142
Status: valid/unmigrated Version: rel:R25-11#17cf8f55 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01142@rel:R25-11#17cf8f55
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#ffd39a4b2026-09-30
  • R21-11rel:R21-11#6f17bd9a2026-10-14
  • R22-11rel:R22-11#1579f1692026-10-14
  • R23-11rel:R23-11#3b67657b2026-10-14
  • R24-11rel:R24-11#575f1e5f2026-10-14
  • R25-11rel:R25-11#17cf8f552026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función ClientAuthentication [SWS_DM_01137] Upstream: RS_Diag_04251

ClientAuthentication (ClientAuthentication &&other) noexcept=default;

Move constructor of ClientAuthentication.

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
otherObject to move-construct from

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01137
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01137@rel:R25-11#c66ae3e6
Content hash
c66ae3e6
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01137
Status: valid/unmigrated Version: rel:R25-11#3462794e Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01137@rel:R25-11#3462794e
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#581961172026-09-30
  • R21-11rel:R21-11#f373d3152026-10-14
  • R22-11rel:R22-11#afdb12682026-10-14
  • R23-11rel:R23-11#5682468c2026-10-14
  • R24-11rel:R24-11#d6bf1b932026-10-14
  • R25-11rel:R25-11#3462794e2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función ClientAuthentication [SWS_DM_01139] Upstream: RS_Diag_04251

ClientAuthentication (ClientAuthentication const &other)=delete;

Copy constructor of ClientAuthentication cannot be used.

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01139
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01139@rel:R25-11#57229b64
Content hash
57229b64
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01139
Status: valid/unmigrated Version: rel:R25-11#8625245a Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01139@rel:R25-11#8625245a
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#ab1768822026-09-30
  • R21-11rel:R21-11#1fb6defa2026-10-14
  • R22-11rel:R22-11#74808a772026-10-14
  • R23-11rel:R23-11#1b61e7822026-10-14
  • R24-11rel:R24-11#8625245a2026-10-14
  • R25-11rel:R25-11#8625245a2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función GetState [SWS_DM_01143] Upstream: RS_Diag_04251

ara::core::Result< DiagnosticAuthState > GetState () const noexcept;

This function is used by the application to query the current authentication state of the diagnostic client.

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Rückgabewert

TypBeschreibung
ara::core::Result<DiagnosticAuthState >The Authentication State of the Diagnostic Client or error.

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01143
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01143@rel:R25-11#65e2aa94
Content hash
65e2aa94
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01143
Status: valid/unmigrated Version: rel:R25-11#608570f4 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01143@rel:R25-11#608570f4
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#84da2c3e2026-09-30
  • R21-11rel:R21-11#d78810992026-10-14
  • R22-11rel:R22-11#fed2aecc2026-10-14
  • R23-11rel:R23-11#275163122026-10-14
  • R24-11rel:R24-11#23ca48ab2026-10-14
  • R25-11rel:R25-11#608570f42026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función OverrideDefaultRoles [SWS_DM_01141] Upstream: RS_Diag_04251

ara::core::Result< ClientAuthenticationHandle > OverrideDefaultRoles (ara::core::Vector< DiagnosticAuthRole > defaultRoles, std::chrono::milliseconds timeout) noexcept;

This method is used by the application to temporarily change the default AuthenticationRole for a Diagnostic Server Instance. The diagnostic services allowed in the passed defaultRoles are now accessible to the tester for a time period defined in the parameter timeout.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 4809043989e1 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Mediante el método síncrono OverrideDefaultRoles de la clase ara::diag::ClientAuthentication, una aplicación puede sobrescribir temporalmente los roles de autenticación estándar (defaultRoles) de un cliente de diagnóstico [SWS_DM_01141]. Los servicios de diagnóstico habilitados para los roles transferidos están a disposición del tester durante el intervalo de tiempo definido en el parámetro timeout [SWS_DM_01141]. El requisito para ello es que el cliente se encuentre en el estado kDeAuthenticated [SWS_DM_01209]. Interpretación: Si la invocación no se realiza en el estado kDeAuthenticated, es probable que la sobrescritura de roles sea rechazada o quede sin efecto, ya que la especificación prescribe el comportamiento exclusivamente para este estado inicial. Pregunta Q-81189f2c2fe0f301 (abierta)

En caso de ejecución satisfactoria, el método devuelve una instancia de ClientAuthenticationHandle dentro de un ara::core::Result a la aplicación [SWS_DM_01141], [SWS_DM_01209]. Si la invocación no puede ejecutarse debido a que la funcionalidad esencial del Diagnostic Manager no está disponible actualmente, se devuelve el código de error DiagErrc::kServiceNotAvailable [SWS_DM_01141]. La función está declarada como noexcept y es segura frente a excepciones (exception safe) [SWS_DM_01141].

Para la concurrencia y la interacción con otros componentes se aplican las siguientes directrices:

  • Concurrencia: El método está especificado como not thread-safe [SWS_DM_01141]. Las llamadas concurrentes sobre la misma instancia deben sincronizarse en la aplicación.
  • Gestión del handle: A través de la instancia devuelta de ClientAuthenticationHandle, el temporizador en curso puede prorrogarse mediante Refresh() [SWS_DM_01155]. Además, el handle permite la gestión de la DynamicAccessList para recursos de diagnóstico adicionales AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 «ClientAuthenticationHandle».

Esta nota de uso se ha generado automáticamente a partir de las especificaciones de AUTOSAR.

Guía del implementador pendiente (complejidad I2)

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
defaultRolesThe default roles requested by the application, to be set on the diagnostic client
timeoutThe timeout until which the override request is active

Rückgabewert

TypBeschreibung
ara::core::Result< ClientAuthenticationHandle >Operation result

Fehler

FehlercodeBeschreibung
DiagErrc::kServiceNotAvailablerollback_semantics The call cannot be executed, because essential DM functionality is currently not available.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01141
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01141@rel:R25-11#c56d77a5
Content hash
c56d77a5
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01141
Status: valid/unmigrated Version: rel:R25-11#21bca5df Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01141@rel:R25-11#21bca5df
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#852a402e2026-09-30
  • R21-11rel:R21-11#135b2de82026-10-14
  • R22-11rel:R22-11#70389b8e2026-10-14
  • R23-11rel:R23-11#e73e64042026-10-14
  • R24-11rel:R24-11#94dc59742026-10-14
  • R25-11rel:R25-11#21bca5df2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función SetNotifier [SWS_DM_01144] Upstream: RS_Diag_04251

ara::core::Result< void > SetNotifier (ClientAuthenticationSetNotifier notifier) noexcept;

This function is used by the application to set a Notifier function that shall be called by the Diagnostic Server instance when an Authentication Status Change occurs. This may be used, e.g, to notify the application when a transition to kDeAuthenticated state occurred due to an S3 timeout. A consecutive call of this method will overwrite the previous registered notifier.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 19ea8e6c95d7 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

usar

El método [SWS_DM_01144] de la clase ara::diag::ClientAuthentication sirve para que la aplicación registre una función de callback del tipo ClientAuthenticationSetNotifier. La instancia del Diagnostic Server llama a esta función en cuanto cambia el estado de autenticación de un cliente [SWS_DM_01144]. Esto permite a la aplicación reaccionar de inmediato a los cambios de estado, por ejemplo, cuando tras un tiempo de espera agotado (timeout) del servidor S3 se produce una transición automática al estado kDeAuthenticated [SWS_DM_01211] o tiene lugar un timeout por inactividad del cliente [SWS_DM_01210].

Tratamiento de errores y valor de retorno

La función devuelve un ara::core::Result<void> y está declarada como noexcept, así como segura frente a excepciones (exception safe) [SWS_DM_01144]. No hay códigos de error estandarizados especificados [SWS_DM_01144]; presumiblemente, en funcionamiento regular el objeto Result siempre proporciona éxito (void). Pregunta Q-0d7d43cc37d57944 (abierta)

Concurrencia e interacción

En lo relativo a la seguridad de subprocesos, el método está especificado como «not thread-safe» [SWS_DM_01144]. Por ello, las llamadas sobre la misma instancia no deben realizarse de forma desprotegida desde hilos concurrentes. Además, para el registro rige un comportamiento de sobrescritura: una nueva llamada a SetNotifier sustituye por completo el notificador registrado previamente [SWS_DM_01144]. Este comportamiento corresponde al patrón de registro uniforme en Diagnostic Management, tal como se define también de forma análoga para [SWS_DM_00615] (CancellationHandler), [SWS_DM_00745] (Indicator) y [SWS_DM_00755] (OperationCycle).

Esta nota de uso se creó automáticamente a partir de la especificación AUTOSAR Adaptive R25-11.

Guía del implementador pendiente (complejidad I3)

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Parameter (in)

ParameterBeschreibung
notifierThe notifier to call on state transition

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns void.

Fehler

FehlercodeBeschreibung
This function does not specify any standardized errors.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01144
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01144@rel:R25-11#0cd38c23
Content hash
0cd38c23
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01144
Status: valid/unmigrated Version: rel:R25-11#ddcf5d80 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01144@rel:R25-11#ddcf5d80
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#bb5bb9422026-09-30
  • R21-11rel:R21-11#fec80c112026-10-14
  • R22-11rel:R22-11#2ece489f2026-10-14
  • R23-11rel:R23-11#7f1d62332026-10-14
  • R24-11rel:R24-11#107e99362026-10-14
  • R25-11rel:R25-11#ddcf5d802026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función operator= [SWS_DM_01138] Upstream: RS_Diag_04251

auto operator= (ClientAuthentication &&other) & noexcept -> Client Authentication & =default;

Move assignment operator of ClientAuthentication.

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
Exception-Sicherheitexception safe

Parameter (in)

ParameterBeschreibung
otherObject to move-assign from.

Rückgabewert

TypBeschreibung
ClientAuthenticationClientAuthentication& Reference to self.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01138
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01138@rel:R25-11#8cd69f45
Content hash
8cd69f45
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01138
Status: valid/unmigrated Version: rel:R25-11#76277668 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01138@rel:R25-11#76277668
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#f0894f262026-09-30
  • R21-11rel:R21-11#1107ed262026-10-14
  • R22-11rel:R22-11#9d8e860b2026-10-14
  • R23-11rel:R23-11#a3ca32ee2026-10-14
  • R24-11rel:R24-11#2d04d62d2026-10-14
  • R25-11rel:R25-11#762776682026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función operator= [SWS_DM_01140] Upstream: RS_Diag_04251

auto operator= (ClientAuthentication const &other) -> Client Authentication &=delete;

Copy assignment operator of ClientAuthentication cannot be used.

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01140
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01140@rel:R25-11#607f0ccd
Content hash
607f0ccd
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01140
Status: valid/unmigrated Version: rel:R25-11#83c48e25 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01140@rel:R25-11#83c48e25
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#2a4783d52026-09-30
  • R21-11rel:R21-11#f986a5382026-10-14
  • R22-11rel:R22-11#666e2c0b2026-10-14
  • R23-11rel:R23-11#9111a09e2026-10-14
  • R24-11rel:R24-11#41a505672026-10-14
  • R25-11rel:R25-11#83c48e252026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función ~ClientAuthentication [SWS_DM_01136] Upstream: RS_Diag_04251

~ClientAuthentication () noexcept;

Destructor of ClientAuthentication.

GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: 9da38c214c58 Procedencia Preguntas abiertas (1)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

El destructor [SWS_DM_01136] de la clase ara::diag::ClientAuthentication sirve para la liberación y el desmontaje limpio de una instancia para la autenticación de clientes en Diagnostic Management. La función está definida en el archivo de cabecera #include "ara/diag/client_authentication.h" y se invoca de forma síncrona al final de la vida útil del objeto (AUTOSAR_AP_SWS_Diagnostics §8.5.1.2.1.2 «Destructor»).

Para el uso y las propiedades de ejecución se aplican las siguientes estipulaciones:

  • Llamada y parámetros: como destructor, ~ClientAuthentication() no posee parámetros de entrada ni valor de retorno.
  • Seguridad contra fallos y excepciones: la operación está especificada como noexcept y exception safe [SWS_DM_01136]; se garantiza que no se lanzan excepciones durante el desmontaje del objeto.
  • Concurrencia: la llamada está catalogada expresamente como not thread-safe. Por consiguiente, la destrucción del objeto no debe realizarse de forma concurrente con otras llamadas a métodos de la misma instancia.

El elemento implementa el requisito ascendente RS_Diag_04251 (AUTOSAR_AP_SWS_Diagnostics §8.5.1.2.1.2 «Destructor»). Interpretación: antes de destruir la instancia, probablemente deban finalizarse de manera ordenada las operaciones activas de autenticación o comunicación de la aplicación para evitar comportamientos indefinidos debidos a la falta de seguridad para subprocesos. Pregunta Q-cedd6f523eb2c1c3 (abierta)

Este texto ha sido generado por una IA y sirve como nota de uso editorial.

Guía del implementador pendiente (complejidad I1)

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01136
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01136@rel:R25-11#cfdf3484
Content hash
cfdf3484
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01136
Status: valid/unmigrated Version: rel:R25-11#ebd2efb0 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01136@rel:R25-11#ebd2efb0
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#5066950d2026-09-30
  • R21-11rel:R21-11#aa8b145e2026-10-14
  • R22-11rel:R22-11#e03e0f452026-10-14
  • R23-11rel:R23-11#a62b91a92026-10-14
  • R24-11rel:R24-11#393bc96e2026-10-14
  • R25-11rel:R25-11#ebd2efb02026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Documentación de las enumeraciones

enumeración DiagnosticAuthState [SWS_DM_01133] Upstream: RS_Diag_04251

enum class DiagnosticAuthState :                std::uint8_t {...};

Possible values of the Authentication State of the client.

Header-Datei#include "ara/diag/client_authentication.h"
Forwarding-Header#include "ara/diag/diag_fwd.h"
Scopeclass ara::diag::ClientAuthentication
SymbolDiagnosticAuthState
Basistypstd::uint8_t

Werte

EnumeratorBeschreibung
kDeAuthenticated= 0x00 No Diagnostic Clients are currently authenticated.
kAuthenticated= 0x01 A Diagnostic Client is currently authenticated.

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01133
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01133@rel:R25-11#212cac36
Content hash
212cac36
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01133
Status: valid/unmigrated Version: rel:R25-11#be2431b9 Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01133@rel:R25-11#be2431b9
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#ecdc884c2026-09-30
  • R21-11rel:R21-11#9ee5449e2026-10-14
  • R22-11rel:R22-11#9ee5449e2026-10-14
  • R23-11rel:R23-11#e21d94c52026-10-14
  • R24-11rel:R24-11#e21d94c52026-10-14
  • R25-11rel:R25-11#be2431b92026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

Documentación de los alias de tipo

alias de tipo ClientAuthenticationSetNotifier [SWS_DM_02077] Upstream: RS_Diag_04251

using ClientAuthenticationSetNotifier = std::function<void(Diagnostic AuthState)>;

Notifier Function that is called by the Diagnostic Server instance when an Authentication Status Change Occurs. This may be used, for e.g, to notify the application when a transition to kDeAuthenticated State occurred due to an S3 timeout.

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
SymbolClientAuthenticationSetNotifier
Thread-Sicherheitnot thread-safe

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_02077
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_02077@rel:R25-11#541588a8
Content hash
541588a8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_02077
Status: valid/unmigrated Version: rel:R25-11#9f8e8d05 Versionshistorie & Revisions (1 transition, 3 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_02077@rel:R25-11#9f8e8d05
Point-in-Time History:
Recorded Revisions (3):
  • R25-11rel:R25-11#00399c222026-09-30
  • R24-11rel:R24-11#b4d6fb532026-10-14
  • R25-11rel:R25-11#9f8e8d052026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

alias de tipo DiagnosticAuthRole [SWS_DM_01134] Upstream: RS_Diag_04251

using DiagnosticAuthRole = ara::core::String;

The supported values for the Diagnostic Authentication roles are specified in the Diagnostic Extract.

Header-Datei#include "ara/diag/client_authentication.h"
Scopeclass ara::diag::ClientAuthentication
SymbolDiagnosticAuthRole

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/SWS_DM_01134
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01134@rel:R25-11#965545ab
Content hash
965545ab
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01134
Status: valid/unmigrated Version: rel:R25-11#10bed2cf Versionshistorie & Revisions (1 transition, 6 revision)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/SWS_DM_01134@rel:R25-11#10bed2cf
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#ecb176b92026-09-30
  • R21-11rel:R21-11#d3a529062026-10-14
  • R22-11rel:R22-11#7d6be0912026-10-14
  • R23-11rel:R23-11#7e7656532026-10-14
  • R24-11rel:R24-11#eb0bd58b2026-10-14
  • R25-11rel:R25-11#10bed2cf2026-10-14 active
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill