草庐IT

password-protection

全部标签

php - 是否可以模拟 protected 属性和方法

是否可以使用PHPMockery模拟protected属性?我得到了一个带有方法的类,我将其称为“a”,它对从同一类的protected属性检索的数组执行一些魔法。该protected属性由同一类中的另一个方法b填充。我想通过模拟protected属性来测试方法a,这样我就不必先对方法b进行分类。这可能吗?如果不是,我应该重构我的代码吗?或者还有其他方法(考虑最佳实践)。 最佳答案 可以模拟protected方法,但正如某些人指出的那样,如果您觉得需要模拟这些方法,则可能需要重构您的代码。如果你确实想模拟protected方法,你可

php - Laravel:如何更改默认的 Auth Password 字段名称?

我目前正在处理我的第一个laravel项目,但我遇到了一个问题。如果您有使用Laravel的经验,您可能知道通过调用phpartisanmake:auth您将获得一个预定义的机制来处理登录和注册。此机制旨在理解几个常用词,以便使整个过程自动化。在我的案例中出现的问题是我使用的是oracledb,它不会让我有一个名称为password的表列,因为它是一个系统关键字,当它抛出错误时尝试插入用户。到目前为止,我已尝试将我的password列更改为passwd,它在我的注册表中按预期工作。用户行已成功插入,我的页面已重定向到/home。但是当我尝试注销然后重新登录时,我收到此错误消息,告诉我我

php - 对于 (PHP 5 < 5.5.0),password_hash() 的替代方法是什么?

根据手册:password_hash此函数可用于(PHP5>=5.5.0)在寻找替代方法后,我从这里找到了这个简单的函数:http://www.sitepoint.com/password-hashing-in-php/functiongenerateHash($password){if(defined("CRYPT_BLOWFISH")&&CRYPT_BLOWFISH){$salt='$2y$11$'.substr(md5(uniqid(rand(),true)),0,22);returncrypt($password,$salt);}}我可以在使用前使用function_exist

php - 为什么 "Forgotten Password"不好?

我遇到了这个statementDonotuse"forgottenpassword"functionality.Butifyoumust,ensurethatyouareonlyprovidinginformationtotheactualuser,e.g.byusinganemailaddressorchallengequestionthatthelegitimateuseralreadyprovidedinthepast;donotallowthecurrentusertochangethisidentityinformationuntilthecorrectpasswordhas

php - PASSWORD_DEFAULT 与 PASSWORD_BCRYPT

PASSWORD_DEFAULT和PASSWORD_BCRYPT有什么区别?他们都使用Blowfish加密算法吗?什么是算法成本?如何在PHP中设置password_hash以产生255哈希长度而不是60? 最佳答案 目前PASSWORD_BCRYPT是唯一支持的算法(使用CRYPT_BLWFISH),因此PASSWORD_DEFAULT和PASSWORD_BCRYPT目前没有区别。PASSWORD_DEFAULT的目的是允许在未来包含其他算法,因此PASSWORD_DEFAULT将始终用于应用最受支持的哈希算法。成本与算法执行的迭

php - PHP 的 password_verify() 对极长密码(DoS 攻击)是否安全?

一般攻击场景:2013年Django有一个普遍的漏洞,因为攻击者可以通过非常大的密码创建极其密集的CPU计算[seethesecuritynoticehere].我不确定在没有任何进一步检查的情况下使用PHP的password_verify()和其他密码散列方法时这是否仍然可行。PHP文档说:UsingthePASSWORD_BCRYPTforthealgoparameter,willresultinthepasswordparameterbeingtruncatedtoamaximumlengthof72characters.但是,PHP的代码可能会说一些不同的东西:Ccodebeh

php - Laravel Gmail 不工作, "Username and Password not accepted. Learn more..."

当我尝试通过我运行Laravel4的网站发送电子邮件时,我得到了这个异常:{"error":{"type":"Swift_TransportException","message":"Expectedresponsecode250butgotcode\"535\",withmessage\"535-5.7.8UsernameandPasswordnotaccepted.Learnmoreat\r\n5355.7.8http:\/\/support.google.com\/mail\/bin\/answer.py?answer=14257y70sm14744455qgd.3-gsmtp\

php - 调用未定义函数 password_hash()

我现在正在本地主机上运行php版本5.4.16,同时我正在开发我的网站。我想使用password_hash(),但我一直收到此错误:Fatalerror:Calltoundefinedfunctionpassword_hash()in/dir/to/file.phponline123为什么会这样? 最佳答案 新的password_*方法仅适用于PHP5.5:http://www.php.net/manual/en/function.password-hash.php看看这个提供前向兼容性的库:https://github.com/i

PHP 无法访问 protected 属性错误

我看不出有什么问题,但我偶尔会在日志中看到上述异常。怎么了?PHPFatalerror:CannotaccessprotectedpropertyException::$messagein/web/index.phponline23在第23行我有,echo'message.']]>'; 最佳答案 使用$e->getMessage()而不是$e->message因为message是一个protected属性:) 关于PHP无法访问protected属性错误,我们在StackOverflow

PHP 类常量——公共(public)的、私有(private)的还是 protected ?

假设const属性自动公开,我是否正确?有没有办法将它们设为私有(private)或protected?提前致谢。 最佳答案 从历史上看,只要类被加载,类常量总是可以公开访问的,并且没有办法改变这一点。自PHP7.1起,它们默认保持公开状态,但accessmodifiersmaynowbeapplied.以下是发行说明中的​​示例: 关于PHP类常量——公共(public)的、私有(private)的还是protected?,我们在StackOverflow上找到一个类似的问题: