ユーザーがユーザー名とパスワードを入力してログインするShiny Login Pageを作成しています。Rのユーザー名とパスワードの検証Shiny app
私は、ユーザ名とパスワードがそれぞれusername
,password
のカラムに格納されているログイン資格情報のセットを持っています。
以下は今の問題は、私はそのはpassword
を対応するusername
を検証することはできませんよですserver.r
reactive({validate(
need(input$Username == df$username, message = FALSE),
need(input$Password == df$password, message = FALSE)
)})
で私のスクリプトで、任意のパスワードを使用して、任意のユーザでログインすることができます。親切に論理を助けてください。
df
username password
admin admin
jhon jhon
test test
ipt ipt
rock rock
パスワードを保存することは非常に悪い習慣です。 opensslパッケージを使用して、ハッシュされたパスワードとソルトされたパスワードを比較する方がよいでしょう。 –
@JoshGilfillanああ、ありがとう、提案をありがとう、どうすれば実装できますか? – SBS
opensslパッケージのsha512()関数を使用して、プレーンパスワードの代わりにハッシュされたパスワードを格納します。ユーザーが資格情報を入力すると、入力されたパスワードのハッシュと保存されたパスワードのハッシュを比較します。 sha512()関数には、辞書攻撃を防ぐキーパラメータもあります。 –