使用数据库的 MobileFirst 用户身份验证安全检查
Posted
技术标签:
【中文标题】使用数据库的 MobileFirst 用户身份验证安全检查【英文标题】:MobileFirst User authentication security check with database 【发布时间】:2018-03-14 15:32:30 【问题描述】:我正在学习本教程:
http://mobilefirstplatform.ibmcloud.com/tutorials/en/foundation/8.0/authentication-and-security/user-authentication/security-check/
他们在那里检查从用户在应用中输入的凭据:
@Override
protected boolean validateCredentials(Map<String, Object> credentials)
if(credentials!=null && credentials.containsKey("username") && credentials.containsKey("password"))
String username = credentials.get("username").toString();
String password = credentials.get("password").toString();
if(!username.isEmpty() && !password.isEmpty() && username.equals(password))
return true;
return false;
如您所见,当username
和password
相等时,身份验证返回true。我有一个mysql
databse,我保存了注册用户。所以我想对照我数据库中的数据检查输入的credentials
。我必须如何更改适配器和方法才能做到这一点?
【问题讨论】:
【参考方案1】:为此,您需要编写代码以连接到您的数据库,调用 SQL 查询来检查数据库中的数据。
在您的安全检查的 validateCredentials 方法中,您应该编写代码以连接到保存注册用户信息的数据库。根据数据库检查用户详细信息,并根据结果返回 true 或 false。
here 列出了一个示例 Java SQL 适配器。您可以将其用作参考。
【讨论】:
以上是关于使用数据库的 MobileFirst 用户身份验证安全检查的主要内容,如果未能解决你的问题,请参考以下文章
使用 MobileFirst 在移动应用程序中使用 LDAP 服务器对用户进行身份验证
IBM MobileFirst SDK 如何检查用户身份验证 Android Native 应用程序