blob: d7001708ee0042c459143d704fdc583bd097e663 [file] [log] [blame]
[[elytron-component]]
= Undertow Elytron Security Provider
//THIS FILE IS COPIED: EDIT THE SOURCE FILE:
:page-source: components/camel-elytron/src/main/docs/elytron-component.adoc
//by hand
:since: 3.2
*Since Camel {since}*
*Replaces component camel-elytron*
*OSGi is not supported*
The Elytron Security Provider provides Elytron security over camel-undertow component.
It enables camel-undertow component use Elytron security capabilities.
To force camel-undertow to use elytron security provider, add elytron security provider library
on classpath and provide instance of ElytronSercurityConfiguration as `securityConfiguration`
parameter into camel-undertow component or provide both `securityConfiguration` and `securityProvider`
into camel-undertow component.
Configuration has to provide all 3 security attributes:
[width="100%"]
|===
| Name | Description | Type
| *domainBuilder* | Builder for security domain. | SecurityDomain.Builder
| *mechanismName* | MechanismName should be selected with regard to default securityRealm. For
example: to use bearer_token security, mechanism name has to be "BEARER_TOKEN" and realm has to be
TokenSecurityReal | String
| *elytronProvider* | Instance of WildFlyElytronBaseProvider ith respect of mechanismName | WildFlyElytronBaseProvider
|===
Each exchange created by Undertow endpoint with Elytron security contains header 'securityIdentity'
with current Elytron's security identity as value.
('org.wildfly.security.auth.server.SecurityIdentity') or is FORBIDDEN (status code 403)
Maven users will need to add the following dependency to their `pom.xml`
for this component:
[source,xml]
----
<dependency>
<groupId>org.apache.camel</groupId>
<artifactId>camel-elytron</artifactId>
<version>x.x.x</version>
<!-- use the same version as your Camel core version -->
</dependency>
----
== Other Elytron capabilities
This seurity provider contains only basic Elytron dependencies (without any transitive dependency
from org.wildfly.security:wildfly-elytron).
Ignored libraries should be added among application's dependencies for their usage.