我正在制作一个应用程序生态系统,其中包括使用webservices与同一数据库进行协商的桌面,移动和Web。这些应用程序需要高度安全,因为它们将用于控制家庭安全。例如:远程打开/锁定家中的前门,远程打开/关闭家中的金库。
我希望这些应用尽可能安全,但对受授权用户的干扰最小。我计划包含的一些安全功能包括:
网络应用
- 2步验证,使用一次性密码发送到注册的手机。
- 有关任何活动的注册手机短信更新。
- 部署RSA安全令牌,例如SecurID
醇>
桌面应用
- 将用户绑定到特定(或一组)硬件ID。只允许映射到特定用户的计算机访问。
醇>
移动应用
- 2步验证。
- 将用户绑定到Android移动应用中的NFC硬件ID。 (与其他平台类似)
醇>
数据库安全性
- 不直接暴露数据库架构/数据。
- 通过oauth令牌提供的所有API请求。
醇>
技术堆栈
截至目前尚未冻结,但我打算使用:
- Webservices Framework- Mule / Java
- 数据库 - Postgres
- Web框架 - Django / Python
- 移动 - Android,Apple,Windows Phone sdks
或Microsoft工具--C#,ASP.NET,SQL Server 2008 R2
我在此方案中有以下具体问题。
更新:关于Will的建议我只是将问题限制在一个方面。
- 上述安全功能中是否涉及漏洞??
- 可以实施的任何其他安全功能是否安全但不会侵扰用户?
醇>