gpt4 book ai didi

基于 HTTPS 的 Perl XML-RPC

转载 作者:太空宇宙 更新时间:2023-11-03 13:42:56 25 4
gpt4 key购买 nike

我有几个利用 DBI 的 Perl 脚本,我正在清理这些脚本并将其转换为 Rose::DB。我的公司使用名为 Password Manager Pro (PMP) 的产品来管理身份验证资源。 PMP 有一个 XML-RPC API我正在尝试构建一个模块,Rose::DB::Object 将调用该模块来获取数据库资源的密码,而不是将凭据存储为明文。

我看过RPC::XMLXML::RPC并且找不到 ssl 选项。我在谷歌上搜索了一个基于 HTTPS 的 XML-RPC 示例,但没有成功。

我的大部分脚本都是与数据库相关的,到目前为止我还没有对基于网络的模块做太多。我希望有人可以推荐一个解决方案/示例,说明我如何将以下 XML 传递到服务器并使用 SSL 证书标识我自己:

<?xml version="1.0" encoding="utf-8"?>
<methodCall>
<methodName>pmp.password.retrieve</methodName>
<params>
<param>
<value><string>pmp-server</string></value>
</param>
<param>
<value><string>administrator</string></value>
</param>
</params>
</methodCall>

我用以下内容启动了我的模块,但没有将 ssl 呈现给服务器它不好:

#!/usr/bin/perl

use XML::RPC;
my $certfile = /home/api/.ssl/pmp.p12; #Where to pass this?
my $xmlrpc = XML::RPC->new('https://pmp.local:7070/xmlrpc');
my @result = $xmlrpc->call( 'pmp.password.retrieve', {
resourceName => 'DBSERV',
userAccount => 'APITest',
reason => 'Test'
});

print @result;

如有任何建议,我们将不胜感激。

最佳答案

一个解决方案,虽然可能不是最好的,是使用像 stunnel 这样的 SSL 代理。 .您将其设置为监听端口,并且使用适当的证书将进入的任何连接转发到另一个地址/端口。它又是一个事件部件,不太理想,但它确实完成了工作。

关于基于 HTTPS 的 Perl XML-RPC,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10307406/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com