DEENESPTFRRUARHIKOZHNL

class ara::diag::ClientAuthenticationHandle

[SWS_DM_01145] Upstream: RS_Diag_04251

class ClientAuthenticationHandle final {...};

Definition of the ClientAuthenticationHandle which is returned to the application when an AuthenticationState is set by the application.

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

User GuideKI-GENERIERT

Verwaltet dynamische Diagnoserechte, Sitzungstimer und die Rücknahme der Authentifizierung eines Diagnose-Clients.
KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: ceee534cb2db Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwaltet dynamische Diagnoserechte, Sitzungstimer und die Rücknahme der Authentifizierung eines Diagnose-Clients.

Die Klasse ara::diag::ClientAuthenticationHandle dient der Anwendung zur Verwaltung einer aktiven Authentifizierungssitzung eines Diagnose-Clients [SWS_DM_01206]. Über dieses Handle konfiguriert die Anwendung dynamische Zugriffslisten und erneuert die Inaktivitätstimer des Clients [SWS_DM_01213]. Das Objekt folgt strikter Move-Semantik ohne Kopiermöglichkeit und meldet Fehler bei nicht verfügbarer Diagnoseverwaltung über DiagErrc::kServiceNotAvailable. Durch den Aufruf von Revoke können erteilte Rollen und Zusatzrechte jederzeit kontrolliert zurückgenommen werden.

Kontext

Die API-Klasse ara::diag::ClientAuthenticationHandle ist in der Header-Datei ara/diag/client_authentication_handle.h definiert [SWS_DM_01145]. Sie fungiert als zentrales Steuerungsobjekt, das einer Diagnose-Anwendung durch die Instanz des Diagnostic Servers bereitgestellt wird, sobald ein Client erfolgreich authentifiziert wurde oder dessen Standardrollen temporär überschrieben wurden AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“.

Beim Systemstart befindet sich ein Client standardmäßig im Zustand kDeAuthenticated [SWS_DM_01205] mit vorkonfigurierten Standardrollen [SWS_DM_01204]. Ruft die Anwendung ara::diag::ClientAuthentication::Authenticate auf, versetzt der Diagnostic Server den Client in den Zustand kAuthenticated und liefert ein ara::diag::ClientAuthenticationHandle zurück [SWS_DM_01206]. Ebenso wird beim Aufruf von ara::diag::ClientAuthentication::OverrideDefaultRoles zur temporären Anpassung der Rollen ein solches Handle erzeugt [SWS_DM_01209]. Über das Handle steuert die Anwendung den Authentifizierungsstatus und die dynamische Zugriffsliste (DynamicAccessList), welche einem authentifizierten Client zusätzliche Zugriffsrechte auf Diagnoseressourcen jenseits des Diagnose-Extrakts einräumt AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“.

diag_auth_context Anwendung Anwendung ClientAuthenticationHandle ClientAuthenticationHandle Anwendung->ClientAuthenticationHandle steuert Zugriff DiagnosticServer DiagnosticServer ClientAuthenticationHandle->DiagnosticServer aktualisiert Sitzung DiagnoseClient DiagnoseClient DiagnoseClient->DiagnosticServer sendet UDS-Anfragen

Kontextdiagramm: Zusammenspiel von Anwendung, ClientAuthenticationHandle und Diagnostic Server. Quellen: [SWS_DM_01206], [SWS_DM_01209], AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“

Lebenszyklus

Die Instanziierung von ara::diag::ClientAuthenticationHandle erfolgt regulär durch Fabrikmethoden des Diagnostic Servers im Zuge von Authenticate [SWS_DM_01206] oder OverrideDefaultRoles [SWS_DM_01209]. Ergänzend stellt die Klasse einen parameterlosen Default-Konstruktor bereit [SWS_DM_01146]; ein derart erzeugtes Objekt dürfte vermutlich als ungebundener Platzhalter fungieren, bis ihm per Move-Zuweisung ein aktives Handle übertragen wird. Frage Q-74f44c072616cce9 (offen)

