REST网址如何受到保护?
例如,我有一个像https://localhost/8080/user
这样的GET网址。它将给出一个用户列表。如果有人访问此信息,我该如何保护此信息?
答案 0 :(得分:1)
从服务器的角度来看,回答一个宁静的服务请求和回答一个页面请求之间没有区别。
因此,您可以使用完全相同的机制。
无论请求其他服务如何,这都是有效的:来自应用程序,来自Angular等
最常见的是使用具有密码身份验证的登录,该身份验证向用户提供cookie,当该请求稍后被发送时,该cookie与请求一起发送。
为了做到这一点,你可以拥有一个宁静的API端点,例如' login'将通过指定用户名和密码来调用。
看起来像这样:
https://yoursite.com/api/login?user=xxx&pwd=xxx
然后您的服务器会检查用户名和密码是否正确,如果是,只需回答几乎为空的消息,但包含以下标题:
Set-Cookie: session=yyyyyyyyyy
稍后,您的用户可以正常查询您的其余服务,Cookie会自动添加到他们的请求中。您的服务器将能够检查会话ID是否有效,如果没有拒绝该资源。