Login 没有用户名的站点管理员&;密码

Login 没有用户名的站点管理员&;密码,login,web,admin,Login,Web,Admin,现在,我正在建立一个个人网站/博客,并且几乎按照我想要的方式得到了它,除了我对如何向其中添加帖子犹豫不决 只有我会添加帖子,而对我来说,拥有用户名/密码登录似乎太简单了 我正在寻找可供选择的玩法和实验方法,我的一个想法是: 生成一个非对称密钥,我个人保留私钥,站点拥有公钥。当我尝试添加帖子或修改任何内容时,网站将生成一个随机字符串,用公钥加密并显示它。我用一个小应用程序来解密这个,我可以将未加密的字符串传递回站点,这样修改就可以继续了 我只是想知道我应该注意哪些注意事项,或者如果有人认为这是个坏

现在,我正在建立一个个人网站/博客,并且几乎按照我想要的方式得到了它,除了我对如何向其中添加帖子犹豫不决

只有我会添加帖子,而对我来说,拥有用户名/密码登录似乎太简单了

我正在寻找可供选择的玩法和实验方法,我的一个想法是:

生成一个非对称密钥,我个人保留私钥,站点拥有公钥。当我尝试添加帖子或修改任何内容时,网站将生成一个随机字符串,用公钥加密并显示它。我用一个小应用程序来解密这个,我可以将未加密的字符串传递回站点,这样修改就可以继续了


我只是想知道我应该注意哪些注意事项,或者如果有人认为这是个坏主意,也许我可以尝试另一种选择?

为什么不只使用用户名和密码,让您的web浏览器记住登录名,或者发送一个未过期的身份验证cookie。使用自签名SSL证书保护通信通道。如果您想使用公钥/私钥加密,只需在服务器上设置一个SSH隧道并从localhost发布即可。相信我,重复使用已知良好的加密/安全性比尝试使用自己的加密/安全性要好。

为什么不只使用用户名和密码,让您的web浏览器记住登录名,或者发送一个不会过期的身份验证cookie。使用自签名SSL证书保护通信通道。如果您想使用公钥/私钥加密,只需在服务器上设置一个SSH隧道并从localhost发布即可。相信我,重复使用已知良好的加密/安全性比尝试使用自己的加密/安全性要好。

我认为非对称密钥是一个优雅的解决方案,但用户名/密码几乎肯定更容易实现

如果你在建立自己的网站,那么你只是为了好玩(否则你会使用WordPress、Drupal、Django等),那么为什么不采取不同的做法呢

你可能会发现,如果你发现自己想写博客,但又无法识别自己的身份,那么随身携带键盘应用程序可能会有点限制


但是,也就是说,@Kurt有正确的想法,因为加密DIY几乎肯定会比使用已经尝试和测试过的东西更糟糕

我认为非对称密钥是一个优雅的解决方案,但用户名/密码几乎肯定会更容易实现

如果你在建立自己的网站,那么你只是为了好玩(否则你会使用WordPress、Drupal、Django等),那么为什么不采取不同的做法呢

你可能会发现,如果你发现自己想写博客,但又无法识别自己的身份,那么随身携带键盘应用程序可能会有点限制


但是,也就是说,@Kurt有正确的想法,因为加密DIY几乎肯定会比使用已经尝试和测试过的东西更糟糕

我所听到的关于安全的最明智的说法之一是“不要试图重新发明它”

在线安全已经经历了如此多的迭代,以至于很可能你提出的任何好主意都有一些以前发现、考虑和修复的缺陷


如果您想要“临时”安全,请使用用户名和密码保护您的站点。如果您想要“强”安全性,请在其上粘贴SSL证书。如果您想要“银行”安全性,请添加防击键安全性。

我所听到的关于安全性的最明智的说法之一是“不要试图重新发明它”

在线安全已经经历了如此多的迭代,以至于很可能你提出的任何好主意都有一些以前发现、考虑和修复的缺陷


如果您想要“临时”安全,请使用用户名和密码保护您的站点。如果您想要“强”安全性,请在其上粘贴SSL证书。如果您想要“银行”安全性,请添加防击键安全性。

为什么不进一步改进您的建议,将加密字符串放入URL


例如,将当前日期和时间转换为字符串-例如0904240905-使用私钥对其进行加密并将其添加到URL,例如
http://yoursite.com/admin/dksjfh4d392s
其中
dksjfh4d392s
是加密字符串。然后,您的站点有一个servlet,它从URL中提取加密字符串,验证它是否解密到最近的某个时间,然后给您一个会话cookie,同时允许您执行管理任务。

为什么不从您的建议进一步,将加密字符串放入URL中


例如,将当前日期和时间转换为字符串-例如0904240905-使用私钥对其进行加密并将其添加到URL,例如
http://yoursite.com/admin/dksjfh4d392s
其中
dksjfh4d392s
是加密字符串。然后,您的站点有一个servlet,它从URL中提取加密字符串,验证它是否解密到最近的时间,然后给您一个会话cookie,同时允许您执行管理任务。

SSL客户端证书仍然可以执行此操作。为什么不使用其中一个呢


越来越多的人不使用SSL客户端证书的主要原因是,它们是一场管理噩梦——你必须让最终用户创建密钥,然后签署他们的证书,然后确保最终用户不会丢失密钥(当他们丢失笔记本电脑、升级到新操作系统等时),他们通常会这样做,因此,当最终用户丢失他们的私钥时,您必须签署更多的证书。

SSL客户端证书仍然可以这样做。为什么不使用其中一个呢

越来越多的人不使用SSL客户端证书的主要原因是,它们是一个管理噩梦——您必须让最终用户创建密钥,然后对其证书进行签名,然后确保最终用户不会丢失密钥(当他们丢失l