Marketplace user randomly logged out of Persona: Forbidden: that email requires (re)verification

RESOLVED FIXED

Status

Marketplace
Consumer Pages
RESOLVED FIXED
5 years ago
5 years ago

People

(Reporter: krupa, Unassigned)

Tracking

Points:
---

Details

(Reporter)

Description

5 years ago
The current expected behavior is that once a user logs into Marketplace using persona, we don't log them out unless 

a) they log out
b) reset their PIN
c) things go wrong and their persona cookie gets deleted for whatever reason.

However, many users have noticed that they get signed out of marketplace and are prompted to sign in when they try to make a purchase.

Please investigate. Kumar has the logs.
Jed, do you have any idea on why this logout happens? The last one I saw happen to me (email starting with kumar.mcmillan) was just before 5:40am PDT.

I can verify that onLogout() from watch() triggered this and I see "Forbidden: that email requires (re)verification"

E/profiler(  867): Registering start signal
E/GeckoConsole(  867): [JavaScript Warning: "Unknown property '-moz-align-self'.  Declaration dropped." {file: "resource://gre-resources/ua.css" line: 44}]
I/Gecko   (  867): ###################################### forms.js loaded
I/Gecko   (  867): ############################### browserElementPanning.js loaded
I/Gecko   (  867): ######################## BrowserElementChildPreload.js loaded
I/GeckoDump(  109): XXX FIXME : Got a mozContentEvent: undefined
I/Gecko   (  109): Identity SignInToWebsiteController: Loaded shim chrome://browser/content/identity.js
I/Gecko   (  109):
E/GeckoConsole(  109): Identity SignInToWebsiteController: Loaded shim chrome://browser/content/identity.js
I/Gecko   (  867): Identity injected identity.js:
I/Gecko   (  867):
I/Gecko   (  867): ======================= identity.js =======================
I/Gecko   (  867):
I/Gecko   (  867):
E/GeckoConsole(  867): Identity injected identity.js:
E/GeckoConsole(  867):
E/GeckoConsole(  867): ======================= identity.js =======================
E/GeckoConsole(  867):
I/Gecko   (  867): Identity injected identity.js: injected identity.js received identity-delegate-watch
E/GeckoConsole(  867): Identity injected identity.js: injected identity.js received identity-delegate-watch
I/Gecko   (  867): Identity injected identity.js: doInternalWatch: {
I/Gecko   (  867):   "id": 20,
I/Gecko   (  867):   "origin": "https://marketplace.allizom.org"
I/Gecko   (  867): } false
E/GeckoConsole(  867): Identity injected identity.js: doInternalWatch: {
E/GeckoConsole(  867):   "id": 20,
E/GeckoConsole(  867):   "origin": "https://marketplace.allizom.org"
E/GeckoConsole(  867): } false
E/GeckoConsole(  867): [JavaScript Error: "uncaught exception: target window is same as present window -- not allowed"]
I/Gecko   (  867): Identity injected identity.js: doInternalWatch: {
I/Gecko   (  867):   "id": 20,
I/Gecko   (  867):   "origin": "https://marketplace.allizom.org"
I/Gecko   (  867): } true
E/GeckoConsole(  867): Identity injected identity.js: doInternalWatch: {
E/GeckoConsole(  867):   "id": 20,
E/GeckoConsole(  867):   "origin": "https://marketplace.allizom.org"
E/GeckoConsole(  867): } true
I/Gecko   (  867): Identity injected identity.js: (watch) internal:  [
I/Gecko   (  867):   "internal watch options",
I/Gecko   (  867):   {
I/Gecko   (  867):     "id": 20,
I/Gecko   (  867):     "origin": "https://marketplace.allizom.org"
I/Gecko   (  867):   }
I/Gecko   (  867): ]
E/GeckoConsole(  867): Identity injected identity.js: (watch) internal:  [
E/GeckoConsole(  867):   "internal watch options",
E/GeckoConsole(  867):   {
E/GeckoConsole(  867):     "id": 20,
E/GeckoConsole(  867):     "origin": "https://marketplace.allizom.org"
E/GeckoConsole(  867):   }
E/GeckoConsole(  867): ]
I/Gecko   (  867): Identity injected identity.js: (watch) internal:  [
I/Gecko   (  867):   "checking and emitting"
I/Gecko   (  867): ]
E/GeckoConsole(  867): Identity injected identity.js: (watch) internal:  [
E/GeckoConsole(  867):   "checking and emitting"
E/GeckoConsole(  867): ]
I/Gecko   (  867): Identity injected identity.js: (watch) internal:  [
I/Gecko   (  867):   "silent return: err",
I/Gecko   (  867):   {
I/Gecko   (  867):     "network": {
I/Gecko   (  867):       "type": "POST",
I/Gecko   (  867):       "url": "/wsapi/cert_key",
I/Gecko   (  867):       "status": 403,
I/Gecko   (  867):       "textStatus": 403,
I/Gecko   (  867):       "errorThrown": "Forbidden: that email requires (re)verification",
I/Gecko   (  867):       "responseText": "Forbidden: that email requires (re)verification"
I/Gecko   (  867):     },
I/Gecko   (  867):     "eventTime": "2013-04-25T12:37:10.361Z",
I/Gecko   (  867):     "duration": 825
I/Gecko   (  867):   }
I/Gecko   (  867): ]
E/GeckoConsole(  867): Identity injected identity.js: (watch) internal:  [
E/GeckoConsole(  867):   "silent return: err",
E/GeckoConsole(  867):   {
E/GeckoConsole(  867):     "network": {
E/GeckoConsole(  867):       "type": "POST",
E/GeckoConsole(  867):       "url": "/wsapi/cert_key",
E/GeckoConsole(  867):       "status": 403,
E/GeckoConsole(  867):       "textStatus": 403,
E/GeckoConsole(  867):       "errorThrown": "Forbidden: that email requires (re)verification",
E/GeckoConsole(  867):       "responseText": "Forbidden: that email requires (re)verification"
E/GeckoConsole(  867):     },
E/GeckoConsole(  867):     "eventTime": "2013-04-25T12:37:10.361Z",
E/GeckoConsole(  867):     "duration": 825
E/GeckoConsole(  867):   }
E/GeckoConsole(  867): ]
I/Gecko   (  867): Identity injected identity.js: (watch) internal:  [
I/Gecko   (  867):   "doLogout"
I/Gecko   (  867): ]
E/GeckoConsole(  867): Identity injected identity.js: (watch) internal:  [
E/GeckoConsole(  867):   "doLogout"
E/GeckoConsole(  867): ]
I/Gecko   (  109): Identity DOMIdentity: doLogout: 20
E/GeckoConsole(  109): Identity DOMIdentity: doLogout: 20
I/Gecko   (  867): Identity injected identity.js: (watch) internal:  [
I/Gecko   (  867):   "doReady"
I/Gecko   (  867): ]
E/GeckoConsole(  867): Identity injected identity.js: (watch) internal:  [
E/GeckoConsole(  867):   "doReady"
E/GeckoConsole(  867): ]
I/Gecko   (  109): Identity DOMIdentity: doReady: 20
E/GeckoConsole(  109): Identity DOMIdentity: doReady: 20
I/Gecko   (  109): Identity SignInToWebsiteController: received delegate finished; telling content to close the dialog
E/GeckoConsole(  109): Identity SignInToWebsiteController: received delegate finished; telling content to close the dialog
I/GeckoDump(  109): XXX FIXME : Got a mozContentEvent: undefined
I/Gecko   (  109): Identity SignInToWebsiteController: No more watchers; clean up persona host iframe
E/GeckoConsole(  109): Identity SignInToWebsiteController: No more watchers; clean up persona host iframe
I/Gecko   (  109): Identity SignInToWebsiteController: telling content to close the dialog
E/GeckoConsole(  109): Identity SignInToWebsiteController: telling content to close the dialog
E/GeckoConsole(  109): Content JS LOG at https://marketplace.allizom.org/mozpay/media/js/pay-min.js?build=b0ecbba:6 in anonymous: nav.id onlogout
E/GeckoConsole(  109): Content JS LOG at https://marketplace.allizom.org/mozpay/media/js/pay-min.js?build=b0ecbba:6 in anonymous: default onLogout
Summary: Check why marketplace user gets randomly logged out of Persona → Marketplace user randomly logged out of Persona: Forbidden: that email requires (re)verification
Thanks for the report and the logs.  Is this new behavior that started occurring yesterday?
Flags: needinfo?(krupa.mozbugs)
Yes, we only started seeing it today
Flags: needinfo?(krupa.mozbugs)
I think this ought to have been fixed when we fixed this issue: https://github.com/mozilla/browserid/issues/3033 (certificates were expiring prematurely)

Are you still experiencing this problem?  Or can we close this?
Flags: needinfo?(krupa.mozbugs)
(Reporter)

Comment 5

5 years ago
I haven't this in a while. Marking as fixed for verification
Status: NEW → RESOLVED
Last Resolved: 5 years ago
Flags: needinfo?(krupa.mozbugs)
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.