我目前正在編寫一個C語言中的CGI博客引擎(有趣的項目 - 不要討厭!:),我想爲每個有登錄的用戶啓用發佈Web服務器運行的機器。測試本地用戶登錄數據
查看提供的登錄名和密碼是否與系統登錄數據匹配的正確方法是什麼?
爲了說明一下,如果我在主機上有一個帶密碼「pass」的shell用戶名「user」,我希望能夠在CGI上使用相同的「user」和「pass」來授權我自己頁。
免責聲明:我知道,送你的shell的登錄數據加密過可能有多個路由器的CGI網站是試圖使一個充滿氣體的儲罐內火的安全,但這是(並保持)一本地化的有趣項目:)
那麼,頁面上說libshadow需要root權限才能操作......我不認爲我的CGI腳本會是root ...:/ – LukeN 2010-06-22 18:37:43
那麼,你是在問你的CGI腳本去做一些非常愚蠢和不安全的事情。 ..令人驚訝的是,您需要提升特權才能訪問和解密/ etc/passwd和/ etc/shadow?唯一的其他選擇是做其他系統做的事情,並且這是一個使用libshadow的進程守護進程,讓CGI以普通用戶的身份通過守護進程運行憑據。 – sleepynate 2010-06-23 21:48:47
除此之外,也許看看CGIpaf是怎麼做的: http://www.wagemakers.be/english/programs/cgipaf – sleepynate 2010-06-23 21:55:56