1

KERBEROS 認証を使用して SharePoint へのファイルのアップロードを容易にするスタンドアロンの Java プログラムが必要です。

2010 バージョンにアップグレードされ、Kerberos 認証で構成された sharepoint サーバーがあります。以前の sharepoint バージョンでは、ローカル システムからファイルをアップロードするための javaq クライアント プログラムがある NTLM 認証を使用していました。sharepoint は Kerberos 認証でアップグレードされたので、現在の NTLM バージョンの Java プログラムを変更して Kerberos を使用する必要があります。認証と接続のコード スニペットを取得しましたが、これは正常に機能しています。Sharepoint の URL を読み取り、Java プログラムを使用して特定のファイルをダウンロードできます。今、Sharepoint にファイルをアップロードしようとしていますが、これに使用するために必要な Java クラスと jar ファイルを取得していません。

SPNEGO APIを使用してsharepointに接続するKerberos構成をセットアップしました。

conf ファイル: krb5.conf login.conf

Kerberos 認証に使用される API: spnego-r7.jar

接続性: 次のコードは、完全に機能している接続性とファイルのダウンロードに使用しています。

spnego = new SpnegoHttpURLConnection("spnego-client", <<sharepoint_user>>, <<sharepoint_password>>); 

//New Lines added to omit SSL Handshake exception 
TrustManager[] trustAllCerts = new TrustManager[]{ 
new X509TrustManager() { 
public java.security.cert.X509Certificate[] getAcceptedIssuers(){ 
return null; 
} 
public void checkClientTrusted(java.security.cert.X509Certific ate[] certs, String authType){ 
//No need to implement. 
} 
public void checkServerTrusted(java.security.cert.X509Certific ate[] certs, String authType){ 
//No need to implement. 
} 
} 
}; 
SSLContext sc = SSLContext.getInstance("SSL"); 
sc.init(null, trustAllCerts, new java.security.SecureRandom()); 
HttpsURLConnection.setDefaultSSLSocketFactory(sc.g etSocketFactory()); 
spnego.connect(new URL(spLocation)); 
System.out.println("spnego.getResponseCode():: "+spnego.getResponseCode()); 
if(spnego.getResponseCode() >= 200) { 
log.debug("Authentication Successful"); 
} 

ファイルの読み取り/ダウンロード:

java.io.BufferedInputStream in = new java.io.BufferedInputStream( spnego.getInputStream()); 
java.io.FileOutputStream fos = new java.io.FileOutputStream(outputFile); 
java.io.BufferedOutputStream bout = new BufferedOutputStream(fos,1024); 
byte[] data = new byte[1024]; 
int x=0; 
System.out.println("4" + outputFile.length()); 
while((x=in.read(data,0,1024))>=0) { 
bout.write(data,0,x); 
} 
bout.close(); 
in.close(); 

Java コードを使用して SharePoint フォルダにファイルをアップロードする方法を教えてください。多くのフォーラムを何時間も検索しましたが、ファイル アップロードの正確なコードを取得できませんでした。これに関するあなたのアドバイスは大歓迎です。

前もって感謝します。

4

1 に答える 1