小编SPD*_*SPD的帖子

Java Webstart Truststore SSL

需要一些指导.

我有java webstart应用程序,我希望它通过SSL连接到服务器.只需添加一个属性,如:System.setProperty("javax.net.ssl.trustStore","my.keystore");但是因为JAWS程序是从服务器下载不起作用,本地文件系统上没有my.keystore.所以决定将证书分发给所有客户.我做了以下工作.

  1. 将此信任存储读取为流(使用getResourceAsStream方法).
  2. 将其保存在客户端计算机上的任何文件中(sometemp)
  3. 调用System.setProperty("javax.net.ssl.trustStore",trustStorePath);

但我相信必须有比这更好的解决方案..任何想法让它变得更好?

public boolean validateUserFromActiveDirectory(String userId) {
                    final String MEMBER_GROUP = "CN=asdadasd,OU=asdasdasd Accounts,OU=adasdas,OU=asdasdas,DC=asdasdas,DC=asdasdas,DC=adasdasd,DC=asdasdasd";
            String employeeNumber = "";
            final String LDAP_INIT_CTX = "com.sun.jndi.ldap.LdapCtxFactory";
            final String LDAP_URL = "ldap://xx-ssssssss.eee.eee.eeeee.eeeee:636";
            final String MY_ATTRS[] = { "employeeNumber" };
            String adminPassword = "somepassword";
            String securityProtocol = "ssl";
            boolean isValidUser = false;
            try {

                  Hashtable env = new Hashtable();
                  env.put(Context.INITIAL_CONTEXT_FACTORY, LDAP_INIT_CTX);
                  env.put(Context.PROVIDER_URL, LDAP_URL);
                  env.put(Context.SECURITY_AUTHENTICATION, "simple");
                  env.put(Context.REFERRAL, "follow");
                  env.put(Context.SECURITY_PRINCIPAL, MEMBER_GROUP);
                  env.put(Context.SECURITY_CREDENTIALS, adminPassword);
                  env.put(Context.SECURITY_PROTOCOL, securityProtocol);

            //C:\Documents and Settings\yourusername\Local Settings\Temp
            File tf = File.createTempFile("someTruststore", …
Run Code Online (Sandbox Code Playgroud)

java ssl truststore java-web-start

7
推荐指数
1
解决办法
7240
查看次数

从jdk 14迁移到jdk 16

很快我们将从jdk14开始使用jdk16.Ours是桌面应用程序.我需要采取哪些措施来确保它在客户端计算机上正常工作?现在他们中的一些使用JRE4和一些JRE6.Server- Solaris.

PD

java migrate

1
推荐指数
1
解决办法
220
查看次数

标签 统计

java ×2

java-web-start ×1

migrate ×1

ssl ×1

truststore ×1