DEENESPTFRRUARHIKOZHNL

klasse ara::diag::SovdAuthorization

[SWS_DM_01490] Upstream: RS_Diag_04268

class SovdAuthorization {...};

Class to implement the SOVD Authorization interfaces in the application.

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

User GuideAI-GEGENEREERD

Stelt applicaties in staat SOVD-tokens te valideren en autorisatie- en token-URL's beschikbaar te stellen.
DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 49d1f84283f8 Herkomst Open vragen (2)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Stelt applicaties in staat SOVD-tokens te valideren en autorisatie- en token-URL's beschikbaar te stellen.

De klasse ara::diag::SovdAuthorization dient voor applicaties ter implementatie van de SOVD-autorisatie-interfaces naar de Diagnostic Server ([SWS_DM_01490]). Ze stelt methoden beschikbaar voor het bepalen van omleidings-URL's voor autorisatie- en token-eindpunten en voor het controleren van toegangstokens ([SWS_DM_01483]). De berichtenontvangst moet na de instantiatie expliciet worden geactiveerd met Offer(), en het doorgegeven authenticatie-object mag na het beschikbaar stellen van het validatieresultaat niet meer worden gebruikt.

Context

De klasse ara::diag::SovdAuthorization stelt de adaptieve applicatie-interface beschikbaar om autorisatie- en authenticatiemechanismen voor Service-Oriented Vehicle Diagnostics (SOVD) te bieden ([SWS_DM_01490]). Binnen de diagnosearchitectuur bemiddelt ze tussen de Diagnostic Server van het Diagnostic Management (DM) en de individuele autorisatielogica van de voertuigapplicatie (SWS Diagnostics §7.3.3.2 “SOVD Request Validation and Verification”). Wanneer een externe SOVD-client eindpunten opvraagt voor clientverificatie of voor het ophalen van tokens, stuurt de Diagnostic Server deze verzoeken door naar de applicatie om de doel-URL's te bepalen ([SWS_DM_01471], [SWS_DM_01472]). Bij inkomende diagnoseverzoeken met een HTTP-autorisatie-header controleert de klasse de geldigheid van het token en definieert ze overgedragen toegangsrollen ([SWS_DM_01470]). De feitelijke validatie ten opzichte van een autorisatieserver (zoals OAuth 2.0) vindt vermoedelijk plaats als een applicatiespecifieke interpretatie via externe netwerkprotocollen, aangezien AUTOSAR hier het lokale applicatie-overdrachtspunt standaardiseert. Vraag Q-6ce702103e4966c7 (open)

SovdAuthContext client SOVD-Client dm Diagnostic Server (DM) client->dm SOVD-Request dm->client HTTP 307 / SOVD-Response handler SovdAuthorization (Anwendung) dm->handler Get*Url() / ValidateAuthorization() authserver Autorisierungs-Server (extern/OAuth 2.0) handler->authserver Token-Validierung (Interpretation)

Contextdiagram: samenspel van SOVD-client, Diagnostic Server (DM), SovdAuthorization en externe autorisatiedienst. Bronnen: [SWS_DM_01470], [SWS_DM_01471], [SWS_DM_01472], SWS Diagnostics §7.3.3.2.1 “SOVD – Authorization”

Levenscyclus

De instantiatie van ara::diag::SovdAuthorization vindt expliciet plaats via de constructor onder opgave van een ara::core::InstanceSpecifier evenals de concurrency-modus ConcurrencyType ([SWS_DM_01489]). De InstanceSpecifier moet in het manifest verwijzen naar een geldige PortPrototype van een DiagnosticSovdAuthorizationInterface. Via de ConcurrencyType (kConcurrent of kNotConcurrent) wordt vastgelegd of de geïmplementeerde callback-methoden van de applicatie thread-safe moeten zijn ontworpen ([SWS_DM_01483], [SWS_DM_01484], [SWS_DM_01485]).

