2013-02-19 29 views
-3

我有一个我使用Parse构建的网站作为后端,我想限制对没有管理员访问权限的用户访问特定的URL(技术上的URI)。到目前为止,当用户尝试登录时,他们的密码将根据服务器中的散列密码进行检查。在JavaScript服务器端限制URL访问

但是,如果我只希望管理员能够访问http://mywebsite.com/secret.html并且只有一次他们登录后,我该怎么做?现在任何人都可以访问该网址,无论身份验证与否。

编辑:此网站没有其他帐户以外的管理员。它应该是匿名的。

+0

不确定你期望得到什么样的答案?检查用户名确认他是管理员。故事结局。 – gdoron 2013-02-19 16:08:45

+0

标准用户不会拥有用户名,因为它是一个匿名服务......所以,如何防止他们直接进入url?这是我的问题。我将如何阻止他们直接访问该页面? – barndog 2013-02-19 16:13:20

+0

@shadow - 因为当请求URL时,你检查他们的auth/authz。 – Quentin 2013-02-19 16:20:48

回答

1

你不能用JavaScript或HTML以安全的方式实现这一点,因为它是客户端。您最好使用PHP或其他服务器端Web语言。

用PHP,你可以很容易地做到登录这种方式(你的登录页面上):

if($_POST['username'] == "admin" && $_POST['password'] == "adminpass"){ 
    $_SESSION['authed'] = true; 
} 

而且在所有的页面中,你希望确保,使用上的文件的顶部:

if(!isset($_SESSION['authed']) || $_SESSION['authed'] != true){ 
    echo "You are not logged in"; 
    die(); //Kill the page so the secured content is not viewable 
}else{ 
    echo "You are logged in"; 
} 

// your secured content here 
+0

好酷。猜猜我今天学习PHP。 – barndog 2013-02-19 16:27:12

+0

虽然,我问我的教授,他说.htaccess是要走的路。 – barndog 2013-02-19 20:03:00