如何检查身份验证是否在扭曲?

时间:2015-08-14 17:14:46

标签: python ssl soap twisted

我正在使用这个Wombat API - WAPI(link),它建立在twisted和SOAP之上,以实现加密的客户端 - 服务器通信,主要用于共享大数据集。

WAPI非常易于安装和使用,因为它包含示例客户端和服务器代码(文件:wapi_client.py和wapi_server.py)。

我设法创建一个简单的数据集' mydataset'以及使用openssl中的CA所需的SSL证书:

  • ca_cert.pem,
  • server_cert.pem,
  • client_cert.pem。

使用前两个证书,我运行wapi_server(在127.0.0.1:8080上)没有问题,并得到以下输出:

> python wapi_server.py 
> setting up WAPI server!
> adding dataset mydataset
> launching dataset-specific initialization code
> registered object simulation (2 methods,0 refs)
> registered object dataset (0 methods,1 refs)
> dataset successfully initialized
> activating SSL support
> activating SSL support
> enabling SSL client authentication
> entering in twisted loop!

然后使用证书1和3运行wapi_client(使用127.0.0.1:8080在同一台机器上)但是我收到以下错误:

> python wapi_client.py
> registering dataset mydataset -> http://127.0.0.1:8080/
> entering into main thread loop
> running reactor..
> testing dataset availability
> SOAP call get_attributes
> blocking and waiting for object completion
> something went wrong: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionDone'>: Connection was closed cleanly.]
> object completed
> mydataset : ERROR
> 0 datasets are available
> getting out of main loop

我不明白这个错误。我认为这是因为以下之一:

  • 服务器没有响应
  • 身份验证失败(我在使用证书时出现了一些错误)

如何检查我的身份验证是否有效以及如何检查服务器是否响应?

1 个答案:

答案 0 :(得分:1)

所以无论谁使用Wombat包并遇到这个问题,解决方案如下:

WAPI客户端在文件wapi.conf中配置。在其中,您应该为服务器指定地址,如:

https://<ip_address>:<port>/<name_of_dataset>

请注意网址中的https(安全)和数据集的名称。此外,在配置文件中,您应该提供证书文件(CA和服务器证书)