Na de constructie stuurt de Diagnostic Server verzoeken pas door wanneer de applicatie de methode Offer() succesvol heeft aangeroepen ([SWS_DM_01487]). Interpretatie: verzoeken die vóór de Offer() binnenkomen, worden door de server vermoedelijk verworpen of met een fout afgewezen. Vraag Q-84330742a61f91a7 (open) Om het doorsturen van verzoeken te beëindigen, roept de applicatie StopOffer() aan ([SWS_DM_01486]). Ten slotte wordt het object vrijgegeven via de virtuele destructor ([SWS_DM_01488]). De administratieve aanroepen SovdAuthorization, Offer, StopOffer en de destructor zijn niet thread-safe.

Gebruikspad

Tijdens normaal bedrijf treden twee essentiële interactiepaden op: het beschikbaar stellen van omleidings-URL's en de validatie van actieve sessietokens. Stuurt een SOVD-client een bevraging voor clientverificatie of voor het aanvragen van een token, dan roept het DM GetAuthorizationUrl() ([SWS_DM_01485]) resp. GetTokenUrl() ([SWS_DM_01484]) aan. De applicatie evalueert de overgedragen queryParameters evenals de metaInfo en levert de doel-URL asynchroon als ara::core::Future<ara::core::String> terug, waarna het DM antwoordt met een HTTP 307 (Temporary Redirect) ([SWS_DM_01471], [SWS_DM_01472]).

Bevat een opvolgend SOVD-verzoek een nieuwe of gewijzigde HTTP-Authorization-header, dan roept de Diagnostic Server ValidateAuthorization() aan ([SWS_DM_01470], [SWS_DM_01483]). De applicatie valideert de overgedragen token, wijst aan het gerefereerde object ara::diag::ClientAuthentication de overeenkomstige autorisatierollen toe ([SWS_DM_01469]) en levert via de Future een ValidateAuthorizationOutput terug. Belangrijke randvoorwaarde: zodra de Future gereed is, mag de applicatie het gerefereerde ClientAuthentication-object niet meer gebruiken ([SWS_DM_01483]). Het DM benut de retourwaarden (geldigheidsduur validUntil en identity) om opvolgende verzoeken van dezelfde client zonder hernieuwde controle toe te wijzen ([SWS_DM_01781], [SWS_DM_01782]), wat in het bijzonder voor SOVD-bronvergrendelingen vereist is ([SWS_DM_01783]).

Verloop van de SOVD-tokenvalidatieSOVD-ClientDiagnostic Server (DM)SovdAuthorizationClientAuthenticationSOVD-verzoek met Authorization-headerValidateAuthorization(token, metaInfo, clientAuth)Token intern of online validerenRollen als autorisiert setzenFuture ready: ValidateAuthorizationOutputClient heridentificeren & rollen overnemenHTTP 200 OK / Toegang tot bron verleend

Sequentiediagram: verloop van de tokenvalidatie via ValidateAuthorization en roltoewijzing. Bronnen: [SWS_DM_01469], [SWS_DM_01470], [SWS_DM_01483], SWS Diagnostics §7.3.3.2.1 “SOVD – Authorization”

Foutscenario's

Fouten worden via ara::core::Result of binnen de geretourneerde ara::core::Future afgebeeld:

  • Initialisatie- en modelleringsfouten: Faalt de instantiatie, dan worden schendingen gemeld, zoals InstanceSpecifierMappingIntegrityViolation (ongeldig modelelement), PortInterfaceMappingViolation (verkeerd interfacetype), ProcessMappingViolation (ontbrekende procesreferentie) of InstanceSpecifierAlreadyInUseViolation ([SWS_DM_01489]).
  • Vrijgavefouten bij Offer: Offer() retourneert in geval van een fout DiagOfferErrc::kAlreadyOffered indien de dienst al actief is, of DiagOfferErrc::kConfigurationMismatch indien de configuratie niet overeenkomt met de DEXT-gegevens ([SWS_DM_01487]).
  • Fouten bij de tokenvalidatie: Kan een token niet worden geverifieerd, dan levert ValidateAuthorization() via de future DiagSovdErrc::kInvalidAccessToken (ongeldig token) of DiagSovdErrc::kTemporarilyNotAvailable (bijv. wanneer de authenticatieserver voor online verificatie niet bereikbaar is) ([SWS_DM_01483]).
  • URL-bepaling: Voor GetAuthorizationUrl() en GetTokenUrl() zijn geen gestandaardiseerde foutcodes gedefinieerd ([SWS_DM_01484], [SWS_DM_01485]).

