Encode auth parameters into authParams property
- Replace `authParamsMap` with `authentication` Fixes #95
This commit is contained in:
committed by
Chris Bono
parent
c59db85990
commit
ee194f4a6d
91
spring-pulsar-docs/src/main/asciidoc/authentication.adoc
Normal file
91
spring-pulsar-docs/src/main/asciidoc/authentication.adoc
Normal file
@@ -0,0 +1,91 @@
|
||||
[appendix]
|
||||
[[appendix.authentication]]
|
||||
= Authentication
|
||||
|
||||
[[Athenz]]
|
||||
== Athenz
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
spring.pulsar.client.auth-plugin-class-name: org.apache.pulsar.client.impl.auth.AuthenticationAthenz
|
||||
spring.pulsar.client.authentication.tenant-domain: ...
|
||||
spring.pulsar.client.authentication.tenant-service: ...
|
||||
spring.pulsar.client.authentication.provider-domain: ...
|
||||
spring.pulsar.client.authentication.private-key: ...
|
||||
spring.pulsar.client.authentication.private-key-path: ...
|
||||
spring.pulsar.client.authentication.key-id: ...
|
||||
spring.pulsar.client.authentication.auto-prefetch-enabled: ...
|
||||
spring.pulsar.client.authentication.athenz-conf-path: ...
|
||||
spring.pulsar.client.authentication.principal-header: ...
|
||||
spring.pulsar.client.authentication.role-header: ...
|
||||
spring.pulsar.client.authentication.zts-url: ...
|
||||
----
|
||||
====
|
||||
|
||||
[[Basic]]
|
||||
== Basic
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
spring.pulsar.client.auth-plugin-class-name: org.apache.pulsar.client.impl.auth.AuthenticationBasic
|
||||
spring.pulsar.client.authentication.user-id: ...
|
||||
spring.pulsar.client.authentication.password: ...
|
||||
----
|
||||
====
|
||||
|
||||
[[KeyStoreTls]]
|
||||
== KeyStoreTls
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
spring.pulsar.client.auth-plugin-class-name: org.apache.pulsar.client.impl.auth.AuthenticationKeyStoreTls
|
||||
spring.pulsar.client.authentication.key-store-type: ...
|
||||
spring.pulsar.client.authentication.key-store-path: ...
|
||||
spring.pulsar.client.authentication.key-store-password: ...
|
||||
----
|
||||
====
|
||||
|
||||
[[OAuth2]]
|
||||
== OAuth2
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
spring.pulsar.client.auth-plugin-class-name: ...
|
||||
spring.pulsar.client.authentication.issuer-url: ...
|
||||
spring.pulsar.client.authentication.private-key: ...
|
||||
spring.pulsar.client.authentication.audience: ...
|
||||
spring.pulsar.client.authentication.scope: ...
|
||||
----
|
||||
====
|
||||
|
||||
[[Sasl]]
|
||||
== Sasl
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
spring.pulsar.client.auth-plugin-class-name: org.apache.pulsar.client.impl.auth.AuthenticationSasl
|
||||
spring.pulsar.client.authentication.sasl-jaas-client-section-name: ...
|
||||
spring.pulsar.client.authentication.server-type: ...
|
||||
----
|
||||
====
|
||||
|
||||
[[Tls]]
|
||||
== Tls
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
spring.pulsar.client.auth-plugin-class-name: org.apache.pulsar.client.impl.auth.AuthenticationTls
|
||||
spring.pulsar.client.authentication.tls-cert-file: ...
|
||||
spring.pulsar.client.authentication.tls-key-file: ...
|
||||
----
|
||||
====
|
||||
|
||||
[[Token]]
|
||||
== Token
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
spring.pulsar.client.auth-plugin-class-name: org.apache.pulsar.client.impl.auth.AuthenticationToken
|
||||
spring.pulsar.client.authentication.token: ...
|
||||
----
|
||||
====
|
||||
@@ -19,6 +19,40 @@ This is done through a factory bean called `PulsarClientFactoryBean`, which take
|
||||
include::application-properties/pulsar-client.adoc[lines=3..-1]
|
||||
====
|
||||
|
||||
To connect against a Pulsar cluster requiring authentication, you need to set the `authPluginClassName` and parameters for your authentication scheme.
|
||||
To set the authentication parameters you can either pass them as a json-encoded string or as a nested map. Please see the examples below for each option:
|
||||
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
# using json-encoded string
|
||||
spring:
|
||||
pulsar:
|
||||
client:
|
||||
auth-plugin-class-name: org.apache.pulsar.client.impl.auth.oauth2.AuthenticationOAuth2
|
||||
auth-params: "{\"privateKey\":\"file:///Users/some-key.json\",\"issuerUrl\":\"https://auth.server.cloud/", \"audience\":\"urn:sn:acme:dev:my-instance"}"
|
||||
----
|
||||
====
|
||||
|
||||
====
|
||||
[source, yaml]
|
||||
----
|
||||
# using nested parameter map
|
||||
spring:
|
||||
pulsar:
|
||||
client:
|
||||
auth-plugin-class-name: org.apache.pulsar.client.impl.auth.oauth2.AuthenticationOAuth2
|
||||
authentication.issuer-url: https://auth.server.cloud/
|
||||
authentication.private-key: file:///Users/some-key.json
|
||||
authentication.audience: urn:sn:acme:dev:my-instance
|
||||
----
|
||||
====
|
||||
|
||||
.[.underline]#Click ##here## to view how to configure the different **authentication schemes**#.
|
||||
[%collapsible]
|
||||
====
|
||||
include::authentication.adoc[lines=3..-1]
|
||||
====
|
||||
|
||||
[[pulsar-producer]]
|
||||
==== Pulsar Producer
|
||||
|
||||
Reference in New Issue
Block a user