私はWordPressに1つのWebサイトがありますが、他のフレームワーク(ASP.NET)に別のWebサイトを作成する必要があります。
もう一度アカウントを作成しなくても、同じログイン名とパスワードで2番目のWebサイトにログインできるようにします。
WordPressの外部でパスワードハッシュを計算するにはどうすればいいですか?私は自分の2番目のWebサイトでハッシュを生成し、それからWordPressデータベースに接続してユーザーを認証したいです。そのため、WordPressの助けを借りずに機能するはずです。データベースに直接接続するだけです。
私は WordPressのパスワードハッシュを試した が、毎回別のハッシュを返す。 SHAのように決定論的ではないのはなぜですか?
ここでもパスワードソルトは表示されません。
あなたの質問に対する答えは長くて複雑かもしれませんが、あなたはASPを使って別のウェブサイトを開発しているので、私はあなたもデータベースと統合する方法を知っていると思います。
あなたの場合に役立つ情報をいくつか追加します。
WordPressは、 がここで尋ねたように 、目的に応じて異なる塩を使用します。これらの塩はwp-config.php
にあります。あなたはあなたのハッシュを生成するためにそれを調査することを望むかもしれません。
PasswordHash
クラスを使用すると、ハッシュ化されたパスワードを生成およびカスタマイズできます。あなたの文字列に基づいてハッシュを作成し、そのCheckPassword()
メソッドを使ってデータベースからのオリジナルのハッシュと比較するためにそれを使うことができます。
すべてのユーザーのハッシュされたパスワードは、user_pass
テーブルのwp_users
行の下に格納されています。 $wpdb
クラスを使用して、ハッシュ比較に使用できます。これはREST APIによって実行できます。
ユーザーがログインしようとすると、WordPressのインストールにRESTリクエストを送信し、ハッシュを取得して比較し、それが正しい場合はASPインストールに渡します。