Deze handleiding is uitsluitend gebaseerd op de specificaties van AUTOSAR-release R25-11.

Ledenkaart

Klassendiagram

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

G nara__diag__SovdAuthorization23 SovdAuthorization + ~SovdAuthorization() + SovdAuthorization() + GetAuthorizationUrl() + GetTokenUrl() + Offer() + StopOffer() + ValidateAuthorization()

Detailweergave

Kies een item in de inhoudsopgave.

Constructors en destructor

Constructs the port for SOVD Authorization interface.

explicit SovdAuthorization (ara::core::InstanceSpecifier instance Specifier, ConcurrencyType concurrencyType) noexcept;

Destructor of SovdAuthorization.

virtual ~SovdAuthorization () noexcept;

Methoden

Get the URL that the SOVD client shall use for authorization. The SOVD client will be redirected to that URL. If OAuth 2.0 is used, this would be the URL to look up the Authorization Server’s authorize endpoint.

virtual ara::core::Future< ara::core::String > GetAuthorizationUrl (const ara::core::Map< const ara::core::StringView, const ara::core::Vector< const ara::core::StringView > > &queryParameters, const MetaInfo &metaInfo) noexcept=0;
GetTokenUrl functie

Get the URL that the SOVD client shall use to request a token. The SOVD client will be redirected to that URL. If OAuth 2.0 is used, this would be the URL to look up the Authorization Server’s token endpoint.

virtual ara::core::Future< ara::core::String > GetTokenUrl (const ara::core::Map< const ara::core::StringView, const ara::core::Vector< const ara::core::StringView > > &queryParameters, const MetaInfo &meta Info) noexcept=0;
Offer functie

This Offer will enable the DM to forward request messages to this handler.

ara::core::Result< void > Offer () noexcept;
StopOffer functie

This StopOffer will disable the forwarding of request messages from DM.

void StopOffer () noexcept;

This function validates the authorization token sent by the SOVD client. The application shall validate the authorization token according to the authorization protocol used in the system and then according to the outcome set the respective roles as authorized in the clientAuthentication that is passed as parameter. If OAuth 2.0 is used, this would implement the validation that is supposed to happen in the Resource Server.

virtual ara::core::Future< ValidateAuthorizationOutput > Validate Authorization (ara::core::StringView token, const MetaInfo &metaInfo, ClientAuthentication &clientAuthentication) noexcept=0;

Geneste typen

Documentatie van de methoden

functie GetAuthorizationUrl [SWS_DM_01485] Upstream: RS_Diag_04268

virtual ara::core::Future< ara::core::String > GetAuthorizationUrl (const ara::core::Map< const ara::core::StringView, const ara::core::Vector< const ara::core::StringView > > &queryParameters, const MetaInfo &metaInfo) noexcept=0;

Get the URL that the SOVD client shall use for authorization. The SOVD client will be redirected to that URL. If OAuth 2.0 is used, this would be the URL to look up the Authorization Server’s authorize endpoint.

Header-Datei#include "ara/diag/sovd_authorization.h"
Scopeclass ara::diag::SovdAuthorization
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
queryParametersThe query parameters passed in the request.
metaInfoThe meta information of a diagnostic service port.

Rückgabewert

TypBeschreibung
ara::core::Future<ara::core::String >Returns the URL, that the SOVD client shall use for authorization.

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_01485
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01485@rel:R25-11#7b8b7627
Content hash
7b8b7627
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01485
Status: valid/unmigrated Version: rel:R25-11#d45641ff Versionshistorie & Revisions (1 transition, 5 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_01485@rel:R25-11#d45641ff
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#8d714d092026-09-30
  • R22-11rel:R22-11#16824a3e2026-10-14
  • R23-11rel:R23-11#76cd545a2026-10-14
  • R24-11rel:R24-11#6525fcf82026-10-14
  • R25-11rel:R25-11#d45641ff2026-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

