2017-06-22 6 views
0

私は、当社のワークフローを改善するために第三者apiを利用するためにpythonを使い始めました。私が扱ってきたAPIの1つはCitrixの共有ファイル(安全な管理されたFTPサーバー)です。私はcitrixがapi呼び出しを行うための例として書いたモジュールを使用しているので、私が書いているものと実際のHTTPリクエストとの間に少なくとも1つの抽象層があります。Windowsでの証明書の確認エラーPythonを実行しているDockerコンテナ

私は私のラップトップからのアクセストークンを取得するために認証要求をするとき、これはうまく動作しますが、私はドッカーのコンテナ(Windows nanoにPythonがインストールされています)から同じことをしようとすると、 :私は、コンテナは自分のコンピュータ上の証明書にアクセスすることはできませんが、もしそうなら、どのように私は、容器内のSSL証明書をインストールしますので、それができる何を読んでから、

Traceback (most recent call last): 
    File "main.py", line 38, in <module> 
    sharefile = pysharefile.authenticate(hostname,sf_client_id,sf_client_secret,sf_username,sf_password) 
    File "C:\Python\lib\site-packages\pysharefile\pysharefile.py", line 42, in authenticate 
    http.request('POST', uri_path, urllib.parse.urlencode(params), headers=headers) 
    File "C:\Python\lib\http\client.py", line 1239, in request 
    self._send_request(method, url, body, headers, encode_chunked) 
    File "C:\Python\lib\http\client.py", line 1285, in _send_request 
    self.endheaders(body, encode_chunked=encode_chunked) 
    File "C:\Python\lib\http\client.py", line 1234, in endheaders 
    self._send_output(message_body, encode_chunked=encode_chunked) 
    File "C:\Python\lib\http\client.py", line 1026, in _send_output 
    self.send(msg) 
    File "C:\Python\lib\http\client.py", line 964, in send 
    self.connect() 
    File "C:\Python\lib\http\client.py", line 1400, in connect 
    server_hostname=server_hostname) 
    File "C:\Python\lib\ssl.py", line 401, in wrap_socket 
    _context=self, _session=session) 
    File "C:\Python\lib\ssl.py", line 808, in __init__ 
    self.do_handshake() 
    File "C:\Python\lib\ssl.py", line 1061, in do_handshake 
    self._sslobj.do_handshake() 
    File "C:\Python\lib\ssl.py", line 683, in do_handshake 
    self._sslobj.do_handshake() 
ssl.SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed (_ssl.c:749) 

おかげで、 オースティン

答えて

0

ホスト上の証明書ストアは、ゲストとの互換性がある場合は、あなただけのそれを直接マウントすることができます。

ドッカ実行-v /ホスト/パス//certsのに:/コンテナ/パス//certsの-d image_idは "更新-CA-証明書" のWindows環境の場合は

+0

は、私が唯一のアクセス可能にします証明書マネージャを介して証明書をエクスポートする必要がありますか?どの証明書を探していますか? –

関連する問題