PACS System 0.1.0
PACS DICOM system library
Loading...
Searching...
No Matches
oauth2_config.h
Go to the documentation of this file.
1// BSD 3-Clause License
2// Copyright (c) 2021-2025, 🍀☀🌕🌥 🌊
3// See the LICENSE file in the project root for full license information.
4
15#pragma once
16
17#include <cstdint>
18#include <string>
19#include <vector>
20
22
32 bool enabled = false;
33
35 std::string issuer;
36
38 std::string audience;
39
41 std::string jwks_url;
42
44 std::uint32_t clock_skew_seconds = 60;
45
47 std::vector<std::string> allowed_algorithms = {"RS256", "ES256"};
48
52 bool allow_unknown_users = false;
53};
54
55} // namespace kcenon::pacs::web::auth
OAuth 2.0 configuration for DICOMweb authorization.
bool enabled
Enable OAuth 2.0 authorization (disabled by default for backward compat)
std::string audience
Expected audience (aud claim). Empty = skip audience validation.
std::uint32_t clock_skew_seconds
Allowed clock skew in seconds for exp/nbf validation.
std::string jwks_url
JWKS endpoint URL for public key retrieval.
bool allow_unknown_users
Allow unknown OAuth users not found in RBAC to access as Viewer When false (default): unknown users r...
std::string issuer
Expected token issuer (iss claim). Empty = skip issuer validation.
std::vector< std::string > allowed_algorithms
Allowed signing algorithms (default: RS256, ES256)