functie GetTokenUrl [SWS_DM_01484] Upstream: RS_Diag_04268

virtual ara::core::Future< ara::core::String > GetTokenUrl (const ara::core::Map< const ara::core::StringView, const ara::core::Vector< const ara::core::StringView > > &queryParameters, const MetaInfo &meta Info) noexcept=0;

Get the URL that the SOVD client shall use to request a token. The SOVD client will be redirected to that URL. If OAuth 2.0 is used, this would be the URL to look up the Authorization Server’s token endpoint.

Header-Datei#include "ara/diag/sovd_authorization.h"
Scopeclass ara::diag::SovdAuthorization
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
queryParametersThe query parameters passed in the request.
metaInfoThe meta information of a diagnostic service port.

Rückgabewert

TypBeschreibung
ara::core::Future<ara::core::String >Returns the URL that the SOVD client shall use to request a token.

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_01484
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01484@rel:R25-11#6fe135e7
Content hash
6fe135e7
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01484
Status: valid/unmigrated Version: rel:R25-11#f6a201d9 Versionshistorie & Revisions (1 transition, 5 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_01484@rel:R25-11#f6a201d9
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#7e533d902026-09-30
  • R22-11rel:R22-11#17e901a02026-10-14
  • R23-11rel:R23-11#42f1bade2026-10-14
  • R24-11rel:R24-11#a069b6f52026-10-14
  • R25-11rel:R25-11#f6a201d92026-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

functie Offer [SWS_DM_01487] Upstream: RS_Diag_04268

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

This Offer will enable the DM to forward request messages to this handler.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 0834519262c7 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De synchrone memberfunctie Offer van de klasse ara::diag::SovdAuthorization activeert het doorsturen van verzoekberichten door Diagnostic Management (DM) naar de bijbehorende handler-instantie [SWS_DM_01487]. Zij accepteert geen parameters en retourneert een ara::core::Result<void> die de succesvolle aanroep bevestigt of een opgetreden fout meldt [SWS_DM_01487].

Wat betreft foutafhandeling specificeert [SWS_DM_01487] twee concrete foutcodes uit DiagOfferErrc met rollback-semantiek:

  • DiagOfferErrc::kAlreadyOffered: Treedt op wanneer de dienst voor deze instantie al wordt aangeboden [SWS_DM_01487].
  • DiagOfferErrc::kConfigurationMismatch: Meldt dat de configuratie niet overeenkomt met de DEXT-beschrijvingsgegevens [SWS_DM_01487].

Wat betreft de uitvoeringseigenschappen is de aanroep gedeclareerd als uitzonderingsveilig (exception safe), maar geldt deze als niet thread-safe (not thread-safe) [SWS_DM_01487]. De functie mag daarom niet gelijktijdig voor dezelfde instantie worden aangeroepen.

In het samenspel met de DM komt de functie overeen met het algemene aanbiedingspatroon van de AUTOSAR Adaptive-diagnose-interfaces, zoals dat ook wordt toegepast voor generieke routines of DoIP-diensten (bijvoorbeeld [SWS_DM_00557], [SWS_DM_00725] of [SWS_DM_00809]). Zolang een handler niet via Offer is geregistreerd, stuurt de DM verzoeken niet door naar de applicatie of bedient deze met vooraf gedefinieerde vervangende waarden [SWS_DM_01487], [SWS_DM_01525], [SWS_DM_01527].

Deze tekst is opgesteld door een AI. Alle gegevens zijn uitsluitend gebaseerd op het verstrekte specificatie-uittreksel.

Implementer's Guide volgt (complexiteit I1)

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

Rückgabewert

TypBeschreibung
ara::core::Result< void >Returns nothing or an error.

Fehler

FehlercodeBeschreibung
DiagOfferErrc::kAlreadyOfferedrollback_semantics The service is already offered.
DiagOfferErrc::kConfigurationMismatchrollback_semantics monitor configuration does not match DEXT

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

