apache-flex 来自Flex/AIR iPad应用程序的双向SSL

az31mfrm  于 2022-11-01  发布在  Apache
关注(0)|答案(1)|浏览(174)

我一直在开发一个应用程序,该应用程序使用由另一方创建的Web服务。目前,该服务位于VPN上,但他们现在希望将其移动到外部服务器,并使用双向SSL来确保安全。他们已在新服务器上设置了该服务,并设置了SSL身份验证。我们已通过https进行了测试,但不需要客户端证书,一切正常。但是现在他们已经激活了对客户端证书的需求,我无法解决如何连接。
我已经在我的PC上安装了证书,使用Java keytool安装到Flash builder上以安装到certca,并且我已经安装到iPad上-在这些地方,我都不能从浏览器访问服务.asmx文件(在客户端要求被激活之前我可以),这是出了问题的迹象吗?还是只是正常的?
所以现在我试着让应用程序连接。我试过正常连接(从所有位置),但失败了。我也试过在代码中使用SecureSocket类来设置连接,但总是失败并出现IO错误(我使用的是AIR 21,所以在iOS上应该没问题- isSupported返回true)。
有人告诉我,C#有一个方法可以从本地存储中找到证书并将其添加到HTTPrequest中,我需要找出如何为AS 3/AIR/Flex执行等效操作。这可能吗?我一直无法找到方法。
任何想法/投入都将非常感谢。谢谢。
杰米

nnsrf1az

nnsrf1az1#

iOS在某些SSL证书方面存在一些问题。您可能想要尝试在iPhone部分的应用程序描述符文件中添加以下代码。

<key>NSAppTransportSecurity</key>
    <dict>
    <key>NSExceptionDomains</key>
        <dict>
        <key>yourdomain.com</key>
            <dict>
                <key>NSIncludesSubdomains</key>
                <true/>         
                <key>NSThirdPartyExceptionRequiresForwardSecrecy</key>
                <false/>
            </dict>
        </dict>
    </dict>

相关问题