BasicAuth configuration
A BasicAuth credentials configuration file must be stored in the folder configured by the property plantuml.security.credentials.path
. The file extension is .credential
, the file content is structured in JSON, the charset encoding is UTF-8, the filename must match the UserInfo part of the URL.
See also: * link::url-oauth[OAuth2 configuration] * link::url-tokenauth[Token Auth configuration] * link::url-authentication[General URL authentication documentation]
Flow
@startuml
PlantUML -> Service : call service URL\n(with Authorization BasicAuth)
Service -> AuthServer : validates credentials
note right: Maybe internal check w/o AuthServer
Service <- AuthServer: ok
Service -> PlantUML : response with content
@enduml
BasicAuth JSON structure:
{ "name": "<name of the configuration>", "type": "basicauth", "identifier": "<client/user identifier>", "secret": "<client secret>", "proxy": { "type": "<proxy type>", "address": "<proxy server address>", "port": "<proxy server port>" } }
@startjson
#highlight "name"
#highlight "identifier"
#highlight "proxy" / "type"
#highlight "proxy" / "address"
{
"name": "",
"type": "**basicauth**",
"identifier": "",
"secret": "",
"proxy": {
"type": "",
"address": "",
"port": ""
}
}
@endjson
-
name
: required-
The name of the configuration and should be similar to the file name
-
-
type
:basicauth
-
Defines the basicauth method (can be omitted)
-
-
identifier
: required-
Identifier for a client or user
-
-
secret
:-
Secret for the identifier in clear text (not encrypted) a set of key-value pairs.
-
-
proxy
:-
Optional proxy configuration (overrides system proxy settings)
-
-
proxy
.type
: required (direct
,socks
,http
)-
Proxy type definition.
-
-
proxy
.address
: required-
Proxy server address (hostname, IP address)
-
-
proxy
.port
:-
Proxy server port number
-
Examples
{ "name": "jira", "identifier": "alice", "secret": "secret" }
{ "name": "stash-cloud", "type": "basicauth", "identifier": "repoadmin", "secret": "verySecret", "proxy": { "type": "socks", "address": "outboundcloud.int.example.com", "port": "8091" } }