私は1人のユーザーしかアクティブな状態(つまりログイン)である必要があり、他のユーザーは同じ資格情報を使ってログインできません。私はIonic + AngularJs(ハイブリッド)モバイルアプリを使って他のものを制限する必要があります。最初の人物が既にログインしているときに二人目のログインを防止する方法
現在、Hybridフレームワークとして、Java側とクライアント側のサーバー側を使用しています。ユーザーは、それはそれは同じではありませんトークン基本認証を生成し、すべてのREST APIサービスコールのthert後
login: function(userName, password, authTokenValue) {
var loginPath = '/login/' + userName + '/' + password;
//calling loginCustomer rest service
return $resource(host + loginPath, {}, {
query: {
headers: {
'X-Auth-Token': authTokenValue
},
method: 'GET'
}
});
}
として生成されたトークンを送信していますし、トークンは、ユーザー名とパスワードに基づいて生成されたログイン時 と(すなわち、ランダムに生成しますトークンの値) しかし、私は任意のユーザーのための任意のセッションを維持していないが、私は、ユーザーがすでにログインしているときに同じ資格情報を使用してこれらのサービスにアクセスすることができないという要件があります。
どうすればいいですか? 私の悪い英語を申し訳ありません。
実際に私はinbuild関数を使用してそれを行う方法はありません。もし私がそれをしなければならない場合、病気はこのようにします。最後に記録したIP、ログイン時間、ログアウト時間を保存し、次回のユーザログイン時に比較します。 –
おそらく、あなたは並行セッション制御を探しています:http://docs.spring.io/spring-security/site/docs/3.1.x/reference/ns-config.html#ns-concurrent-sessions –
@SlavaSemushin I私のサーバー側でも同じ概念を使用していました。 **ログイン(アクティブ)の最初のユーザーと同じ資格情報を持つ次のユーザーのログイン、次に2番目のユーザーがアクティブになり、最初のユーザーが非アクティブなモードになる** – Sai