【问题标题】:Execute PHP Files only from iOS App仅从 iOS 应用程序执行 PHP 文件
【发布时间】:2016-09-15 10:24:20
【问题描述】:

我有两个关于 iOS 应用程序的 php 安全性的问题

问题 1:

我构建了一个 iOS 应用程序,这个应用程序调用了 php 文件,但我想限制对这个 php 文件的访问。

我想拒绝从网络访问 php 文件。

示例:如果用户使用 www.mydomain.com/phpLocation/file.php 填写 url,我想使用 HTTP 403 代码拒绝用户。

我该怎么做?

问题 2:

我创建了一个 connexion.php 文件,其中包含数据库信息用户名、密码...并使用 .htaccess 保护对该文件的访问

保护数据库信息就够了?

谢谢,

【问题讨论】:

  • 您可以使用类似这样的 SO 答案演示:stackoverflow.com/questions/6322112/… 作为您的第一个问题。如果不是 iPhone,直接 die()
  • 我已经尝试过这个解决方案但它不起作用,我会再试一次并告诉你
  • 您还可以包含一个自定义标头,您的 iOS 应用程序在发出请求时专门发送该标头,并在 PHP 中检查该数据。它存在,你知道它的应用程序,如果不存在,导致 php to die() 或返回 401
  • 在我的 post 方法中,我添加了一个变量,然后检查我的变量是否已发送?
  • 是的,类似的东西。我会做什么让我的 PHP 代码更像 API。我会为自己创建一个 API 密钥,并将其作为授权标头从我的 iOS 应用程序中包含进来。然后在 php 中,我会检查以确保 Authorization 标头存在且有效。如果是,我们就知道这是应用程序。

标签: php ios api security


【解决方案1】:

问题 1

您可以使用这种方式 (Check if PHP-page is accessed from an iOS device),但验证较弱,因为任何人都可以发送此代理并绕过您的安全性。 更好的方法是将以前的解决方案与一些验证令牌或其他 http 标头相结合,只有您的 iOS 应用程序才会拥有。尽管如此,人们仍然可以窃取此令牌并访问您的应用程序,但这会更难。确保您使用的是 SSL。

问题 2

应该是这样,否则任何使用 Apache HTTP 服务器的人都将被淘汰。但也许您仍然想放置一些只有您的 SO 才能访问的目录。此 .htaccess 中的任何更改都可以打开您的配置文件。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-11-30
    • 1970-01-01
    • 2011-09-19
    • 2013-06-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多