如何使用php将输入的密码与oracle中sys.user$中的密码进行比较
我有一个任务:创建一个web应用程序,允许用户以DBA身份访问Oracle数据库,并在该应用程序中创建一个新的DBA用户 我很困惑如何将输入的密码与sys.user$表中的password列进行比较。我不知道这里的加密类型是什么如何使用php将输入的密码与oracle中sys.user$中的密码进行比较,php,oracle,oracle11g,passwords,Php,Oracle,Oracle11g,Passwords,我有一个任务:创建一个web应用程序,允许用户以DBA身份访问Oracle数据库,并在该应用程序中创建一个新的DBA用户 我很困惑如何将输入的密码与sys.user$表中的password列进行比较。我不知道这里的加密类型是什么 public function login($data) { $this->db->select('*'); $this->db->from('SYS.USER$'); $this->
public function login($data) {
$this->db->select('*');
$this->db->from('SYS.USER$');
$this->db->where('NAME', $data['username']);
$this->db->where('PASSWORD', $data['password']);
// How to fix correct line above
$query = $this->db->get();
if ($query->num_rows() > 0) {
return true;
} else {
return false;
}
}
有人能帮我吗
谢谢你的时间 您不应该使用自己的登录功能,而应该使用PHP内置的
oci\u connect
。因为您只希望DBA连接,所以需要注意session\u mode
(提示:OCI\u SYSDBA
)。@APC,它似乎是公开记录的::基于PBKDF2的SHA512哈希算法。还有一些(可能不是官方的)更多信息:@WernfriedDomscheit-我所说的“散列算法”是指整个过程,而不仅仅是加密散列。Oracle不会发布所有步骤。然而,Trustwave的那篇文章非常有趣:我没有意识到加密密码中包含了salt。感谢您以DBA的身份登录基于web的应用程序是个坏主意,原因很明显。创建用户不需要成为DBA,只需要具有CREATEUSERSYSTEM权限。您应该寻找具有此特定权限的非DBA用户,但不是完全的DBA权限。@这是我所在大学的一项任务。我必须完成它的想法。你应该使用PHP内置的oci\u connect
,而不是滚动你自己的登录功能。因为您只希望DBA连接,所以需要注意session\u mode
(提示:OCI\u SYSDBA
)。@APC,它似乎是公开记录的::基于PBKDF2的SHA512哈希算法。还有一些(可能不是官方的)更多信息:@WernfriedDomscheit-我所说的“散列算法”是指整个过程,而不仅仅是加密散列。Oracle不会发布所有步骤。然而,Trustwave的那篇文章非常有趣:我没有意识到加密密码中包含了salt。感谢您以DBA的身份登录基于web的应用程序是个坏主意,原因很明显。创建用户不需要成为DBA,只需要具有CREATEUSERSYSTEM权限。您应该寻找具有此特定权限的非DBA用户,但不是完全的DBA权限。@这是我所在大学的一项任务。我必须完成它的想法。