我已经编写了自己的api,我想将其上传到服务器,但是我想保护它,因此除了从我的应用程序外,其他任何人都无法访问它,我已经尝试了slim-basic-auth库,但是它没有用,我不知道为什么...有什么帮助吗?
$app->add(new Tuupola\Middleware\HttpBasicAuthentication([
"secure"=>false,
"users" => [
"userher@#" => "passhere#@" ]
]));
您需要从客户端应用程序向服务器应用程序添加变量。类似于APP_KEY或CLIENT_ID,它允许您的应用连接到服务器。您可以添加加密,以便服务器应用程序只能对其进行解密并识别来自客户端应用程序的请求。
如果您的应用程序是Web应用程序并托管在另一台服务器中,则可以在服务器中实施IP白名单。
但是,如果您的应用程序是移动设备,则需要像secret_key一样从移动设备传递到服务器。
问候,
[我认为您将永远无法隐藏应用程序正在调用的api网址(具有扎根android设备的攻击者可以轻松拦截流量),如果您的api响应用户特定数据,则可以在请求中添加auth标头并进行相同的验证服务器上的此标头。您还可以使用跨域资源共享(CORS)和SSL来获得额外的安全性。