함수 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.
사용 및 호출
함수 ara::diag::ClientAuthentication::Authenticate은(는) 애플리케이션이 진단 클라이언트의 성공적인 인증을 Diagnostic Server 인스턴스에 알리기 위해 호출됩니다 [SWS_DM_01142]. 이는 Diagnostic Server의 인터페이스를 통한 인증 후 또는 애플리케이션 자체 메커니즘을 통해 수행될 수 있습니다 [SWS_DM_01142].
입력 매개변수로 이 함수는 userRoles(타입 ara::core::Vector<DiagnosticAuthRole>)을(를) 받습니다. 성공적으로 호출되면 인스턴스의 인증 상태가 kAuthenticated(으)로 전환되고 전달된 사용자 역할이 확정적으로 적용됩니다 [SWS_DM_01206]. 반환값으로 ara::core::Result<ClientAuthenticationHandle>을(를) 제공합니다 [SWS_DM_01142]. Result 객체가 즉시 제공되므로, 처리는 호출 컨텍스트에서 동기식으로 수행될 것으로 보입니다. 질문 Q-dae22c82694f2103 (열림)
오류 처리 및 동시성
이 메서드는 noexcept(으)로 선언되어 있으며 예외 안전(exception safe)한 것으로 간주됩니다 [SWS_DM_01142]. 호출 시점에 Diagnostic Manager의 기본 기능을 사용할 수 없어 오류가 발생하는 경우, 작업은 롤백 의미론(rollback semantics)으로 실패하고 Result 객체에 DiagErrc::kServiceNotAvailable을(를) 반환합니다 [SWS_DM_01142].
동시성과 관련하여 이 메서드는 명시적으로 not thread-safe로 지정되어 있습니다 [SWS_DM_01142]. 따라서 동일한 ClientAuthentication 객체에 대한 병렬 호출은 허용되지 않으며 애플리케이션에 의해 동기화되어야 합니다.
ERR HTTP Error 429: Too Many Requests
획득한 ClientAuthenticationHandle을(를) 통해 애플리케이션은 인증된 클라이언트에 대한 DynamicAccessList을(를) 정의하거나 확장할 수 있습니다 [SWS_DM_01142]. 또한 이 호출은 클라이언트의 비활성 모니터링을 시작하거나 참조합니다. 성공적인 인증 후 기본 세션 상태에서 authenticationTimeout 동안 추가 UDS 요청이 없으면, Diagnostic Server 인스턴스는 클라이언트를 자동으로 kDeAuthenticated(으)로 다시 재설정합니다 [SWS_DM_01210]. 이 타임아웃을 방지하기 위해 애플리케이션은 핸들의 Refresh 메서드를 통해 타이머를 업데이트할 수 있습니다 [SWS_DM_01155].
이 텍스트는 AUTOSAR 사양을 기반으로 AI에 의해 생성되었습니다.
구현자 가이드 준비 중 (복잡도 I2)
| Header-Datei | #include "ara/diag/client_authentication.h" |
|---|---|
| Scope | class ara::diag::ClientAuthentication |
| Exception-Sicherheit | exception safe |
| Thread-Sicherheit | not thread-safe |
Parameter (in)
| Parameter | Beschreibung |
|---|---|
| userRoles | The user roles to set on the diagnostic client |
Rückgabewert
| Typ | Beschreibung |
|---|---|
| ara::core::Result< ClientAuthenticationHandle > | A handler of the Authentication State, which can be used by the application to set or extend the DynamicAccessList |
Fehler
| Fehlercode | Beschreibung |
|---|---|
| DiagErrc::kServiceNotAvailable | rollback_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#d275800f- Content hash
d275800f- 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
Recorded Revisions (6):
- R25-11
rel:R25-11#ffd39a4b2026-09-30 - R21-11
rel:R21-11#6f17bd9a2026-10-14 - R22-11
rel:R22-11#1579f1692026-10-14 - R23-11
rel:R23-11#3b67657b2026-10-14 - R24-11
rel:R24-11#575f1e5f2026-10-14 - R25-11
rel:R25-11#17cf8f552026-10-14 active
Requirement Text as-of this release:
Curation Decisions:
Reachable Artifacts & Dependents:
| Date | Actor | Transition | Reason / Rationale | Campaign |
|---|---|---|---|---|
| 2026-08-13 | tool | none → valid/unmigrated | mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record | 2026-08-13-status-backfill |
gemini-3.8-flash-low· 2026-10-13 · 독일어 원문