Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP:在登录后发出特定于用户的请求_Php_Html_Security_Authentication - Fatal编程技术网

PHP:在登录后发出特定于用户的请求

PHP:在登录后发出特定于用户的请求,php,html,security,authentication,Php,Html,Security,Authentication,我脑子里有个小问题 因此,用户尝试登录。如果用户名和密码正确,他将被重定向到仪表板。我将设置一些会话变量,如userid和username 第一个问题:这些变量可以被操纵吗?我想显示登录的用户名。我可以从会话变量中使用它吗?还是需要始终从数据库中获取它? 接下来,当他登录时,用户应该只查看他的私人照片。我有一个PHP请求,它返回JSON格式的图像文件。它工作得很好。但我如何才能使它安全和节省 我应该向该JSON发布什么参数?只是从会话变量中发布一个用户ID?但是,如果有人试图调用该PHP并只是更

我脑子里有个小问题

因此,用户尝试登录。如果用户名和密码正确,他将被重定向到仪表板。我将设置一些会话变量,如userid和username

第一个问题:这些变量可以被操纵吗?我想显示登录的用户名。我可以从会话变量中使用它吗?还是需要始终从数据库中获取它? 接下来,当他登录时,用户应该只查看他的私人照片。我有一个PHP请求,它返回JSON格式的图像文件。它工作得很好。但我如何才能使它安全和节省

我应该向该JSON发布什么参数?只是从会话变量中发布一个用户ID?但是,如果有人试图调用该PHP并只是更改用户ID,该怎么办?他会从别人那里得到照片吗?我怎样才能确定,提出请求的人真的是那个人? 提前谢谢。我对这个话题很感兴趣,我很想了解更多


第一个问题:这些变量可以被操纵吗?我想 显示登录的用户名。我可以从会话中使用这个吗 变量,还是需要始终从数据库中获取它

从会话中显示通常就足够了,但是是的,您可以操纵它

我应该向该JSON发布什么参数?只是从发布一个用户ID 会话变量?但是如果有人试图调用PHP和 只是更改用户ID?他会从别人那里得到照片吗?怎样 我能确定,提出请求的人真的是 人


在请求中发送用户id。然后,在后端,检查该id是否与当前登录用户的id相同。如果是,则返回图像;如果不是,则返回错误。这就是如何确保安全的方法。

第一个问题:这些变量可以被操纵吗?我想显示登录的用户名。我可以从会话变量中使用它吗?还是需要始终从数据库中获取它

首先,在会话中设置userid并根据 那个用户ID。使用全局变量登录是安全的 例如:$\u SESSION[is\u login]=true

请先验证是否存在userid和is\u登录,然后验证您的 页面应进一步移动,否则必须显示错误

接下来,当他登录时,用户应该只查看他的私人照片。我有一个PHP请求,它返回JSON格式的图像文件。它工作得很好。但我如何才能使它安全和节省

我应该向该JSON发布什么参数?只是从会话变量中发布一个用户ID?但是,如果有人试图调用该PHP并只是更改用户ID,该怎么办?他会从别人那里得到照片吗?我怎样才能确定,提出请求的人真的是那个人

您应该将加密的userid或is\u登录传递到url并进行验证 是否需要检查它是否是真的?否则,请使用默认图像而不是 用户形象


谢谢那是个好办法。但是对于第二个答案,如果会话变量可以被操纵,它真的安全吗?它们可以被你操纵,在代码中,这就是我的意思,用户不应该能够操纵它们。我的意思是,有一些攻击,没有一个系统是100%安全的,但是你可以毫无问题地使用会话变量。谢谢你。回答得很好。因此,我将使用id发出一个请求,检查id是否与会话id匹配,然后我就可以开始了。谢谢。我对那个话题很感兴趣。期待了解更多。不知道为什么我会得到这么多的反对票,但答案是值得的。谢谢,但是如果用户ID和is_登录被操纵了呢?我仍然可以得到那个图像。我刚刚将userid设置为一个id,并且您的登录是否为true?