与我合作的这家公司希望内部拥有自己的IOS应用程序,而不是在一般的App Store上分发。因此,我构建了一个带有按钮的简单html页面,以将应用程序下载到用户的iPhone。此按钮包含“ .plist”文件的路径
itms-services://?action=download-manifest&url=https://url-to-plist.plist
,在“ .plist”中,我们具有指向“ .ipa”文件的实际URL。
.... <dict>
<key>kind</key>
<string>software-package</string>
<key>url</key>
<string>https://url-to-ipa.ipa</string>
</dict> ....
一切正常,他们已经使用了一年多。但是现在他们担心的是,可以通过从“ .plist”文件中获取实际的URL,将该“ .ipa”文件直接下载到PC中。好吧,如果您右键单击该html页面上的按钮或“检查元素”,则只需获取指向“ .plist”文件的URL。由于这是企业应用程序,因此它包含一些敏感信息,例如公司的服务器ip地址和端口号,并且他们不希望任何人自己拥有“ .ipa”文件。
因此,首先我试图通过阻止扩展名然后通过web.config文件隐藏目录来阻止访问此“ .plist”文件
<security>
<requestFiltering>
<fileExtensions applyToWebDAV="false">
<add fileExtension=".plist" allowed="false" />
</fileExtensions>
</requestFiltering>
</security>
<security>
<requestFiltering>
<hiddenSegments>
<add segment="folderName"/>
</hiddenSegments>
</requestFiltering>
</security>
,但是在两个事件中,下载按钮也都停止工作,因为iPhone直接通过URL而不是目录路径来调用“ .plist”文件。
itms-services://?action=download-manifest&url=https://url-to-plist.plist
除此之外,我的下一个解决方案是仅允许Iphone用户访问here中的页面,以便将问题最小化。
正确的方法是什么?我可以在这里做我想做的事吗?