mirror of
https://github.com/apache/cloudstack.git
synced 2025-10-26 08:42:29 +01:00
bug 10090: encoded the endpoint as well as the username for the accounts in the register callback response
This commit is contained in:
parent
b449b1e408
commit
87b4b993c7
@ -18,6 +18,7 @@
|
|||||||
|
|
||||||
package com.cloud.servlet;
|
package com.cloud.servlet;
|
||||||
|
|
||||||
|
import java.net.URLEncoder;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
import javax.servlet.ServletContextEvent;
|
import javax.servlet.ServletContextEvent;
|
||||||
@ -86,6 +87,7 @@ public class RegisterCompleteServlet extends HttpServlet implements ServletConte
|
|||||||
statusCode = 503;
|
statusCode = 503;
|
||||||
responseMessage = "{ \"registration_info\" : { \"errorcode\" : \"503\", \"errortext\" : \"Missing token\" } }";
|
responseMessage = "{ \"registration_info\" : { \"errorcode\" : \"503\", \"errortext\" : \"Missing token\" } }";
|
||||||
} else {
|
} else {
|
||||||
|
s_logger.info("Attempting to register user account with token = "+registrationToken);
|
||||||
User resourceAdminUser = _accountSvc.getActiveUserByRegistrationToken(registrationToken);
|
User resourceAdminUser = _accountSvc.getActiveUserByRegistrationToken(registrationToken);
|
||||||
if (resourceAdminUser != null) {
|
if (resourceAdminUser != null) {
|
||||||
if(!resourceAdminUser.isRegistered()){
|
if(!resourceAdminUser.isRegistered()){
|
||||||
@ -101,12 +103,12 @@ public class RegisterCompleteServlet extends HttpServlet implements ServletConte
|
|||||||
Configuration config = _configDao.findByName("endpointe.url");
|
Configuration config = _configDao.findByName("endpointe.url");
|
||||||
|
|
||||||
StringBuffer sb = new StringBuffer();
|
StringBuffer sb = new StringBuffer();
|
||||||
sb.append("{ \"registration_info\" : { \"endpoint_url\" : \""+config.getValue()+"\", ");
|
sb.append("{ \"registration_info\" : { \"endpoint_url\" : \""+encodeParam(config.getValue())+"\", ");
|
||||||
sb.append("\"domain_id\" : \""+resourceAdminAccount.getDomainId()+"\", ");
|
sb.append("\"domain_id\" : \""+resourceAdminAccount.getDomainId()+"\", ");
|
||||||
sb.append("\"admin_account\" : \""+resourceAdminUser.getUsername()+"\", ");
|
sb.append("\"admin_account\" : \""+encodeParam(resourceAdminUser.getUsername())+"\", ");
|
||||||
sb.append("\"admin_account_api_key\" : \""+resourceAdminUser.getApiKey()+"\", ");
|
sb.append("\"admin_account_api_key\" : \""+resourceAdminUser.getApiKey()+"\", ");
|
||||||
sb.append("\"admin_account_secret_key\" : \""+resourceAdminUser.getSecretKey()+"\", ");
|
sb.append("\"admin_account_secret_key\" : \""+resourceAdminUser.getSecretKey()+"\", ");
|
||||||
sb.append("\"user_account\" : \""+rsUser.getUsername()+"\", ");
|
sb.append("\"user_account\" : \""+encodeParam(rsUser.getUsername())+"\", ");
|
||||||
sb.append("\"user_account_api_key\" : \""+rsUser.getApiKey()+"\", ");
|
sb.append("\"user_account_api_key\" : \""+rsUser.getApiKey()+"\", ");
|
||||||
sb.append("\"user_account_secret_key\" : \""+rsUser.getSecretKey()+"\" ");
|
sb.append("\"user_account_secret_key\" : \""+rsUser.getSecretKey()+"\" ");
|
||||||
sb.append("} }");
|
sb.append("} }");
|
||||||
@ -125,4 +127,13 @@ public class RegisterCompleteServlet extends HttpServlet implements ServletConte
|
|||||||
s_logger.error("unknown exception writing register complete response", ex);
|
s_logger.error("unknown exception writing register complete response", ex);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
private String encodeParam(String value) {
|
||||||
|
try {
|
||||||
|
return URLEncoder.encode(value, "UTF-8").replaceAll("\\+", "%20");
|
||||||
|
} catch (Exception e) {
|
||||||
|
s_logger.warn("Unable to encode: " + value);
|
||||||
|
}
|
||||||
|
return value;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user