Hinsichtlich der Besitzverhältnisse implementiert die Klasse strikte Move-Semantik: Move-Konstruktor [SWS_DM_01148] und Move-Zuweisungsoperator [SWS_DM_01149] sind als noexcept = default definiert. Das Kopieren ist vollständig unterbunden, da Kopierkonstruktor [SWS_DM_01150] und Kopierzuweisungsoperator [SWS_DM_01151] gelöscht (=delete) sind. Die Freigabe der Instanz erfolgt über den Destruktor ~ClientAuthenticationHandle() [SWS_DM_01147].

Bezüglich der Nebenläufigkeit ist der Default-Konstruktor als threadsicher (thread-safe) spezifiziert [SWS_DM_01146]. Dagegen sind der Destruktor [SWS_DM_01147] sowie sämtliche zustandsverändernden Methodenaufrufe als nicht threadsicher (not thread-safe) ausgewiesen [SWS_DM_01152], [SWS_DM_01153], [SWS_DM_01154], [SWS_DM_01155]. Ein nebenläufiger Zugriff auf dasselbe Handle erfordert daher anwendungsseitige Synchronisation.

Nutzungspfad

Der typische Ablauf zur Laufzeit umfasst die Konfiguration dynamischer Rechte, das Aufrechterhalten der Autorisierung und die kontrollierte Beendigung:

  1. Handle erhalten: Die Anwendung initiiert die Authentifizierung an ara::diag::ClientAuthentication und empfängt die Handle-Instanz [SWS_DM_01206].
  2. Zugriffsliste setzen oder erweitern: Über die Methode Set ersetzt die Anwendung die dynamische Zugriffsliste einer Diagnose-Konversation vollständig [SWS_DM_01153], [SWS_DM_01213]. Alternativ fügt Append zusätzliche Diagnosemuster an eine bestehende Zugriffsliste an [SWS_DM_01152] AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.4 „DynamicAccessList Creation and Update“.
  3. Aktivität erneuern: Bei Inaktivität in der Standard-Sitzung droht nach Verstreichen des Inaktivitäts-Timeouts der automatische Rückfall in kDeAuthenticated [SWS_DM_01210]. Durch den Aufruf von Refresh verlängert die Anwendung die durch Authenticate oder OverrideDefaultRoles gestarteten Timer [SWS_DM_01155] AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“.
  4. Berechtigungen widerrufen: Mit Revoke de-authentifiziert die Anwendung den Client explizit, löscht die zugehörige DynamicAccessList und setzt überschriebene Standardrollen zurück [SWS_DM_01154].
Authentifizierungs- und Zugriffssteuerung via ClientAuthenticationHandleAnwendungClientAuthenticationClientAuthenticationHandleDiagnosticServerUse Case: Authentifizierung und Handle-BereitstellungAuthenticate(roles)Zustand auf kAuthenticated setzenClientAuthenticationHandleUse Case: Rechtekonfiguration und Timer-AktualisierungSet(dynamicAccessList)DynamicAccessList ersetzenResult<void>Refresh()Inaktivitaetstimer zuruecksetzenResult<void>Use Case: SitzungsbeendigungRevoke()kDeAuthenticated & Rechte loeschenResult<void>

Sequenzdiagramm: Ablauf zur Authentifizierung, Rechteverwaltung und Rücknahme über das Handle. Quellen: [SWS_DM_01206], [SWS_DM_01153], [SWS_DM_01155], [SWS_DM_01154]

Fehlerszenarien

Die operativen Methoden Set [SWS_DM_01153], Append [SWS_DM_01152], Refresh [SWS_DM_01155] und Revoke [SWS_DM_01154] geben jeweils ara::core::Result<void> zurück und sind als noexcept sowie ausnahmesicher (exception safe) deklariert.

Schlägt die Kommunikation oder Ausführung fehl, weil essenzielle Funktionalitäten des Diagnostic Managers zurzeit nicht zur Verfügung stehen, liefern die Aufrufe den Fehlercode DiagErrc::kServiceNotAvailable [SWS_DM_01152], [SWS_DM_01153], [SWS_DM_01154], [SWS_DM_01155]. In diesem Fall greift eine Rollback-Semantik, sodass keine inkonsistenten Teiländerungen am Authentifizierungszustand oder den Zugriffslisten des Clients verbleiben.

