如何检查身份验证是否适用于扭曲?

How to check if authentication works in twisted?

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

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

我设法创建了一个简单的数据集 'mydataset' 和所需的 SSL 证书,使用我的 CA 从 openssl:

使用前 2 个证书,我 运行 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

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

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

所以谁用Wombat包跑到这个问题,解决方法如下:

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

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

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