通过 dscl 在 OS X 上验证我的密码

通过 dscl 在 OS X 上验证我的密码

如果我知道我的密码是,foobar我该如何dscl在我的计算机上使用它来验证它?当然,密码Password: ********在 的输出中是加密的 ( ) dscl . -read /Users/myuser

顺便说一句,如果我必须使用另一个实用程序来实现这一点,那也没关系。

答案1

OS X 不存储您的密码,因此您无法从某些文件或数据库中读取它。

您可以执行某种登录,例如使用su myusername。如果您不想打开 shell,您可以随时通过立即关闭打开的 shell su myusername -c exit

或者,如果您是 sudoer,请使用它sudo -v来更新您的时间戳。它会要求您输入密码,但不会运行任何其他操作。如果您最近输入了密码,这将不起作用。sudo您可以使用它来使您的 sudo 时间戳无效sudo -k,因此只需在之前运行它sudo -v(为了安全起见,也可以在之后运行它)。

答案2

使用 dscl,您可以运行此命令来检查本地主机上的密码。如果它未返回任何内容,则表示密码正确。

dscl /Local/Default -authonly USERNAME

如果您想在另一个密码服务器上检查,请进行相应替换

dscl /LDAPv3/host.name -authonly USERNAME

相关内容