Stützt sich auf die AUTOSAR Adaptive R25-11 Spezifikation der Diagnose-Schnittstelle.

Mitgliederkarte

Klassendiagramm

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

G nara__diag__ClientAuthenticationHandle939 ClientAuthenticationHandle + ClientAuthenticationHandle() + ~ClientAuthenticationHandle() + Append() + Refresh() + Revoke() + Set() + operator=()

Detailansicht

Wähle in der Gliederung einen Eintrag aus.

Konstruktoren und Destruktor

Constructor of ClientAuthenticationHandle.

Überladungen ClientAuthenticationHandle 3
ClientAuthenticationHandle () noexcept; SWS_DM_01146
ClientAuthenticationHandle (ClientAuthenticationHandle &&other) noexcept=default; SWS_DM_01148
ClientAuthenticationHandle (ClientAuthenticationHandle const &other)=delete; SWS_DM_01150

Destructor of ClientAuthenticationHandle.

Methoden

Append function

This function is used by the application to append a DynamicAccessList to the already existing DynamicAccessList of a Diagnostic Conversation.

ara::core::Result< void > Append (DiagnosticServiceDynamicAccessList dynamicAccessList) noexcept;
Refresh function

This function is used by the application to refresh the timer that was started by Authenticate or OverrideDefaultRoles. If both Methods were previously called, both timers are refreshed.

ara::core::Result< void > Refresh () noexcept;
Revoke function

This function is used by the application to de-authenticate a client, and also to clear the Dynamic AccessList and any overridden defaults.

ara::core::Result< void > Revoke () noexcept;
Set function

This function is used by the application to set/replace a DynamicAccessList of a Diagnostic Conversation.

ara::core::Result< void > Set (DiagnosticServiceDynamicAccessList dynamicAccessList) noexcept;

Operatoren

operator= function 2

Move assignment operator of ClientAuthenticationHandle.

Überladungen = 2
auto operator= (ClientAuthenticationHandle &&other) & noexcept -> ClientAuthenticationHandle & =default; SWS_DM_01149
auto operator= (ClientAuthenticationHandle const &other) -> Client AuthenticationHandle &=delete; SWS_DM_01151

Dokumentation der Methoden

function Append [SWS_DM_01152] Upstream: RS_Diag_04251

ara::core::Result< void > Append (DiagnosticServiceDynamicAccessList dynamicAccessList) noexcept;

This function is used by the application to append a DynamicAccessList to the already existing DynamicAccessList of a Diagnostic Conversation.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: ecc404bb2530 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode Append der Klasse ara::diag::ClientAuthenticationHandle wird von Anwendungen genutzt, um eine dynamische Zugriffsliste (dynamicAccessList) an die bereits bestehende DynamicAccessList einer aktiven Diagnosekonversation anzufügen [SWS_DM_01152]. Die Schnittstelle wird über den Header ara/diag/client_authentication_handle.h bereitgestellt AUTOSAR_AP_SWS_Diagnostics §8.6.1.1.3.1 „Append“.

Der Aufruf wird synchron ausgeführt und ist als noexcept spezifiziert [SWS_DM_01152]. Als Eingabeparameter nimmt die Funktion eine DiagnosticServiceDynamicAccessList entgegen. Der Rückgabetyp ara::core::Result<void> signalisiert den erfolgreichen Abschluss oder transportiert im Fehlerfall den Fehlercode DiagErrc::kServiceNotAvailable [SWS_DM_01152]. Letzterer weist darauf hin, dass wesentliche Funktionen des Diagnostic Management derzeit nicht verfügbar sind. Für diesen Fehlerfall gilt eine Rollback-Semantik, sodass der vorherige Zustand der Zugriffsliste erhalten bleibt [SWS_DM_01152].

In Bezug auf Nebenläufigkeit gilt die Operation als ausnahmesicher (exception safe), ist aber ausdrücklich als nicht threadsicher (not thread-safe) klassifiziert [SWS_DM_01152]. Bei parallelen Zugriffen auf dasselbe Handle-Objekt dürfte somit eine externe Synchronisation durch die aufrufende Anwendung notwendig sein. Frage Q-f0da9a0538a86a16 (offen)

Dieser Nutzungshinweis wurde automatisch generiert und basiert ausschließlich auf den Spezifikationsdaten von AUTOSAR R25-11.

Implementer's Guide folgt (Komplexität I1)

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

Parameter (in)

ParameterBeschreibung
dynamicAccessListThe DynamicAccessList to be appended in the client.

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an 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_01152
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01152@rel:R25-11#5fbe369d
Content hash
5fbe369d
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01152
Status: valid/unmigrated Version: rel:R25-11#760cf1a2 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_01152@rel:R25-11#760cf1a2
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#5fbe369d2026-09-30
  • R21-11rel:R21-11#fe6687392026-10-14
  • R22-11rel:R22-11#4d5753f62026-10-14
  • R23-11rel:R23-11#85d630192026-10-14
  • R24-11rel:R24-11#e44623a72026-10-14
  • R25-11rel:R25-11#760cf1a22026-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

function ClientAuthenticationHandle [SWS_DM_01146] Upstream: RS_Diag_04251

ClientAuthenticationHandle () noexcept;

Constructor of ClientAuthenticationHandle.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 970d47856338 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Der synchrone Standardkonstruktor [SWS_DM_01146] erzeugt eine Instanz der Klasse ara::diag::ClientAuthenticationHandle. Der Aufruf nimmt keine Übergabeparameter entgegen und liefert keinen Rückgabewert. Die Funktion ist als noexcept deklariert und als threadsicher (thread-safe) sowie ausnahmesicher spezifiziert [SWS_DM_01146], sodass bei der Erzeugung keine Fehlercodes oder Exceptions auftreten.

Für die Weitergabe und den Lebenszyklus des erzeugten Objekts gelten folgende Einschränkungen:

Im Gesamtsystem stellt der Diagnostic Server aktive, an einen Client gebundene Handles regulär über Authenticate [SWS_DM_01142] oder OverrideDefaultRoles [SWS_DM_01141] bereit (AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“). Ein über den Standardkonstruktor erzeugtes Exemplar dürfte daher als ungebundener Platzhalter dienen, der erst durch anschließende Move-Zuweisung [SWS_DM_01149] ein gültiges Handle zur Steuerung der Zugriffslisten aufnimmt. Frage Q-ce182402bd1d4072 (offen)

Dieser Text wurde von einer KI auf Basis der AUTOSAR-Spezifikation R25-11 generiert.

Implementer's Guide folgt (Komplexität I2)

Header-Datei#include "ara/diag/client_authentication_handle.h"
Scopeclass ara::diag::ClientAuthenticationHandle
Exception-Sicherheitexception safe
Thread-Sicherheitthread-safe

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

Record
AUTOSAR/AP/record/SWS_DM_01146
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01146@rel:R25-11#343d8461
Content hash
343d8461
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01146
Status: valid/unmigrated Version: rel:R25-11#e53f888a 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_01146@rel:R25-11#e53f888a
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#343d84612026-09-30
  • R21-11rel:R21-11#382fc8b12026-10-14
  • R22-11rel:R22-11#1b1476a42026-10-14
  • R23-11rel:R23-11#ae2414252026-10-14
  • R24-11rel:R24-11#2fa9197f2026-10-14
  • R25-11rel:R25-11#e53f888a2026-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

function ClientAuthenticationHandle [SWS_DM_01148] Upstream: RS_Diag_04251

ClientAuthenticationHandle (ClientAuthenticationHandle &&other) noexcept=default;

Move constructor of ClientAuthenticationHandle.

Header-Datei#include "ara/diag/client_authentication_handle.h"
Scopeclass ara::diag::ClientAuthenticationHandle
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_01148
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01148@rel:R25-11#398da6ac
Content hash
398da6ac
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01148
Status: valid/unmigrated Version: rel:R25-11#61fab40f 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_01148@rel:R25-11#61fab40f
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#398da6ac2026-09-30
  • R21-11rel:R21-11#4ded0cd12026-10-14
  • R22-11rel:R22-11#6906c58f2026-10-14
  • R23-11rel:R23-11#9b4b55cb2026-10-14
  • R24-11rel:R24-11#ce30ca042026-10-14
  • R25-11rel:R25-11#61fab40f2026-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

function ClientAuthenticationHandle [SWS_DM_01150] Upstream: RS_Diag_04251

ClientAuthenticationHandle (ClientAuthenticationHandle const &other)=delete;

Copy constructor of ClientAuthenticationHandle cannot be used.

Header-Datei#include "ara/diag/client_authentication_handle.h"
Scopeclass ara::diag::ClientAuthenticationHandle

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

Record
AUTOSAR/AP/record/SWS_DM_01150
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01150@rel:R25-11#b2ba2b41
Content hash
b2ba2b41
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01150
Status: valid/unmigrated Version: rel:R25-11#5c00c5f2 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_01150@rel:R25-11#5c00c5f2
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#b2ba2b412026-09-30
  • R21-11rel:R21-11#be3428ad2026-10-14
  • R22-11rel:R22-11#7ad065b42026-10-14
  • R23-11rel:R23-11#f8cce9ac2026-10-14
  • R24-11rel:R24-11#5c00c5f22026-10-14
  • R25-11rel:R25-11#5c00c5f22026-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

function Refresh [SWS_DM_01155] Upstream: RS_Diag_04251

ara::core::Result< void > Refresh () noexcept;