Record
AUTOSAR/AP/record/SWS_DM_01487
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01487@rel:R25-11#e704e823
Content hash
e704e823
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01487
Status: valid/unmigrated Version: rel:R25-11#a9605b85 Versionshistorie & Revisions (1 transition, 5 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_01487@rel:R25-11#a9605b85
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#1ee581c62026-09-30
  • R22-11rel:R22-11#d1dad9c62026-10-14
  • R23-11rel:R23-11#853e9a012026-10-14
  • R24-11rel:R24-11#59ae33f32026-10-14
  • R25-11rel:R25-11#a9605b852026-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

functie SovdAuthorization [SWS_DM_01489] Upstream: RS_Diag_04268, RS_AP_00170, RS_AP_00171, RS_AP_00172, RS_AP_00173

explicit SovdAuthorization (ara::core::InstanceSpecifier instance Specifier, ConcurrencyType concurrencyType) noexcept;

Constructs the port for SOVD Authorization interface.

Header-Datei#include "ara/diag/sovd_authorization.h"
Scopeclass ara::diag::SovdAuthorization
Exception-Sicherheitexception safe
Thread-Sicherheitnot thread-safe
Verletzungen (Violations)InstanceSpeci- InstanceSpecifier either cannot be resolved in the model in the fierMappingIn- context of your executable, or it refers to a model element other tegrityViolation than a PortPrototype. PortInterfaceMap- A PortPrototype that is referenced by a pingViolation DiagnosticSovdAuthorizationPortMapping needs to be typed by a DiagnosticSovdAuthorizationInterface. ProcessMappingVio- Matching InstanceRef exists, but no matching (modelled) Process lation found that matches the (runtime) process. InstanceSpecifier- Violation message that is sent in case a constructor in the ara AlreadyInUseViola- framework was called with an InstanceSpecifier already in use in tion this process.

Parameter (in)

ParameterBeschreibung
instanceSpecifierInstanceSpecifier to a PortPrototype of a DiagnosticSovdAuthorizationInterface service instance in the manifest.
concurrencyTypeSpecifies if the interface is implemented as thread safe ( kConcurrent) or non-thread safe (kNotConcurrent).

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

Record
AUTOSAR/AP/record/SWS_DM_01489
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01489@rel:R25-11#ffc67145
Content hash
ffc67145
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01489
Status: valid/unmigrated Version: rel:R25-11#c9585cf9 Versionshistorie & Revisions (1 transition, 5 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_01489@rel:R25-11#c9585cf9
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#af23d0c72026-09-30
  • R22-11rel:R22-11#45eb7d512026-10-14
  • R23-11rel:R23-11#97066c872026-10-14
  • R24-11rel:R24-11#07afb8a72026-10-14
  • R25-11rel:R25-11#c9585cf92026-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

functie StopOffer [SWS_DM_01486] Upstream: RS_Diag_04268

void StopOffer () noexcept;

This StopOffer will disable the forwarding of request messages from DM.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: c318a30e32ad Herkomst Open vragen (1)
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

Gebruik

De methode StopOffer van de klasse ara::diag::SovdAuthorization (header ara/diag/sovd_authorization.h) dient ertoe het doorsturen van binnenkomende diagnoseverzoeken vanuit Diagnostic Management (DM) naar de autorisatiedienst te verhinderen [SWS_DM_01486]. De functie heeft de signatuur void StopOffer() noexcept. Zij accepteert geen parameters en retourneert geen waarde aan de aanroeper [SWS_DM_01486].

Foutafhandeling en gelijktijdigheid

De functie is gespecificeerd als uitzonderingsveilig (exception safe) en werpt geen uitzonderingen [SWS_DM_01486]. Specifieke foutcodes evenals foutmeldingen aan DET of DEM zijn voor deze aanroep niet voorzien. Wat betreft concurrency is de methode geclassificeerd als niet thread-safe (not thread-safe) [SWS_DM_01486]. Indien meerdere threads dezelfde instantiecontext gebruiken, moet de toegang door de aanroepende applicatie worden gesynchroniseerd. Interpretatie: Een aanroep zal vooral plaatsvinden bij het ordelijk afsluiten van de applicatie of bij tijdelijk ingetrokken autorisatiebereidheid. Vraag Q-6c81f2dc7ee903ca (open)

