+++ /dev/null
-<?xml version="1.0" ?>
-<!--
- ~ ============LICENSE_START=======================================================
- ~ ONAP : ccsdk features
- ~ ================================================================================
- ~ Copyright (C) 2021 highstreet technologies GmbH Intellectual Property.
- ~ All rights reserved.
- ~ ================================================================================
- ~ Licensed 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.
- ~ ============LICENSE_END=======================================================
- ~
- -->
-
-<shiro-configuration xmlns="urn:opendaylight:aaa:app:config">
-
-
- <main>
- <pair-key>tokenAuthRealm</pair-key>
- <pair-value>org.onap.ccsdk.features.sdnr.wt.oauthprovider.OAuth2Realm</pair-value>
- </main>
-
- <main>
- <pair-key>securityManager.realms</pair-key>
- <pair-value>$tokenAuthRealm</pair-value>
- </main>
- <!-- Used to support OAuth2 use case. -->
- <main>
- <pair-key>authcBasic</pair-key>
- <pair-value>org.opendaylight.aaa.shiro.filters.ODLHttpAuthenticationFilter</pair-value>
- </main>
- <main>
- <pair-key>anyroles</pair-key>
- <pair-value>org.onap.ccsdk.features.sdnr.wt.oauthprovider.filters.AnyRoleHttpAuthenticationFilter</pair-value>
- </main>
- <main>
- <pair-key>authcBearer</pair-key>
- <pair-value>org.onap.ccsdk.features.sdnr.wt.oauthprovider.filters.BearerAndBasicHttpAuthenticationFilter</pair-value>
- </main>
-
- <!-- in order to track AAA challenge attempts -->
- <main>
- <pair-key>accountingListener</pair-key>
- <pair-value>org.opendaylight.aaa.shiro.filters.AuthenticationListener</pair-value>
- </main>
- <main>
- <pair-key>securityManager.authenticator.authenticationListeners</pair-key>
- <pair-value>$accountingListener</pair-value>
- </main>
-
- <!-- Model based authorization scheme supporting RBAC for REST endpoints -->
- <main>
- <pair-key>dynamicAuthorization</pair-key>
- <pair-value>org.opendaylight.aaa.shiro.realm.MDSALDynamicAuthorizationFilter</pair-value>
- </main>
-
-
- <urls>
- <pair-key>/**/operations/cluster-admin**</pair-key>
- <pair-value>authcBearer, roles[admin]</pair-value>
- </urls>
- <urls>
- <pair-key>/**/v1/**</pair-key>
- <pair-value>authcBearer, roles[admin]</pair-value>
- </urls>
- <!-- allow admin only access to write mdsal auth config -->
- <urls>
- <pair-key>/rests/**/aaa*/**</pair-key>
- <pair-value>authcBearer, roles[admin]</pair-value>
- </urls>
- <!-- anon access for login api -->
- <urls>
- <pair-key>/oauth/**</pair-key>
- <pair-value>anon</pair-value>
- </urls>
- <urls>
- <pair-key>/ready</pair-key>
- <pair-value>anon</pair-value>
- </urls>
- <!-- anon access for odlux ui -->
- <urls>
- <pair-key>/odlux/**</pair-key>
- <pair-value>anon</pair-value>
- </urls>
- <!-- admin only access for apidocs -->
- <urls>
- <pair-key>/apidoc/**</pair-key>
- <pair-value>authcBasic, roles[admin]</pair-value>
- </urls>
- <urls>
- <pair-key>/rests/**</pair-key>
- <pair-value>authcBearer, anyroles["admin,provision"]</pair-value>
- </urls>
- <!-- any other access with configured dynamic filter -->
- <urls>
- <pair-key>/**</pair-key>
- <pair-value>authcBearer, anyroles["admin,provision"]</pair-value>
- </urls>
-</shiro-configuration>