私は別のアプリケーションのAPIを使用するプロジェクトに取り組んでいます。だから、私は自分のアプリでパスワードを検証しないで、APIリクエストでこれを行います。私はユーザーのパスワードをdbに保存したくありません。 APIでパスワードを確認するだけです。Yii2ログインパスワードなしで認証
ログイン資格情報なしでユーザーを認証するにはどうすればよいですか? Yiiの2で
私は別のアプリケーションのAPIを使用するプロジェクトに取り組んでいます。だから、私は自分のアプリでパスワードを検証しないで、APIリクエストでこれを行います。私はユーザーのパスワードをdbに保存したくありません。 APIでパスワードを確認するだけです。Yii2ログインパスワードなしで認証
ログイン資格情報なしでユーザーを認証するにはどうすればよいですか? Yiiの2で
ログイン&セッションは、このクラスには、\Yii::$app->user
プロパティを介してアプリケーションのライフサイクルでアクセス\yii\web\User
クラス によって管理されています。あなたはYii::$app->user->login($identity)
$identity
を使用してlogin()
機能を使用するサードパーティのプロバイダを使用して認証が成功
は
がために、認証にguide documentationを参照してください、このインタフェースを実装し、通常はユーザーのActiveRecordモデル[IdentityInterface][4]
のオブジェクトでなければなりませんYii2の認証方法についての完全な理解
私たちのアプリでは、フィールドにはauth_key私たちは、このリンクに行くRモデルと、その後は、このAUTH_KEYにより、データベース内のユーザーを検索し、(それがデータベース内で見つからない場合やない)ログインを行いそれでは
public actionAuthLogin($auth_key){
if(($user = User::findOne(['auth_key' => $auth_key]))
&& \Yii:$app->user->login($user)){
return $this->goHome();
} else {
throw new NotFoundHttpException()
}
}
/controller/auth-login?auth_key=should_be_in_database_ahsgdashdajsdg123mkasd
私は、ユーザーの資格情報が有効かどうかをAPIでチェックし、もし有効であれば、与えられた電子メールを使ってデータベースからuser_idを見つけ出し、Yii :: $ app-> user-> login($ identity)をどのように使うのでしょうか? –
'$ identity'は' User :: findOne($ user_id) '(UserにIdentityInterfaceを実装している場合)です。 – Manquer