Samenspel

Het concept volgt het algemene ontwerppatroon voor interfaces in AUTOSAR Adaptive-diagnose: De aanduiding StopOffer is gekozen naar analogie van de service-interfaces van ara::com, maar vormt een zelfstandige implementatie binnen ara::diag AUTOSAR_AP_SWS_Diagnostics §7.3.4.1.2 “Monitors”. Dezelfde deactiveringssemantiek bevindt zich modulebreed bij vele andere poortinterfaces, bijvoorbeeld bij GenericRoutine [SWS_DM_00558], Authentication [SWS_DM_01131], CommunicationControl [SWS_DM_00810] en Monitor [SWS_DM_01089].

Deze gebruiksinstructie is geautomatiseerd gegenereerd op basis van de specificatie AUTOSAR AP R25-11.

Implementer's Guide volgt (complexiteit I2)

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

Rückgabewert

TypBeschreibung
None

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

Record
AUTOSAR/AP/record/SWS_DM_01486
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01486@rel:R25-11#cae03e30
Content hash
cae03e30
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01486
Status: valid/unmigrated Version: rel:R25-11#9bb7ae44 Versionshistorie & Revisions (1 transition, 5 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_01486@rel:R25-11#9bb7ae44
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#30189eb12026-09-30
  • R22-11rel:R22-11#14fbd18b2026-10-14
  • R23-11rel:R23-11#31cc13ad2026-10-14
  • R24-11rel:R24-11#ac3ee7ea2026-10-14
  • R25-11rel:R25-11#9bb7ae442026-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

functie ValidateAuthorization [SWS_DM_01483] Upstream: RS_Diag_04268

virtual ara::core::Future< ValidateAuthorizationOutput > Validate Authorization (ara::core::StringView token, const MetaInfo &metaInfo, ClientAuthentication &clientAuthentication) noexcept=0;

This function validates the authorization token sent by the SOVD client. The application shall validate the authorization token according to the authorization protocol used in the system and then according to the outcome set the respective roles as authorized in the clientAuthentication that is passed as parameter. If OAuth 2.0 is used, this would implement the validation that is supposed to happen in the Resource Server.

DOOR AI GEGENEREERD ongecontroleerd Model: gemini-3.8-flash-medium · Inspanning: medium · Temperatuur: niet regelbaar · Prompt: 78d8310937f8 Herkomst
vertaald uit de Duitse handleidinggemini-3.8-flash-low · 2026-10-13 · Duits origineel

De zuiver virtuele methode ValidateAuthorization wordt door de diagnostische server aangeroepen wanneer een verzoek van een SOVD-client een Authorization-HTTP-header bevat en het token daarvan nog niet geldig gevalideerd beschikbaar is [SWS_DM_01470]. De applicatie controleert het overgedragen autorisatietoken volgens het in het systeem geconfigureerde protocol (bijvoorbeeld OAuth 2.0 in de context van een Resource Server) en wijst de bijbehorende rollen toe aan de client [SWS_DM_01483].

De interfacespecificatie omvat de volgende parameters en retourwaarden SWS Diagnostics §8.52.1.1.3.5 “ValidateAuthorization”:

  • token (ara::core::StringView): Het vanuit de HTTP-header verzonden toegangstoken [SWS_DM_01483].
  • metaInfo (const MetaInfo&): Meta-informatie van de diagnostische servicepoort [SWS_DM_01483].
  • clientAuthentication (ClientAuthentication&): Object waarmee de applicatie de geauthentiseerde rollen van de SOVD-client instelt [SWS_DM_01483]. Na het beschikbaar stellen van de geretourneerde Future mag de applicatie deze referentie niet meer gebruiken [SWS_DM_01483].
  • Retourwaarde: Een ara::core::Future<ValidateAuthorizationOutput> [SWS_DM_01483]. Bij succesvolle validatie bevat de structuur ValidateAuthorizationOutput [SWS_DM_01927] de geldigheidsijdstempel validUntil [SWS_DM_01820] evenals de client-ID identity [SWS_DM_01819].

