mirror of
https://repository.entgra.net/community/device-mgt-plugins.git
synced 2025-09-16 23:42:15 +00:00
fixing jira issue wso2/product-iots#1041
This commit is contained in:
parent
4b88aefe80
commit
b5a29faddf
@ -6,15 +6,11 @@
|
|||||||
"adminService":"%https.ip%",
|
"adminService":"%https.ip%",
|
||||||
"oauthProvider": {
|
"oauthProvider": {
|
||||||
"appRegistration": {
|
"appRegistration": {
|
||||||
"appType": "webapp",
|
"apiManagerClientAppRegistrationServiceURL": "%https.ip%/api-application-registration/register",
|
||||||
"clientName": "windows-web-agent",
|
"applicationName":"windows-web-agent",
|
||||||
"owner": "admin@carbon.super",
|
"tags":["windows"],
|
||||||
"dynamicClientAppRegistrationServiceURL": "%https.ip%/dynamic-client-web/register",
|
"isAllowedToAllDomains":false,
|
||||||
"apiManagerClientAppRegistrationServiceURL": "%https.ip%/api-application-registration/register/tenants",
|
"isMappingAnExistingOAuthApp":false
|
||||||
"grantType": "password refresh_token urn:ietf:params:oauth:grant-type:saml2-bearer",
|
|
||||||
"tokenScope": "admin",
|
|
||||||
"callbackUrl": "%https.ip%/api/device-mgt/v1.0",
|
|
||||||
"samlGrantTypeName": "urn:ietf:params:oauth:grant-type:saml2-bearer"
|
|
||||||
},
|
},
|
||||||
"tokenServiceURL": "%https.ip%/oauth2/token"
|
"tokenServiceURL": "%https.ip%/oauth2/token"
|
||||||
},
|
},
|
||||||
|
|||||||
@ -41,25 +41,24 @@ var utils = function () {
|
|||||||
return String(Base64.decodeBase64(String(payload).getBytes()));
|
return String(Base64.decodeBase64(String(payload).getBytes()));
|
||||||
};
|
};
|
||||||
|
|
||||||
publicMethods["getDynamicClientAppCredentials"] = function () {
|
publicMethods["getDynamicClientAppCredentials"] = function (username, password) {
|
||||||
// setting up dynamic client application properties
|
// setting up dynamic client application properties
|
||||||
var dcAppProperties = {
|
var dcAppProperties = {
|
||||||
"applicationType": deviceMgtProps["oauthProvider"]["appRegistration"]["appType"],
|
"applicationName": deviceMgtProps["oauthProvider"]["appRegistration"]["applicationName"],
|
||||||
"clientName": deviceMgtProps["oauthProvider"]["appRegistration"]["clientName"],
|
"tags": deviceMgtProps["oauthProvider"]["appRegistration"]["tags"],
|
||||||
"owner": deviceMgtProps["oauthProvider"]["appRegistration"]["owner"],
|
"isAllowedToAllDomains": deviceMgtProps["oauthProvider"]["appRegistration"]["isAllowedToAllDomains"],
|
||||||
"tokenScope": deviceMgtProps["oauthProvider"]["appRegistration"]["tokenScope"],
|
"isMappingAnExistingOAuthApp": deviceMgtProps["oauthProvider"]["appRegistration"]["isMappingAnExistingOAuthApp"]
|
||||||
"grantType": deviceMgtProps["oauthProvider"]["appRegistration"]["grantType"],
|
|
||||||
"callbackUrl": deviceMgtProps["oauthProvider"]["appRegistration"]["callbackUrl"],
|
|
||||||
"saasApp" : true
|
|
||||||
};
|
};
|
||||||
// calling dynamic client app registration service endpoint
|
// calling dynamic client app registration service endpoint
|
||||||
var requestURL = deviceMgtProps["oauthProvider"]["appRegistration"]
|
var requestURL = deviceMgtProps["oauthProvider"]["appRegistration"]
|
||||||
["dynamicClientAppRegistrationServiceURL"];
|
["dynamicClientAppRegistrationServiceURL"];
|
||||||
var requestPayload = dcAppProperties;
|
var requestPayload = dcAppProperties;
|
||||||
|
var encodedBasicOauth = publicMethods.encode(username + ":" + password);
|
||||||
|
|
||||||
var xhr = new XMLHttpRequest();
|
var xhr = new XMLHttpRequest();
|
||||||
xhr.open("POST", requestURL, false);
|
xhr.open("POST", requestURL, false);
|
||||||
xhr.setRequestHeader("Content-Type", "application/json");
|
xhr.setRequestHeader("Content-Type", "application/json");
|
||||||
|
xhr.setRequestHeader("Authorization","Basic "+ encodedBasicOauth);
|
||||||
xhr.send(stringify(requestPayload));
|
xhr.send(stringify(requestPayload));
|
||||||
|
|
||||||
var dynamicClientAppCredentials = {};
|
var dynamicClientAppCredentials = {};
|
||||||
|
|||||||
@ -38,7 +38,7 @@ var handlers = function () {
|
|||||||
"password grant type. Either username of logged in user, password or both are missing " +
|
"password grant type. Either username of logged in user, password or both are missing " +
|
||||||
"as input - setupTokenPairByPasswordGrantType(x, y)");
|
"as input - setupTokenPairByPasswordGrantType(x, y)");
|
||||||
} else {
|
} else {
|
||||||
privateMethods.setUpEncodedTenantBasedClientAppCredentials(username);
|
privateMethods.setUpEncodedTenantBasedClientAppCredentials(username, password);
|
||||||
var encodedClientAppCredentials = session.get(constants["ENCODED_TENANT_BASED_CLIENT_APP_CREDENTIALS"]);
|
var encodedClientAppCredentials = session.get(constants["ENCODED_TENANT_BASED_CLIENT_APP_CREDENTIALS"]);
|
||||||
if (!encodedClientAppCredentials) {
|
if (!encodedClientAppCredentials) {
|
||||||
throw new Error("{/app/modules/oauth/token-handlers.js} Could not set up access token pair by " +
|
throw new Error("{/app/modules/oauth/token-handlers.js} Could not set up access token pair by " +
|
||||||
@ -130,13 +130,13 @@ var handlers = function () {
|
|||||||
}
|
}
|
||||||
};
|
};
|
||||||
|
|
||||||
privateMethods["setUpEncodedTenantBasedClientAppCredentials"] = function (username) {
|
privateMethods["setUpEncodedTenantBasedClientAppCredentials"] = function (username, password) {
|
||||||
if (!username) {
|
if (!username) {
|
||||||
throw new Error("{/app/modules/oauth/token-handlers.js} Could not set up encoded tenant based " +
|
throw new Error("{/app/modules/oauth/token-handlers.js} Could not set up encoded tenant based " +
|
||||||
"client credentials to session context. No username of logged in user is found as " +
|
"client credentials to session context. No username of logged in user is found as " +
|
||||||
"input - setUpEncodedTenantBasedClientAppCredentials(x)");
|
"input - setUpEncodedTenantBasedClientAppCredentials(x)");
|
||||||
} else {
|
} else {
|
||||||
var dynamicClientAppCredentials = tokenUtil.getDynamicClientAppCredentials();
|
var dynamicClientAppCredentials = tokenUtil.getDynamicClientAppCredentials(username, password);
|
||||||
if (!dynamicClientAppCredentials) {
|
if (!dynamicClientAppCredentials) {
|
||||||
throw new Error("{/app/modules/oauth/token-handlers.js} Could not set up encoded tenant based " +
|
throw new Error("{/app/modules/oauth/token-handlers.js} Could not set up encoded tenant based " +
|
||||||
"client credentials to session context as the server is unable to obtain " +
|
"client credentials to session context as the server is unable to obtain " +
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user