android / android/security-samples

Fido app: Missing or invalid authentication

Open
#83 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Kotlin
Stars
1k
Forks
450
PR merge metrics
No merged PRs in 30d

Description

When starting the Fido app you can sign in using a Google account and afterwards logcat shows the following error
```
GAEService: Error extracting information from server's registration request
GAEService: com.google.api.client.googleapis.json.GoogleJsonResponseException: 503 Service Unavailable
GAEService: GET https://webauthndemo.appspot.com/_ah/api/fido2RequestHandler/v1/get/register
GAEService: {
GAEService: "code": 503,
GAEService: "errors": [
GAEService: {
GAEService: "domain": "global",
GAEService: "message": "com.google.appengine.api.datastore.DatastoreFailureException: Missing or invalid authentication.",
GAEService: "reason": "backendError"
GAEService: }
GAEService: ],
GAEService: "message": "com.google.appengine.api.datastore.DatastoreFailureException: Missing or invalid authentication."
GAEService: }
GAEService: at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:113)
GAEService: at com.google.api.client.googleapis.services.json.AbstractGoogleJsonClientRequest.newExceptionOnError(AbstractGoogleJsonClientRequest.java:40)
GAEService: at com.google.api.client.googleapis.services.AbstractGoogleClientRequest$1.interceptResponse(AbstractGoogleClientRequest.java:321)
GAEService: at com.google.api.client.http.HttpRequest.execute(HttpRequest.java:1111)
GAEService: at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:419)
GAEService: at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.executeUnparsed(AbstractGoogleClientRequest.java:352)
GAEService: at com.google.api.client.googleapis.services.AbstractGoogleClientRequest.execute(AbstractGoogleClientRequest.java:469)
GAEService: at com.fido.example.fido2apiexample.GAEService.getRegistrationRequest(GAEService.java:105)
GAEService: at com.fido.example.fido2apiexample.Fido2DemoActivity$11.call(Fido2DemoActivity.java:472)
GAEService: at com.fido.example.fido2apiexample.Fido2DemoActivity$11.call(Fido2DemoActivity.java:468)
GAEService: at com.google.android.gms.tasks.zzy.run(com.google.android.gms:play-services-tasks@@17.2.0:2)
GAEService: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1167)
GAEService: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:641)
GAEService: at java.lang.Thread.run(Thread.java:923)
Fido2DemoActivity: Register request is null
```

Contributor guide

Open the contributing guide

Research direction

The failure path is shown in GAEService.java:105 and Fido2DemoActivity.java:468-472; start by reproducing the sign-in flow and inspecting the registration-request call and its null result. Done means the Fido app obtains a valid registration request after Google sign-in without the logged 503 or “Register request is null” output.

Written by the indexing model from the issue text.

Assessment

Tech stack
android, google-cloud, java, kotlin
Domain
authentication, backend, security
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
30/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.