0

JIRA チケットAC-3349がオープンしました。問題が発生している可能性のある他の人を助けるために、ここに質問を投稿しています。同じ問題がある場合は、チケットに従ってください。

詳細: この問題は、今日発生し始めたばかりです (EST の午後 1 時 30 分頃から) - それ以前は問題なく動作していました。ArrowDB Node SDKusersLoginを使用して管理者以外のユーザーとしてサインインすると、メタ オブジェクトで返されるセッション ID は代わりに管理者ユーザーのセッション ID になります。これは、ArrowDB Node SDK を使用しusersShowMeてセッション ID を渡すことで確認できます。これにより、最初にログインしたユーザーではなく、管理者のユーザー オブジェクトが返されます。これらの API はそれ以前は正しく機能していたため、ここ 1、2 時間で何かが明らかに変化しました。2 つの異なる ArrowDB インスタンスでこれを試しましたが、問題は両方で同じです。したがって、問題は特定の ArrowDB インスタンスではなく、Appcelerator プラットフォームでの ArrowDB セッション管理の別の場所にあります。

4

1 に答える 1

0

どうやら、これは次のシナリオでのみ発生します。

まず、ユーザー A (たとえば) としてサインインし、セッション ID をどこかに保存します。次に、Node.js コードで、ArrowDB の新しいインスタンスを作成し、以前に保存したセッション ID を使用して sessionCookieString プロパティを設定します。次に、同じコード ブロックで、usersLogin メソッドを使用してユーザー B (たとえば、私の場合は管理者アカウント) としてサインインします。サインインすると、以前に保存されたセッション ID がユーザー B に「属している」ようです。これはバグだと思います。usersLogin メソッドがユーザー B の新しいセッション ID を発行し、以前に生成されたユーザー A のセッション ID をそのままにしておくと仮定します。しかし、それは起こりません。ユーザー A の以前のセッション ID がユーザー B に再割り当てされます。これは、ArrowDB SDK のバグだと思います。

回避策として、既存のインスタンスに sessionCookieString を設定した後に別のユーザー (通常は管理者アカウント) としてサインインする場合は、ArrowDB の新しいインスタンスを作成する必要があります。そうしないと、以前のセッション ID が再割り当てされます。

于 2016-03-18T13:30:11.750 に答える