WSO2身份验证证书

时间:2015-06-22 12:15:24

标签: authentication wso2 authorization wso2esb wso2cep

是否可以使用身份验证证书连接到WSO2(CEP)管理服务?

https://localhost:9443/services/UserAdmin?wsdl

如果是,那该怎么做?

1 个答案:

答案 0 :(得分:1)

访问管理服务API对于所有WSO2产品都是通用的。您必须使用产品使用的公共证书才能在SSL上进行通信。

您可以参考以下示例

import org.wso2.carbon.authenticator.stub.LoginAuthenticationExceptionException;  
import org.wso2.carbon.authenticator.stub.LogoutAuthenticationExceptionException;  
import org.wso2.carbon.service.mgt.stub.types.carbon.ServiceMetaData;  
import org.wso2.carbon.service.mgt.stub.types.carbon.ServiceMetaDataWrapper;  

import java.rmi.RemoteException;  

public class ListServices {  
  public static void main(String[] args)  
      throws RemoteException, LoginAuthenticationExceptionException,  
          LogoutAuthenticationExceptionException {  
    System.setProperty("javax.net.ssl.trustStore", "$CEP_HOME/repository/resources/security/wso2carbon.jks");  
    System.setProperty("javax.net.ssl.trustStorePassword", "wso2carbon");  
    System.setProperty("javax.net.ssl.trustStoreType", "JKS");  
    String backEndUrl = "https://localhost:9443";  

    LoginAdminServiceClient login = new LoginAdminServiceClient(backEndUrl);  
    String session = login.authenticate("admin", "admin");  
    ServiceAdminClient serviceAdminClient = new ServiceAdminClient(backEndUrl, session);  
    ServiceMetaDataWrapper serviceList = serviceAdminClient.listServices();  
    System.out.println("Service Names:");  
    for (ServiceMetaData serviceData : serviceList.getServices()) {  
      System.out.println(serviceData.getName());  
    }  

    login.logOut();  
  }  
}

有关详情,请查看here