This function is used by the application to refresh the timer that was started by Authenticate or OverrideDefaultRoles. If both Methods were previously called, both timers are refreshed.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 8c9744884d32 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die Methode Refresh der Klasse ara::diag::ClientAuthenticationHandle (Header-Datei #include "ara/diag/client_authentication_handle.h") dient einer Anwendung dazu, aktive Authentifizierungs- oder Rollen-Timer zu verlängern (AUTOSAR_AP_SWS_Diagnostics §8.6.1.1.3.2 „Refresh“). Sie setzt den Timer zurück, der zuvor durch Authenticate oder OverrideDefaultRoles gestartet wurde. Falls zuvor beide Methoden aufgerufen wurden, werden durch den Aufruf beide Timer gleichzeitig erneuert [SWS_DM_01155].

Der synchrone Aufruf (Interpretation: direkte Rückgabe ohne asynchronen Future) erfolgt parameterlos auf einer bestehenden Instanz von ClientAuthenticationHandle, welche die Anwendung nach erfolgreichem Abschluss von Authenticate oder OverrideDefaultRoles vom Diagnostic Server erhalten hat (AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“). Frage Q-b07e81ff4629ada7 (offen) Die Funktion ist als noexcept deklariert und ausnahmesicher (exception safe), jedoch als nicht threadsicher (not thread-safe) spezifiziert [SWS_DM_01155]. Nebenläufige Aufrufe auf derselben Instanz müssen daher durch den Aufrufer synchronisiert werden.

Schlägt die Operation fehl, gibt die Funktion über ara::core::Result<void> den Fehlercode DiagErrc::kServiceNotAvailable zurück [SWS_DM_01155]. Dies zeigt über Rollback-Semantik an, dass der Aufruf nicht ausgeführt werden konnte, weil essenzielle Funktionalitäten des Diagnostic Management (DM) zurzeit nicht verfügbar sind [SWS_DM_01155].

Dieser Nutzungshinweis wurde automatisiert auf Basis der Spezifikation AUTOSAR R25-11 generiert.

Implementer's Guide folgt (Komplexität I2)

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

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an 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_01155
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01155@rel:R25-11#b5659ac0
Content hash
b5659ac0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01155
Status: valid/unmigrated Version: rel:R25-11#336ea0d5 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_01155@rel:R25-11#336ea0d5
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#b5659ac02026-09-30
  • R21-11rel:R21-11#f05c61ca2026-10-14
  • R22-11rel:R22-11#2739c0e72026-10-14
  • R23-11rel:R23-11#ebcd83152026-10-14
  • R24-11rel:R24-11#aa896f602026-10-14
  • R25-11rel:R25-11#336ea0d52026-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

function Revoke [SWS_DM_01154] Upstream: RS_Diag_04251

ara::core::Result< void > Revoke () noexcept;

This function is used by the application to de-authenticate a client, and also to clear the Dynamic AccessList and any overridden defaults.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 97421a5ce76e Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die synchrone Methode Revoke der Klasse ara::diag::ClientAuthenticationHandle (SWS Diagnostics §8.6.1.1.3.3 „Revoke“) dient Anwendungen dazu, einen zuvor authentifizierten Diagnose-Client zu deauthentifizieren sowie dessen dynamische Zugriffsliste (DynamicAccessList) und überschriebene Standardrollen vollständig zu verwerfen ([SWS_DM_01154], [SWS_DM_01216]).

Die Funktion besitzt keine Übergabeparameter und gibt ein ara::core::Result<void> zurück ([SWS_DM_01154]). Im Erfolgsfall wird der Authentifizierungsstatus des Clients beendet. Ist eine essenzielle Funktionalität des Diagnostic Managers zum Aufrufzeitpunkt nicht verfügbar, schlägt die Operation fehl und liefert den Fehler DiagErrc::kServiceNotAvailable mit Rollback-Semantik ([SWS_DM_01154]).

Hinsichtlich der Nebenläufigkeit ist die Schnittstelle als ausnahmesicher (exception safe), jedoch als nicht threadsicher (not thread-safe) spezifiziert ([SWS_DM_01154]). Interpretation: Bei nebenläufigen Zugriffen auf dieselbe Handle-Instanz aus mehreren Threads dürfte die aufrufende Anwendung daher eine externe Synchronisation sicherstellen müssen. Frage Q-8781261c9a2f5f8e (offen)

Im Gesamtablauf wird die Instanz von ClientAuthenticationHandle der Anwendung nach erfolgreicher Authentifizierung oder nach dem Überschreiben von Standardrollen durch die Diagnose-Server-Instanz bereitgestellt (SWS Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“). Während der aktive Handle neben dem Widerruf auch das Ersetzen ([SWS_DM_01213]) oder Erweitern ([SWS_DM_01215]) der DynamicAccessList erlaubt, beendet Revoke diese Berechtigungen des Clients endgültig.

Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR Adaptive R25-11 generiert.

Implementer's Guide folgt (Komplexität I1)

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

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an 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_01154
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01154@rel:R25-11#0fc0c68f
Content hash
0fc0c68f
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01154
Status: valid/unmigrated Version: rel:R25-11#d654e83e 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_01154@rel:R25-11#d654e83e
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#0fc0c68f2026-09-30
  • R21-11rel:R21-11#341b16582026-10-14
  • R22-11rel:R22-11#b81da6112026-10-14
  • R23-11rel:R23-11#4f5f61352026-10-14
  • R24-11rel:R24-11#6d88b2f82026-10-14
  • R25-11rel:R25-11#d654e83e2026-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

function Set [SWS_DM_01153] Upstream: RS_Diag_04251

ara::core::Result< void > Set (DiagnosticServiceDynamicAccessList dynamicAccessList) noexcept;

This function is used by the application to set/replace a DynamicAccessList of a Diagnostic Conversation.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 8ef0a8bd09d8 Herkunft
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Die synchrone Methode Set der Klasse ara::diag::ClientAuthenticationHandle ([SWS_DM_01153]) dient einer Applikation dazu, die dynamische Zugriffsliste (DynamicAccessList) für eine Diagnose-Konversation bzw. einen authentifizierten Client im Diagnostic Server zu setzen oder vollständig zu ersetzen ([SWS_DM_01213]). Der Diagnostic Manager führt für jeden authentifizierten Client eine solche DynamicAccessList, die dem Client über die im Diagnostic Extract hinterlegte Konfiguration hinaus zusätzliche Zugriffsrechte auf Diagnose-Ressourcen einräumen kann (AUTOSAR_AP_SWS_Diagnostics §7.3.2.3.3 „ClientAuthenticationHandle“).

Bei der Verwendung sind folgende Aspekte maßgeblich:

  • Aufrufkontext und Parameter: Die Funktion wird an einer Instanz von ara::diag::ClientAuthenticationHandle aufgerufen (deklariert in #include "ara/diag/client_authentication_handle.h"). Eine solche Handle-Instanz wird der Applikation bereitgestellt, wenn zuvor entweder ara::diag::ClientAuthentication::Authenticate ([SWS_DM_01206]) oder ara::diag::ClientAuthentication::OverrideDefaultRoles ([SWS_DM_01209]) erfolgreich abgeschlossen wurde. Als einziger Übergabeparameter wird dynamicAccessList vom Typ DiagnosticServiceDynamicAccessList übergeben, welche die neue Zugriffsliste definiert ([SWS_DM_01153]).
  • Rückgabewert und Fehlerbehandlung: Die Methode ist als noexcept spezifiziert und liefert ein ara::core::Result<void> zurück. Sie arbeitet mit Rollback-Semantik: Kann der Aufruf nicht ausgeführt werden, weil essenzielle DM-Funktionalität aktuell nicht verfügbar ist, schlägt der Aufruf mit dem Fehlercode DiagErrc::kServiceNotAvailable fehl ([SWS_DM_01153]). Hinsichtlich der Ausnahmebehandlung ist die Methode als ausnahmesicher (exception safe) eingestuft.
  • Nebenläufigkeit: Die Operation ist explizit als nicht threadsicher (not thread-safe) definiert ([SWS_DM_01153]). Werden Aufrufe an derselben Handle-Instanz nebenläufig aus mehreren Threads heraus getätigt, obliegt die notwendige Synchronisation der Applikation.

Dieser Nutzungshinweis wurde automatisiert auf Basis der AUTOSAR-Spezifikation erzeugt.

Implementer's Guide folgt (Komplexität I1)

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

Parameter (in)

ParameterBeschreibung
dynamicAccessListThe new DynamicAccessList to be set in the client.

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an 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_01153
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01153@rel:R25-11#850c01d8
Content hash
850c01d8
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01153
Status: valid/unmigrated Version: rel:R25-11#6e0f3d93 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_01153@rel:R25-11#6e0f3d93
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#850c01d82026-09-30
  • R21-11rel:R21-11#4dff11b12026-10-14
  • R22-11rel:R22-11#5a0f43622026-10-14
  • R23-11rel:R23-11#768f7ce22026-10-14
  • R24-11rel:R24-11#bac10bed2026-10-14
  • R25-11rel:R25-11#6e0f3d932026-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

function operator= [SWS_DM_01149] Upstream: RS_Diag_04251

auto operator= (ClientAuthenticationHandle &&other) & noexcept -> ClientAuthenticationHandle & =default;

Move assignment operator of ClientAuthenticationHandle.

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

Parameter (in)

ParameterBeschreibung
otherObject to move-assign from.

Rückgabewert

TypBeschreibung
ClientAuthenticationHandleClientAuthenticationHandle& Reference to self.

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

Record
AUTOSAR/AP/record/SWS_DM_01149
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01149@rel:R25-11#825bafd0
Content hash
825bafd0
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01149
Status: valid/unmigrated Version: rel:R25-11#6d429c60 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_01149@rel:R25-11#6d429c60
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#825bafd02026-09-30
  • R21-11rel:R21-11#6b6602162026-10-14
  • R22-11rel:R22-11#7c114d032026-10-14
  • R23-11rel:R23-11#f26ac2222026-10-14
  • R24-11rel:R24-11#13552b832026-10-14
  • R25-11rel:R25-11#6d429c602026-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

function operator= [SWS_DM_01151] Upstream: RS_Diag_04251

auto operator= (ClientAuthenticationHandle const &other) -> Client AuthenticationHandle &=delete;

Copy assignment operator of CancellationHandler cannot be used.

Header-Datei#include "ara/diag/client_authentication_handle.h"
Scopeclass ara::diag::ClientAuthenticationHandle

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

Record
AUTOSAR/AP/record/SWS_DM_01151
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01151@rel:R25-11#e7f21735
Content hash
e7f21735
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01151
Status: valid/unmigrated Version: rel:R25-11#41e0cc7a 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_01151@rel:R25-11#41e0cc7a
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#e7f217352026-09-30
  • R21-11rel:R21-11#e234b1652026-10-14
  • R22-11rel:R22-11#8556e28c2026-10-14
  • R23-11rel:R23-11#114f1c5c2026-10-14
  • R24-11rel:R24-11#41e0cc7a2026-10-14
  • R25-11rel:R25-11#41e0cc7a2026-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

function ~ClientAuthenticationHandle [SWS_DM_01147] Upstream: RS_Diag_04251

~ClientAuthenticationHandle () noexcept;

Destructor of ClientAuthenticationHandle.

KI-GENERIERT ungeprüft Modell: gemini-3.8-flash-medium · Aufwand: medium · Temperatur: nicht steuerbar · Prompt: 284dd06f8411 Herkunft Offene Fragen (1)
KI-generiertgemini-3.8-flash-medium · 2026-10-13

Verwendung und Semantik

Die Funktion ~ClientAuthenticationHandle() ist der Destruktor der Klasse ara::diag::ClientAuthenticationHandle und wird über die Header-Datei ara/diag/client_authentication_handle.h deklariert ([SWS_DM_01147], AUTOSAR_AP_SWS_Diagnostics §8.6.1.1.1.3 „Destructor“). Er nimmt keine Übergabeparameter entgegen und liefert keinen Rückgabewert. Der Aufruf erfolgt üblicherweise implizit bei Beendigung der Lebensdauer des Objekts. Interpretation: Dabei dürften alle intern durch das Handle gebundenen Ressourcen der Client-Authentifizierung freigegeben werden. Frage Q-ea8f47232fd9951f (offen)

Fehlerbehandlung und Exception-Sicherheit

Der Destruktor ist als noexcept deklariert und explizit als exception safe spezifiziert ([SWS_DM_01147]). Während der Zerstörung des Objekts werden folglich keine C++-Exceptions ausgelöst und keine spezifischen Fehlercodes zurückgemeldet, sodass der Bereinigungsvorgang garantiert fehlerfrei abschließt.

Nebenläufigkeit und Einschränkungen

Die Zerstörung eines ClientAuthenticationHandle ist gemäß Spezifikation als not thread-safe eingestuft ([SWS_DM_01147]). Die aufrufende Anwendung hat sicherzustellen, dass keine anderen Threads parallel auf dieselbe Instanz zugreifen, während der Destruktor ausgeführt wird.

Dieser Text wurde von einer KI auf Basis der Spezifikation AUTOSAR Adaptive R25-11 generiert.

Implementer's Guide folgt (Komplexität I1)

Header-Datei#include "ara/diag/client_authentication_handle.h"
Scopeclass ara::diag::ClientAuthenticationHandle
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_01147
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01147@rel:R25-11#f9cc0a48
Content hash
f9cc0a48
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01147
Status: valid/unmigrated Version: rel:R25-11#b9cd7178 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_01147@rel:R25-11#b9cd7178
Point-in-Time History:
Recorded Revisions (6):
  • R25-11rel:R25-11#f9cc0a482026-09-30
  • R21-11rel:R21-11#3b91d66c2026-10-14
  • R22-11rel:R22-11#cca9279f2026-10-14
  • R23-11rel:R23-11#4de7c36f2026-10-14
  • R24-11rel:R24-11#0092ff1b2026-10-14
  • R25-11rel:R25-11#b9cd71782026-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