通过 OCI8 PHP 检查 oracle 密码是否为 expired/invalid

Check if oracle password is expired/invalid via OCI8 PHP

有没有一种方法可以在 PHP 文件中使用 OCI8 检查 Oracle 数据库密码是否过期或无效,而无需锁定数据库用户以进行无效尝试? (PS:我的数据库用户在 3 次无效尝试后被锁定)

如果以特权用户(如SYS)连接Oracle数据库,勾选DBA_USERS:

SQL> desc dba_users;
 Name
 --------------------------------
 USERNAME
 USER_ID
 PASSWORD
 ACCOUNT_STATUS
 LOCK_DATE
 EXPIRY_DATE               --> this
 DEFAULT_TABLESPACE
 TEMPORARY_TABLESPACE
 CREATED
 PROFILE
 INITIAL_RSRC_CONSUMER_GROUP
 EXTERNAL_NAME
 PASSWORD_VERSIONS
 EDITIONS_ENABLED
 AUTHENTICATION_TYPE

SQL>

您会看到 EXPIRY_DATE 所以 - 检查该值。

截至 "invalid password":我认为您不必担心,因为 Oracle 无论如何都不会让您存储无效密码。