2013-03-29 7 views
14

私はこれを回避することはできません。私の実際のドメインがある場合、私は例を交換し、私は最も確かに私のために正しいユーザー名/ PWを使用している私は、CSVのアップロードを自動化するスクリプトにしようとしているが、カールは401NTLM authでカールを使用してポストを作成すると失敗します

curl -v --ntlm -u username --upload-file ~/galaxy/forums/pt_update.csv https://connect.example.com/11063/csv_import?op=add -k 
Enter host password for user 'username: 
* About to connect() to connect.example.com port 443 (#0) 
* Trying x.x.x.x... connected 
* successfully set certificate verify locations: 
* CAfile: none 
    CApath: /etc/ssl/certs 
* SSLv3, TLS handshake, Client hello (1): 
* SSLv3, TLS handshake, Server hello (2): 
* SSLv3, TLS handshake, CERT (11): 
* SSLv3, TLS handshake, Server finished (14): 
* SSLv3, TLS handshake, Client key exchange (16): 
* SSLv3, TLS change cipher, Client hello (1): 
* SSLv3, TLS handshake, Finished (20): 
* SSLv3, TLS change cipher, Client hello (1): 
* SSLv3, TLS handshake, Finished (20): 
* SSL connection using RC4-MD5 
* Server certificate: 
* subject: C=US; ST=Washington; L=internetland; O=example.com Inc.; CN=connect.example.com 
* start date: 2012-06-11 14:53:47 GMT 
* expire date: 2013-06-11 14:53:47 GMT 
* common name: connect.example.com (matched) 
* issuer: DC=com; DC=example; DC=ant; CN=example.com Infosec CA G2 
* SSL certificate verify result: unable to get local issuer certificate (20), continuing anyway. 
* Server auth using NTLM with user 'username' 
> PUT /11063/csv_import?op=add HTTP/1.1 
> Authorization: NTLM TlRMTVNTUAABAAAABoIIAAAAAAAAAAAAAAAAAAAAAAA= 
> User-Agent: curl/7.22.0 (x86_64-pc-linux-gnu) libcurl/7.22.0 OpenSSL/1.0.1 zlib/1.2.3.4 libidn/1.23 librtmp/2.3 
> Host: connect.example.com 
> Accept: */* 
> Content-Length: 0 
> Expect: 100-continue 
> 
< HTTP/1.1 401 Authorization Required 
< Date: Fri, 29 Mar 2013 03:47:00 GMT 
< Server: Server 
< WWW-Authenticate: Basic realm="ANT (Windows) Login" 
< Content-Length: 401 
< Connection: close 
< Content-Type: text/html; charset=iso-8859-1 
< 
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN"> 
<html><head> 
<title>401 Authorization Required</title> 
</head><body> 
<h1>Authorization Required</h1> 
<p>This server could not verify that you 
are authorized to access the document 
requested. Either you supplied the wrong 
credentials (e.g., bad password), or your 
browser doesn't understand how to supply 
the credentials required.</p> 
</body></html> 
* Closing connection #0 
* SSLv3, TLS alert, Client hello (1): 

で失敗していますドメイン。

答えて

23

あなたはIISでホストされているページとNTLMでその仕事を持っているなら、あなたが入れなければならない。この

を試してみてください。

(Sharepointのでは例えばページ)

curl http://enterprisesharepoint -v --ntlm --negotiate -u USER123:PASSWORD123 

私にとってはうまくいくそして、あなたが交渉置く場合、これはローカルアカウントを与えると、ユーザー名とパスワードが間違っている場合は、それがどんなに理由ですが、サーバーを使用してログインヘッダメッセージ

--Edit--

を見ることができますネゴシエートするには、Windowsで自動認証を行い、ユーザーのローカルログに記録します。この動作が気に入らなければ、正しいntlmログインのためにntlmだけを置くべきです。

+0

"--negotiate"を削除すると、うまく動作しました。 (ADFS統合Windowsログインエンドポイント、Windowsドメインへの認証) –

関連する問題