mirror of
https://repository.entgra.net/community/device-mgt-core.git
synced 2025-10-06 02:01:45 +00:00
Merged changes
This commit is contained in:
commit
302eb3a8a9
@ -22,6 +22,7 @@ import org.apache.commons.logging.Log;
|
|||||||
import org.apache.commons.logging.LogFactory;
|
import org.apache.commons.logging.LogFactory;
|
||||||
import org.wso2.carbon.apimgt.api.APIManagementException;
|
import org.wso2.carbon.apimgt.api.APIManagementException;
|
||||||
import org.wso2.carbon.apimgt.api.APIProvider;
|
import org.wso2.carbon.apimgt.api.APIProvider;
|
||||||
|
import org.wso2.carbon.apimgt.api.FaultGatewaysException;
|
||||||
import org.wso2.carbon.apimgt.api.model.API;
|
import org.wso2.carbon.apimgt.api.model.API;
|
||||||
import org.wso2.carbon.apimgt.api.model.APIIdentifier;
|
import org.wso2.carbon.apimgt.api.model.APIIdentifier;
|
||||||
import org.wso2.carbon.apimgt.impl.APIManagerFactory;
|
import org.wso2.carbon.apimgt.impl.APIManagerFactory;
|
||||||
@ -48,10 +49,15 @@ public class APIPublisherServiceImpl implements APIPublisherService {
|
|||||||
log.info("Successfully published API '" + api.getId().getApiName() + "' with context '" +
|
log.info("Successfully published API '" + api.getId().getApiName() + "' with context '" +
|
||||||
api.getContext() + "' and version '" + api.getId().getVersion() + "'");
|
api.getContext() + "' and version '" + api.getId().getVersion() + "'");
|
||||||
} else {
|
} else {
|
||||||
|
try {
|
||||||
provider.updateAPI(api);
|
provider.updateAPI(api);
|
||||||
log.info("An API already exists with the name '" + api.getId().getApiName() + "', context '" +
|
log.info("An API already exists with the name '" + api.getId().getApiName() + "', context '" +
|
||||||
api.getContext() + "' and version '" + api.getId().getVersion() +
|
api.getContext() + "' and version '" + api.getId().getVersion() +
|
||||||
"'. Thus, the API config is updated");
|
"'. Thus, the API config is updated");
|
||||||
|
} catch (FaultGatewaysException e) {
|
||||||
|
throw new APIManagementException("Error occurred while updating API " + api.getId().getApiName() +
|
||||||
|
"' with context '" + api.getContext() + "' and version '" + api.getId().getVersion() + "'");
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
throw new APIManagementException("API provider configured for the given API configuration is null. " +
|
throw new APIManagementException("API provider configured for the given API configuration is null. " +
|
||||||
|
|||||||
@ -67,30 +67,31 @@
|
|||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-frontend-jaxws</artifactId>
|
<artifactId>cxf-rt-frontend-jaxws</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
|
<artifactId>cxf-rt-frontend-jaxrs</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-transports-http</artifactId>
|
<artifactId>cxf-rt-transports-http</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-bindings-soap</artifactId>
|
<artifactId>cxf-rt-bindings-soap</artifactId>
|
||||||
<version>2.6.1</version>
|
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-bindings-http</artifactId>
|
<artifactId>cxf-rt-bindings-http</artifactId>
|
||||||
<version>2.5.11</version>
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.apache.cxf</groupId>
|
<groupId>org.apache.cxf</groupId>
|
||||||
<artifactId>cxf-rt-rs-extension-providers</artifactId>
|
<artifactId>cxf-rt-rs-extension-providers</artifactId>
|
||||||
<version>2.6.1</version>
|
|
||||||
<scope>compile</scope>
|
<scope>compile</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
@ -102,10 +103,12 @@
|
|||||||
<artifactId>slf4j-api</artifactId>
|
<artifactId>slf4j-api</artifactId>
|
||||||
</exclusion>
|
</exclusion>
|
||||||
</exclusions>
|
</exclusions>
|
||||||
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
<dependency>
|
<dependency>
|
||||||
<groupId>org.testng</groupId>
|
<groupId>org.testng</groupId>
|
||||||
<artifactId>testng</artifactId>
|
<artifactId>testng</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
|
||||||
<!-- Device management core dependencies -->
|
<!-- Device management core dependencies -->
|
||||||
@ -143,6 +146,11 @@
|
|||||||
<groupId>org.codehaus.jackson</groupId>
|
<groupId>org.codehaus.jackson</groupId>
|
||||||
<artifactId>jackson-jaxrs</artifactId>
|
<artifactId>jackson-jaxrs</artifactId>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.gson</groupId>
|
||||||
|
<artifactId>gson</artifactId>
|
||||||
|
<scope>provided</scope>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
@ -47,7 +47,7 @@
|
|||||||
<Bundle-Name>${project.artifactId}</Bundle-Name>
|
<Bundle-Name>${project.artifactId}</Bundle-Name>
|
||||||
<Bundle-Version>${carbon.device.mgt.version}</Bundle-Version>
|
<Bundle-Version>${carbon.device.mgt.version}</Bundle-Version>
|
||||||
<Bundle-Description>Dynamic Client Registration Bundle</Bundle-Description>
|
<Bundle-Description>Dynamic Client Registration Bundle</Bundle-Description>
|
||||||
<Bundle-Activator>org.wso2.carbon.dynamic.client.registration.internal.DynamicClientRegistrationBundleActivator</Bundle-Activator>
|
<Bundle-Activator>org.wso2.carbon.dynamic.client.registration.internal.DynamicClientRegistrationServiceComponent</Bundle-Activator>
|
||||||
<Private-Package>org.wso2.carbon.dynamic.client.registration.internal</Private-Package>
|
<Private-Package>org.wso2.carbon.dynamic.client.registration.internal</Private-Package>
|
||||||
<Export-Package>
|
<Export-Package>
|
||||||
!org.wso2.carbon.dynamic.client.registration.internal,
|
!org.wso2.carbon.dynamic.client.registration.internal,
|
||||||
|
|||||||
@ -32,9 +32,10 @@ public interface DynamicClientRegistrationService {
|
|||||||
* @param profile - RegistrationProfile of the OAuth application to be created.
|
* @param profile - RegistrationProfile of the OAuth application to be created.
|
||||||
* @return OAuthApplicationInfo object which holds the necessary data of created OAuth app.
|
* @return OAuthApplicationInfo object which holds the necessary data of created OAuth app.
|
||||||
* @throws DynamicClientRegistrationException
|
* @throws DynamicClientRegistrationException
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
public OAuthApplicationInfo registerOAuthApplication(RegistrationProfile profile) throws
|
public OAuthApplicationInfo registerOAuthApplication(
|
||||||
DynamicClientRegistrationException;
|
RegistrationProfile profile) throws DynamicClientRegistrationException;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* This method will unregister a created OAuth application.
|
* This method will unregister a created OAuth application.
|
||||||
@ -44,6 +45,7 @@ public interface DynamicClientRegistrationService {
|
|||||||
* @param consumerKey - ConsumerKey of the OAuth application
|
* @param consumerKey - ConsumerKey of the OAuth application
|
||||||
* @return The status of the operation
|
* @return The status of the operation
|
||||||
* @throws DynamicClientRegistrationException
|
* @throws DynamicClientRegistrationException
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
public boolean unregisterOAuthApplication(String userName, String applicationName,
|
public boolean unregisterOAuthApplication(String userName, String applicationName,
|
||||||
String consumerKey) throws DynamicClientRegistrationException;
|
String consumerKey) throws DynamicClientRegistrationException;
|
||||||
@ -54,8 +56,8 @@ public interface DynamicClientRegistrationService {
|
|||||||
* @param applicationName - OAuth application name
|
* @param applicationName - OAuth application name
|
||||||
* @return The status of the operation
|
* @return The status of the operation
|
||||||
* @throws DynamicClientRegistrationException
|
* @throws DynamicClientRegistrationException
|
||||||
|
*
|
||||||
*/
|
*/
|
||||||
public boolean isOAuthApplicationExists(String applicationName)
|
public boolean isOAuthApplicationExists(String applicationName) throws DynamicClientRegistrationException;
|
||||||
throws DynamicClientRegistrationException;
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,40 @@
|
|||||||
|
/*
|
||||||
|
* Copyright (c) 2015, WSO2 Inc. (http://www.wso2.org) All Rights Reserved.
|
||||||
|
*
|
||||||
|
* WSO2 Inc. 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.
|
||||||
|
*/
|
||||||
|
package org.wso2.carbon.dynamic.client.registration;
|
||||||
|
|
||||||
|
public class DynamicClientRegistrationUtil {
|
||||||
|
|
||||||
|
public static void validateUsername(String username) {
|
||||||
|
if (username == null || username.isEmpty()) {
|
||||||
|
throw new IllegalArgumentException("Username cannot be null or empty");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void validateApplicationName(String applicationName) {
|
||||||
|
if (applicationName == null || applicationName.isEmpty()) {
|
||||||
|
throw new IllegalArgumentException("Application name cannot be null or empty");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void validateConsumerKey(String consumerKey) {
|
||||||
|
if (consumerKey == null || consumerKey.isEmpty()) {
|
||||||
|
throw new IllegalArgumentException("Consumer Key cannot be null or empty");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@ -15,7 +15,6 @@
|
|||||||
* specific language governing permissions and limitations
|
* specific language governing permissions and limitations
|
||||||
* under the License.
|
* under the License.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
package org.wso2.carbon.dynamic.client.registration.impl;
|
package org.wso2.carbon.dynamic.client.registration.impl;
|
||||||
|
|
||||||
import org.apache.commons.logging.Log;
|
import org.apache.commons.logging.Log;
|
||||||
@ -25,21 +24,13 @@ import org.json.JSONObject;
|
|||||||
import org.wso2.carbon.context.CarbonContext;
|
import org.wso2.carbon.context.CarbonContext;
|
||||||
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
import org.wso2.carbon.context.PrivilegedCarbonContext;
|
||||||
import org.wso2.carbon.context.RegistryType;
|
import org.wso2.carbon.context.RegistryType;
|
||||||
import org.wso2.carbon.dynamic.client.registration.ApplicationConstants;
|
import org.wso2.carbon.dynamic.client.registration.*;
|
||||||
import org.wso2.carbon.dynamic.client.registration.DynamicClientRegistrationException;
|
|
||||||
import org.wso2.carbon.dynamic.client.registration.DynamicClientRegistrationService;
|
|
||||||
import org.wso2.carbon.dynamic.client.registration.OAuthApplicationInfo;
|
|
||||||
import org.wso2.carbon.dynamic.client.registration.profile.RegistrationProfile;
|
import org.wso2.carbon.dynamic.client.registration.profile.RegistrationProfile;
|
||||||
import org.wso2.carbon.identity.application.common.IdentityApplicationManagementException;
|
import org.wso2.carbon.identity.application.common.IdentityApplicationManagementException;
|
||||||
import org.wso2.carbon.identity.application.common.model.AuthenticationStep;
|
import org.wso2.carbon.identity.application.common.model.*;
|
||||||
import org.wso2.carbon.identity.application.common.model.InboundAuthenticationConfig;
|
|
||||||
import org.wso2.carbon.identity.application.common.model.InboundAuthenticationRequestConfig;
|
|
||||||
import org.wso2.carbon.identity.application.common.model.LocalAndOutboundAuthenticationConfig;
|
|
||||||
import org.wso2.carbon.identity.application.common.model.LocalAuthenticatorConfig;
|
|
||||||
import org.wso2.carbon.identity.application.common.model.Property;
|
|
||||||
import org.wso2.carbon.identity.application.common.model.ServiceProvider;
|
|
||||||
import org.wso2.carbon.identity.application.mgt.ApplicationManagementService;
|
import org.wso2.carbon.identity.application.mgt.ApplicationManagementService;
|
||||||
import org.wso2.carbon.identity.base.IdentityException;
|
import org.wso2.carbon.identity.base.IdentityException;
|
||||||
|
import org.wso2.carbon.identity.oauth.IdentityOAuthAdminException;
|
||||||
import org.wso2.carbon.identity.oauth.OAuthAdminService;
|
import org.wso2.carbon.identity.oauth.OAuthAdminService;
|
||||||
import org.wso2.carbon.identity.oauth.dto.OAuthConsumerAppDTO;
|
import org.wso2.carbon.identity.oauth.dto.OAuthConsumerAppDTO;
|
||||||
import org.wso2.carbon.identity.sso.saml.admin.SAMLSSOConfigAdmin;
|
import org.wso2.carbon.identity.sso.saml.admin.SAMLSSOConfigAdmin;
|
||||||
@ -155,6 +146,10 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
// Create the Service Provider
|
// Create the Service Provider
|
||||||
ServiceProvider serviceProvider = new ServiceProvider();
|
ServiceProvider serviceProvider = new ServiceProvider();
|
||||||
serviceProvider.setApplicationName(applicationName);
|
serviceProvider.setApplicationName(applicationName);
|
||||||
|
User user = new User();
|
||||||
|
user.setUserName(userName);
|
||||||
|
user.setTenantDomain(tenantDomain);
|
||||||
|
serviceProvider.setOwner(user);
|
||||||
|
|
||||||
serviceProvider.setDescription("Service Provider for application " + applicationName);
|
serviceProvider.setDescription("Service Provider for application " + applicationName);
|
||||||
|
|
||||||
@ -181,16 +176,16 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
// Then Create OAuthApp
|
// Then Create OAuthApp
|
||||||
OAuthAdminService oAuthAdminService = new OAuthAdminService();
|
OAuthAdminService oAuthAdminService = new OAuthAdminService();
|
||||||
|
|
||||||
OAuthConsumerAppDTO oAuthConsumerAppDTO = new OAuthConsumerAppDTO();
|
OAuthConsumerAppDTO oAuthConsumerApp = new OAuthConsumerAppDTO();
|
||||||
oAuthConsumerAppDTO.setApplicationName(applicationName);
|
oAuthConsumerApp.setApplicationName(applicationName);
|
||||||
oAuthConsumerAppDTO.setCallbackUrl(callbackUrl);
|
oAuthConsumerApp.setCallbackUrl(callbackUrl);
|
||||||
oAuthConsumerAppDTO.setGrantTypes(grantType);
|
oAuthConsumerApp.setGrantTypes(grantType);
|
||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Creating OAuth App " + applicationName);
|
log.debug("Creating OAuth App " + applicationName);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (existingServiceProvider == null) {
|
if (existingServiceProvider == null) {
|
||||||
oAuthAdminService.registerOAuthApplicationData(oAuthConsumerAppDTO);
|
oAuthAdminService.registerOAuthApplicationData(oAuthConsumerApp);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
@ -198,8 +193,7 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
}
|
}
|
||||||
|
|
||||||
OAuthConsumerAppDTO createdApp =
|
OAuthConsumerAppDTO createdApp =
|
||||||
oAuthAdminService.getOAuthApplicationDataByAppName(oAuthConsumerAppDTO
|
oAuthAdminService.getOAuthApplicationDataByAppName(oAuthConsumerApp.getApplicationName());
|
||||||
.getApplicationName());
|
|
||||||
if (log.isDebugEnabled()) {
|
if (log.isDebugEnabled()) {
|
||||||
log.debug("Retrieved Details for OAuth App " + createdApp.getApplicationName());
|
log.debug("Retrieved Details for OAuth App " + createdApp.getApplicationName());
|
||||||
}
|
}
|
||||||
@ -295,8 +289,11 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean unregisterOAuthApplication(String userId, String applicationName,
|
public boolean unregisterOAuthApplication(String userId, String applicationName,
|
||||||
String consumerKey)
|
String consumerKey) throws DynamicClientRegistrationException {
|
||||||
throws DynamicClientRegistrationException {
|
DynamicClientRegistrationUtil.validateUsername(userId);
|
||||||
|
DynamicClientRegistrationUtil.validateApplicationName(applicationName);
|
||||||
|
DynamicClientRegistrationUtil.validateConsumerKey(consumerKey);
|
||||||
|
|
||||||
boolean status = false;
|
boolean status = false;
|
||||||
String tenantDomain = MultitenantUtils.getTenantDomain(userId);
|
String tenantDomain = MultitenantUtils.getTenantDomain(userId);
|
||||||
String baseUser = CarbonContext.getThreadLocalCarbonContext().getUsername();
|
String baseUser = CarbonContext.getThreadLocalCarbonContext().getUsername();
|
||||||
@ -306,21 +303,23 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(tenantDomain, true);
|
PrivilegedCarbonContext.getThreadLocalCarbonContext().setTenantDomain(tenantDomain, true);
|
||||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername(userName);
|
PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername(userName);
|
||||||
|
|
||||||
if (userId == null || userId.isEmpty()) {
|
OAuthAdminService oAuthAdminService;
|
||||||
throw new DynamicClientRegistrationException(
|
OAuthConsumerAppDTO oAuthConsumerApp;
|
||||||
"Error occurred while unregistering Application: userId cannot " +
|
|
||||||
"be null/empty");
|
|
||||||
}
|
|
||||||
try {
|
try {
|
||||||
OAuthAdminService oAuthAdminService = new OAuthAdminService();
|
oAuthAdminService = new OAuthAdminService();
|
||||||
OAuthConsumerAppDTO oAuthConsumerAppDTO =
|
oAuthConsumerApp = oAuthAdminService.getOAuthApplicationData(consumerKey);
|
||||||
oAuthAdminService.getOAuthApplicationData(consumerKey);
|
} catch (IdentityOAuthAdminException e) {
|
||||||
|
throw new DynamicClientRegistrationException("Error occurred while retrieving application data", e);
|
||||||
if (oAuthConsumerAppDTO == null) {
|
} catch (Exception e) {
|
||||||
throw new DynamicClientRegistrationException(
|
throw new DynamicClientRegistrationException("Error occurred while retrieving application data", e);
|
||||||
"Couldn't retrieve OAuth Consumer Application associated with the " +
|
|
||||||
"given consumer key: " + consumerKey);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (oAuthConsumerApp == null) {
|
||||||
|
throw new DynamicClientRegistrationException(
|
||||||
|
"No OAuth Consumer Application is associated with the given consumer key: " + consumerKey);
|
||||||
|
}
|
||||||
|
|
||||||
|
try {
|
||||||
oAuthAdminService.removeOAuthApplicationData(consumerKey);
|
oAuthAdminService.removeOAuthApplicationData(consumerKey);
|
||||||
|
|
||||||
ApplicationManagementService appMgtService = ApplicationManagementService.getInstance();
|
ApplicationManagementService appMgtService = ApplicationManagementService.getInstance();
|
||||||
@ -331,7 +330,6 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
"Service");
|
"Service");
|
||||||
}
|
}
|
||||||
ServiceProvider createdServiceProvider = appMgtService.getApplication(applicationName);
|
ServiceProvider createdServiceProvider = appMgtService.getApplication(applicationName);
|
||||||
|
|
||||||
if (createdServiceProvider == null) {
|
if (createdServiceProvider == null) {
|
||||||
throw new DynamicClientRegistrationException(
|
throw new DynamicClientRegistrationException(
|
||||||
"Couldn't retrieve Service Provider Application " + applicationName);
|
"Couldn't retrieve Service Provider Application " + applicationName);
|
||||||
@ -340,10 +338,13 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
status = true;
|
status = true;
|
||||||
} catch (IdentityApplicationManagementException e) {
|
} catch (IdentityApplicationManagementException e) {
|
||||||
throw new DynamicClientRegistrationException(
|
throw new DynamicClientRegistrationException(
|
||||||
"Error occurred while removing ServiceProvider for app " + applicationName, e);
|
"Error occurred while removing ServiceProvider for application '" + applicationName + "'", e);
|
||||||
|
} catch (IdentityOAuthAdminException e) {
|
||||||
|
throw new DynamicClientRegistrationException("Error occurred while removing application '" +
|
||||||
|
applicationName + "'", e);
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
throw new DynamicClientRegistrationException(
|
throw new DynamicClientRegistrationException("Error occurred while removing application '" +
|
||||||
"Error occurred while removing OAuthApp " + applicationName, e);
|
applicationName + "'", e);
|
||||||
} finally {
|
} finally {
|
||||||
PrivilegedCarbonContext.endTenantFlow();
|
PrivilegedCarbonContext.endTenantFlow();
|
||||||
PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername(baseUser);
|
PrivilegedCarbonContext.getThreadLocalCarbonContext().setUsername(baseUser);
|
||||||
@ -352,8 +353,7 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean isOAuthApplicationExists(String applicationName)
|
public boolean isOAuthApplicationExists(String applicationName) throws DynamicClientRegistrationException {
|
||||||
throws DynamicClientRegistrationException {
|
|
||||||
ApplicationManagementService appMgtService = ApplicationManagementService.getInstance();
|
ApplicationManagementService appMgtService = ApplicationManagementService.getInstance();
|
||||||
if (appMgtService == null) {
|
if (appMgtService == null) {
|
||||||
throw new IllegalStateException(
|
throw new IllegalStateException(
|
||||||
@ -361,14 +361,14 @@ public class DynamicClientRegistrationImpl implements DynamicClientRegistrationS
|
|||||||
"Service");
|
"Service");
|
||||||
}
|
}
|
||||||
try {
|
try {
|
||||||
if (appMgtService.getApplication(applicationName) != null) {
|
if (ApplicationManagementService.getInstance().getApplication(applicationName) != null) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
} catch (IdentityApplicationManagementException e) {
|
} catch (IdentityApplicationManagementException e) {
|
||||||
throw new DynamicClientRegistrationException(
|
throw new DynamicClientRegistrationException(
|
||||||
"Error occurred while retrieving information of OAuthApp " + applicationName,
|
"Error occurred while retrieving information of OAuthApp " + applicationName, e);
|
||||||
e);
|
|
||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -70,8 +70,8 @@ public class ScopeValidator extends OAuth2ScopeValidator {
|
|||||||
getPermissionManagerService();
|
getPermissionManagerService();
|
||||||
try {
|
try {
|
||||||
Permission permission = permissionManagerService.getPermission(properties);
|
Permission permission = permissionManagerService.getPermission(properties);
|
||||||
if(permission != null){
|
if((permission != null) && (accessTokenDO.getAuthzUser() != null)) {
|
||||||
String username = accessTokenDO.getAuthzUser();
|
String username = accessTokenDO.getAuthzUser().getUserName();
|
||||||
UserRealm userRealm = CarbonContext.getThreadLocalCarbonContext().getUserRealm();
|
UserRealm userRealm = CarbonContext.getThreadLocalCarbonContext().getUserRealm();
|
||||||
if(userRealm != null && userRealm.getAuthorizationManager() != null){
|
if(userRealm != null && userRealm.getAuthorizationManager() != null){
|
||||||
status = userRealm.getAuthorizationManager().isUserAuthorized(username, permission.getPath(),
|
status = userRealm.getAuthorizationManager().isUserAuthorized(username, permission.getPath(),
|
||||||
|
|||||||
@ -31,14 +31,12 @@ import org.wso2.carbon.webapp.authenticator.framework.DataHolder;
|
|||||||
import org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticationHandler;
|
import org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticationHandler;
|
||||||
import org.wso2.carbon.webapp.authenticator.framework.authenticator.WebappAuthenticator;
|
import org.wso2.carbon.webapp.authenticator.framework.authenticator.WebappAuthenticator;
|
||||||
import org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticatorRepository;
|
import org.wso2.carbon.webapp.authenticator.framework.WebappAuthenticatorRepository;
|
||||||
import org.wso2.carbon.webapp.authenticator.framework.authorizer.PermissionAuthorizationValve;
|
|
||||||
import org.wso2.carbon.webapp.authenticator.framework.config.AuthenticatorConfig;
|
import org.wso2.carbon.webapp.authenticator.framework.config.AuthenticatorConfig;
|
||||||
import org.wso2.carbon.webapp.authenticator.framework.config.WebappAuthenticatorConfig;
|
import org.wso2.carbon.webapp.authenticator.framework.config.WebappAuthenticatorConfig;
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* @scr.component name="org.wso2.carbon.webapp.authenticator" immediate="true"
|
* @scr.component name="org.wso2.carbon.webapp.authenticator" immediate="true"
|
||||||
* @scr.reference name="user.realmservice.default"
|
* @scr.reference name="user.realmservice.default"
|
||||||
|
|||||||
30
pom.xml
30
pom.xml
@ -17,8 +17,7 @@
|
|||||||
~ under the License.
|
~ under the License.
|
||||||
-->
|
-->
|
||||||
|
|
||||||
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
||||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
|
||||||
|
|
||||||
<modelVersion>4.0.0</modelVersion>
|
<modelVersion>4.0.0</modelVersion>
|
||||||
@ -1019,13 +1018,17 @@
|
|||||||
<artifactId>json</artifactId>
|
<artifactId>json</artifactId>
|
||||||
<version>${json.wso2.version}</version>
|
<version>${json.wso2.version}</version>
|
||||||
</dependency>
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.google.code.gson</groupId>
|
||||||
|
<artifactId>gson</artifactId>
|
||||||
|
<version>${google.gson.version}</version>
|
||||||
|
</dependency>
|
||||||
</dependencies>
|
</dependencies>
|
||||||
</dependencyManagement>
|
</dependencyManagement>
|
||||||
|
|
||||||
<scm>
|
<scm>
|
||||||
<url>https://github.com/wso2/carbon-device-mgt.git</url>
|
<url>https://github.com/wso2/carbon-device-mgt.git</url>
|
||||||
<developerConnection>scm:git:https://github.com/wso2/carbon-device-mgt.git
|
<developerConnection>scm:git:https://github.com/wso2/carbon-device-mgt.git</developerConnection>
|
||||||
</developerConnection>
|
|
||||||
<connection>scm:git:https://github.com/wso2/carbon-device-mgt.git</connection>
|
<connection>scm:git:https://github.com/wso2/carbon-device-mgt.git</connection>
|
||||||
<tag>HEAD</tag>
|
<tag>HEAD</tag>
|
||||||
</scm>
|
</scm>
|
||||||
@ -1212,7 +1215,7 @@
|
|||||||
|
|
||||||
<properties>
|
<properties>
|
||||||
<testng.version>6.1.1</testng.version>
|
<testng.version>6.1.1</testng.version>
|
||||||
<carbon.kernel.version>4.4.0</carbon.kernel.version>
|
<carbon.kernel.version>4.4.1</carbon.kernel.version>
|
||||||
<carbon.p2.plugin.version>1.5.4</carbon.p2.plugin.version>
|
<carbon.p2.plugin.version>1.5.4</carbon.p2.plugin.version>
|
||||||
<maven-buildnumber-plugin.version>1.3</maven-buildnumber-plugin.version>
|
<maven-buildnumber-plugin.version>1.3</maven-buildnumber-plugin.version>
|
||||||
|
|
||||||
@ -1225,7 +1228,7 @@
|
|||||||
<carbon.p2.plugin.version>1.5.4</carbon.p2.plugin.version>
|
<carbon.p2.plugin.version>1.5.4</carbon.p2.plugin.version>
|
||||||
|
|
||||||
<!-- Jaggery -->
|
<!-- Jaggery -->
|
||||||
<jaggery.version>0.10.0</jaggery.version>
|
<jaggery.version>0.10.2</jaggery.version>
|
||||||
<jaggery.extensions.version>1.3.0</jaggery.extensions.version>
|
<jaggery.extensions.version>1.3.0</jaggery.extensions.version>
|
||||||
<jaggery.extensions.sso.version>1.3.0</jaggery.extensions.sso.version>
|
<jaggery.extensions.sso.version>1.3.0</jaggery.extensions.sso.version>
|
||||||
<jaggery.extensions.carbon.version>1.3.0</jaggery.extensions.carbon.version>
|
<jaggery.extensions.carbon.version>1.3.0</jaggery.extensions.carbon.version>
|
||||||
@ -1249,19 +1252,19 @@
|
|||||||
<tomcat.jdbc.pooling.version>7.0.34.wso2v2</tomcat.jdbc.pooling.version>
|
<tomcat.jdbc.pooling.version>7.0.34.wso2v2</tomcat.jdbc.pooling.version>
|
||||||
|
|
||||||
<!-- Carbon Deployment -->
|
<!-- Carbon Deployment -->
|
||||||
<carbon.deployment.version>4.4.0</carbon.deployment.version>
|
<carbon.deployment.version>4.5.2</carbon.deployment.version>
|
||||||
|
|
||||||
<!-- Carbon Identity -->
|
<!-- Carbon Identity -->
|
||||||
<carbon.identity.version>4.4.0</carbon.identity.version>
|
<carbon.identity.version>4.6.0-M2</carbon.identity.version>
|
||||||
|
|
||||||
<!-- Carbon Multi-tenancy -->
|
<!-- Carbon Multi-tenancy -->
|
||||||
<carbon.multitenancy.version>4.4.0</carbon.multitenancy.version>
|
<carbon.multitenancy.version>4.5.0-m1</carbon.multitenancy.version>
|
||||||
|
|
||||||
<!-- Carbon Registry -->
|
<!-- Carbon Registry -->
|
||||||
<carbon.registry.version>4.4.1</carbon.registry.version>
|
<carbon.registry.version>4.4.8</carbon.registry.version>
|
||||||
|
|
||||||
<!-- Carbon Governance -->
|
<!-- Carbon Governance -->
|
||||||
<carbon.governance.version>4.4.1</carbon.governance.version>
|
<carbon.governance.version>4.5.8</carbon.governance.version>
|
||||||
|
|
||||||
<!-- Axiom -->
|
<!-- Axiom -->
|
||||||
<axiom.version>1.2.11-wso2v5</axiom.version>
|
<axiom.version>1.2.11-wso2v5</axiom.version>
|
||||||
@ -1272,13 +1275,13 @@
|
|||||||
<carbon.device.mgt.version>0.9.2-SNAPSHOT</carbon.device.mgt.version>
|
<carbon.device.mgt.version>0.9.2-SNAPSHOT</carbon.device.mgt.version>
|
||||||
|
|
||||||
<!-- Carbon Commons -->
|
<!-- Carbon Commons -->
|
||||||
<carbon.commons.version>4.4.0</carbon.commons.version>
|
<carbon.commons.version>4.4.7</carbon.commons.version>
|
||||||
<version.commons.codec>1.4.0.wso2v1</version.commons.codec>
|
<version.commons.codec>1.4.0.wso2v1</version.commons.codec>
|
||||||
<version.commons.io>2.4.0.wso2v1</version.commons.io>
|
<version.commons.io>2.4.0.wso2v1</version.commons.io>
|
||||||
<version.commons.lang>2.6.0.wso2v1</version.commons.lang>
|
<version.commons.lang>2.6.0.wso2v1</version.commons.lang>
|
||||||
|
|
||||||
<!-- Carbon API Management -->
|
<!-- Carbon API Management -->
|
||||||
<carbon.api.mgt.version>1.4.0</carbon.api.mgt.version>
|
<carbon.api.mgt.version>4.3.0-SNAPSHOT</carbon.api.mgt.version>
|
||||||
|
|
||||||
<!--CXF properties-->
|
<!--CXF properties-->
|
||||||
<cxf.version>2.6.1</cxf.version>
|
<cxf.version>2.6.1</cxf.version>
|
||||||
@ -1300,6 +1303,7 @@
|
|||||||
<nimbus.orbit.version>2.26.1.wso2v3</nimbus.orbit.version>
|
<nimbus.orbit.version>2.26.1.wso2v3</nimbus.orbit.version>
|
||||||
|
|
||||||
<json.wso2.version>2.0.0.wso2v1</json.wso2.version>
|
<json.wso2.version>2.0.0.wso2v1</json.wso2.version>
|
||||||
|
<google.gson.version>2.3.1</google.gson.version>
|
||||||
</properties>
|
</properties>
|
||||||
|
|
||||||
</project>
|
</project>
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user