= Apache TomEE and security
:index-group: Configuration
:jbake-date: 2018-12-05
:jbake-type: page
:jbake-status: published

NOTE: Licensed to the Apache Software Foundation
(ASF) under one or more contributor license agreements. See the NOTICE
file distributed with this work for additional information regarding
copyright ownership. The ASF licenses this file to you under the Apache
License, Version 2.0 (the "License"); you may not use this file except
in compliance with the License. You may obtain a copy of the License at
. http://www.apache.org/licenses/LICENSE-2.0 . Unless required by
applicable law or agreed to in writing, software distributed under the
License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR
CONDITIONS OF ANY KIND, either express or implied. See the License for
the specific language governing permissions and limitations under the
License.

Rather than providing its own security implementation, TomEE makes full
use of the security features that are part of Tomcat. Any Catalina realm
is supported, or you can provide your own security module using the
login.config file.

For example, to add some simple security to the
https://github.com/apache/tomee/tree/main/examples/moviefun[moviefun
application] , all we would need to do is:

[arabic]
. Add some users to the tomcat-users.xml file +
. Add the necessary `@DefineRoles` and `@RolesAllowed` annotations on
MoviesImpl +
. Add some security config to do HTTP Basic authentication to `web.xml`
Webservice security is also looked after – username/password based
security (HTTP basic, or WS-Security) uses the same Tomcat security.
Certificate based security is also available.

To put it short,

* TomEE uses Tomcat's Security Realm
* ....
Extra TomEE layer adds support for JAAS JACC WS Security
[source,java]
----
* ....
Supports any org.apache.catalina.Realm implementation
----
* ....
E.g. add users to $CATALINA_BASE/conf/tomcat-users.xml
[source,java]
----
* ....
Alternatively use login.config to provide your own security module
----

== See Also: link:tomee-jaas.html[TomEE-and-JAAS]