De Diagnostic Server beschouwt toegewezen rollen voor verzoeken met een identiek token tot het bereiken van validUntil als geauthentiseerd [SWS_DM_01469] en herkent de SOVD-client aan de hand van het token of de identiteit [SWS_DM_01781] [SWS_DM_01782]. Deze herkenning is onder meer vereist voor tijdelijke operaties en SOVD-vergrendelingen, aangezien niet-geauthentiseerde clients de vergrendelingstoegang met HTTP 401 wordt ontzegd [SWS_DM_01783].

In geval van een fout wordt de Future met DiagSovdErrc::kInvalidAccessToken (ongeldig token) of DiagSovdErrc::kTemporarilyNotAvailable (bijv. authenticatieserver tijdelijk niet bereikbaar) opgelost [SWS_DM_01483]. De functie is gespecificeerd als noexcept en exception-safe; of de implementatie thread-safe moet zijn, wordt gestuurd via de in de constructor doorgegeven ConcurrencyType [SWS_DM_01483].

Deze gebruiksinstructie is gegenereerd door een AI; uitsluitend de AUTOSAR-specificatie is bindend.

Implementer's Guide volgt (complexiteit I1)

Header-Datei#include "ara/diag/sovd_authorization.h"
Scopeclass ara::diag::SovdAuthorization
Exception-Sicherheitexception safe
Thread-Sicherheitconditional whether the function has to be implemented thread safe or non-thread safe is determined by the ConcurrencyType given in the constructor

Parameter (in)

ParameterBeschreibung
tokenThe authorization token sent by the SOVD client in the HTTP Authorization header.
metaInfoThe meta information of a diagnostic service port.
clientAuthenticationObject used by the application to report the authenticated state of the SOVD client. After the returned Future is ready, the referenced object shall not be used any more by the application.

Rückgabewert

TypBeschreibung
ara::core::Future<ValidateAuthorizationOutput >Either ValidateAuthorizationOutput (for a successful validation) or an error code.

Fehler

FehlercodeBeschreibung
DiagSovdErrc::kInvalidAccessTokenrollback_semantics The access token provided by the client is invalid.
DiagSovdErrc::kTemporarilyNotAvailablerollback_semantics The request currently can’t be served, e.g. in case the access token currently can’t be verified (e.g. because online verification is needed and the authentication server can’t be reached).

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

Record
AUTOSAR/AP/record/SWS_DM_01483
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01483@rel:R25-11#a18d9f64
Content hash
a18d9f64
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01483
Status: valid/unmigrated Version: rel:R25-11#3ab745cf Versionshistorie & Revisions (1 transition, 5 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_01483@rel:R25-11#3ab745cf
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#8a2fbb692026-09-30
  • R22-11rel:R22-11#600c614a2026-10-14
  • R23-11rel:R23-11#0433454d2026-10-14
  • R24-11rel:R24-11#7b10afcc2026-10-14
  • R25-11rel:R25-11#3ab745cf2026-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

functie ~SovdAuthorization [SWS_DM_01488] Upstream: RS_Diag_04268

virtual ~SovdAuthorization () noexcept;

Destructor of SovdAuthorization.

Header-Datei#include "ara/diag/sovd_authorization.h"
Scopeclass ara::diag::SovdAuthorization
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_01488
Status
valid/unmigrated
Version
AUTOSAR/AP/record/SWS_DM_01488@rel:R25-11#6aed2f4c
Content hash
6aed2f4c
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_Diagnostics.pdf#nameddest=SWS_DM_01488
Status: valid/unmigrated Version: rel:R25-11#4b141c27 Versionshistorie & Revisions (1 transition, 5 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_01488@rel:R25-11#4b141c27
Point-in-Time History:
Recorded Revisions (5):
  • R25-11rel:R25-11#3e0dc97d2026-09-30
  • R22-11rel:R22-11#a7d4ac032026-10-14
  • R23-11rel:R23-11#b65bc1cb2026-10-14
  • R24-11rel:R24-11#05fce8112026-10-14
  • R25-11rel:R25-11#4b141c272026-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