made it accept tenant domain as parameter

revert-70aa11f8
ayyoob 8 years ago
parent b7566f4e4a
commit ed7b67dd24

@ -25,6 +25,7 @@ import org.wso2.carbon.base.MultitenantConstants;
import org.wso2.carbon.identity.application.authentication.framework.model.AuthenticatedUser; import org.wso2.carbon.identity.application.authentication.framework.model.AuthenticatedUser;
import org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception; import org.wso2.carbon.identity.oauth2.IdentityOAuth2Exception;
import org.wso2.carbon.identity.oauth2.grant.jwt.JWTBearerGrantHandler; import org.wso2.carbon.identity.oauth2.grant.jwt.JWTBearerGrantHandler;
import org.wso2.carbon.identity.oauth2.model.RequestParameter;
import org.wso2.carbon.identity.oauth2.token.OAuthTokenReqMessageContext; import org.wso2.carbon.identity.oauth2.token.OAuthTokenReqMessageContext;
import org.wso2.carbon.utils.multitenancy.MultitenantUtils; import org.wso2.carbon.utils.multitenancy.MultitenantUtils;
@ -34,6 +35,7 @@ import org.wso2.carbon.utils.multitenancy.MultitenantUtils;
@SuppressWarnings("unused") @SuppressWarnings("unused")
public class ExtendedJWTGrantHandler extends JWTBearerGrantHandler { public class ExtendedJWTGrantHandler extends JWTBearerGrantHandler {
private static Log log = LogFactory.getLog(ExtendedJWTGrantHandler.class); private static Log log = LogFactory.getLog(ExtendedJWTGrantHandler.class);
private static final String TENANT_DOMAIN_KEY = "tenantDomain";
@Override @Override
public boolean validateScope(OAuthTokenReqMessageContext tokReqMsgCtx) { public boolean validateScope(OAuthTokenReqMessageContext tokReqMsgCtx) {
@ -42,10 +44,18 @@ public class ExtendedJWTGrantHandler extends JWTBearerGrantHandler {
@Override @Override
public boolean validateGrant(OAuthTokenReqMessageContext tokReqMsgCtx) throws IdentityOAuth2Exception { public boolean validateGrant(OAuthTokenReqMessageContext tokReqMsgCtx) throws IdentityOAuth2Exception {
/**
* This is added to skip per tenant IDP creation. RequestParameter[] requestParameters = tokReqMsgCtx.getOauth2AccessTokenReqDTO().getRequestParameters();
*/ for (RequestParameter requestParameter : requestParameters) {
tokReqMsgCtx.getOauth2AccessTokenReqDTO().setTenantDomain(MultitenantConstants.SUPER_TENANT_DOMAIN_NAME); if (TENANT_DOMAIN_KEY.equals(requestParameter.getKey())) {
String[] values = requestParameter.getValue();
if (values != null && values.length > 0) {
tokReqMsgCtx.getOauth2AccessTokenReqDTO()
.setTenantDomain(values[0]);
}
}
}
return super.validateGrant(tokReqMsgCtx); return super.validateGrant(tokReqMsgCtx);
} }
} }

@ -19,7 +19,7 @@
#issuer of the JWT #issuer of the JWT
iss=wso2.org/products/iot iss=wso2.org/products/iot
TokenEndpoint=https://${iot.gateway.host}:${iot.gateway.https.port}/token TokenEndpoint=https://${iot.gateway.host}:${iot.gateway.https.port}/token?tenantDomain=carbon.super
#audience of JWT claim #audience of JWT claim
#comma seperated values #comma seperated values

Loading…
Cancel
Save