AsfClient.java 文件源码

java
阅读 20 收藏 0 点赞 0 评论 0

项目:byps 作者:
private static HttpClientContext internalCreateSSOContext() {

  if (log.isDebugEnabled()) log.debug("internalCreateSSOContext(");

  //System.setProperty("java.security.krb5.conf", "C:\\Windows\\krb5.ini");
  //System.setProperty("sun.security.krb5.debug", "true");
  System.setProperty("javax.security.auth.useSubjectCredsOnly","false");

  HttpClientContext context = HttpClientContext.create();

  if (isNTLMAuthenticationEnabled()) {
    if (log.isDebugEnabled()) log.debug("set WindowsCredentialsProvider");
    final CredentialsProvider credsProvider = new WindowsCredentialsProvider(new SystemDefaultCredentialsProvider());
    context.setCredentialsProvider(credsProvider);
  }
  else {

    if (log.isDebugEnabled()) log.debug("set JAAS credential provider");

    // This may seem odd, but specifying 'null' as principal tells java to use the logged in user's credentials
    Credentials useJaasCreds = new Credentials() {
      public String getPassword() { return null; }
      public Principal getUserPrincipal() { return null; }
    };

    BasicCredentialsProvider credentialsProvider = new BasicCredentialsProvider();
    credentialsProvider.setCredentials( new AuthScope(null, -1, null), useJaasCreds );
    context.setCredentialsProvider(credentialsProvider);
  }

  if (log.isDebugEnabled()) log.debug(")internalCreateSSOContext");
  return context;
}
评论列表
文章目录


问题


面经


文章

微信
公众号

扫码关注公众号