Title: Firebase Auth token with null email address is resulting in a null User · Issue #189 · cloudendpoints/endpoints-java · GitHub
Open Graph Title: Firebase Auth token with null email address is resulting in a null User · Issue #189 · cloudendpoints/endpoints-java
X Title: Firebase Auth token with null email address is resulting in a null User · Issue #189 · cloudendpoints/endpoints-java
Description: I am running into an issue with users being unable to call my backend API that is guarded by Endpoints Framework. I've traced the issue to the below line of code within Auth. authenticateAppEngineUser. endpoints-java/endpoints-framework/...
Open Graph Description: I am running into an issue with users being unable to call my backend API that is guarded by Endpoints Framework. I've traced the issue to the below line of code within Auth. authenticateAppEngineU...
X Description: I am running into an issue with users being unable to call my backend API that is guarded by Endpoints Framework. I've traced the issue to the below line of code within Auth. authenticateAppEng...
Opengraph URL: https://github.com/cloudendpoints/endpoints-java/issues/189
X: @github
Domain: github.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Firebase Auth token with null email address is resulting in a null User","articleBody":"I am running into an issue with users being unable to call my backend API that is guarded by Endpoints Framework. I've traced the issue to the below line of code within `Auth. authenticateAppEngineUser`.\r\n\r\nhttps://github.com/cloudendpoints/endpoints-java/blob/39b73744c9ee4e39e94d6d11638ba34810e5de07/endpoints-framework/src/main/java/com/google/api/server/spi/request/Auth.java#L103\r\n\r\nThe circumstances surrounding this issue has to do with accounts that have been created which do not have an associated email address. A reproducible example is if a user signs in with Facebook, where the Facebook account itself was created using a mobile number.\r\n\r\nPer the Firebase documentation guidance, I am using the EspAuthenticator as described here:\r\nhttps://cloud.google.com/endpoints/docs/frameworks/java/authenticating-users#authenticating_with_firebase_auth\r\n\r\nNote: The JWT is parsing fine, and I can see that the user ID is set correctly, it's just the email that is null.\r\n\r\nThe majority of my Firebase accounts authenticate perfectly fine, it's this limited subset of users without email addresses that has the issue.\r\n\r\nI can see that the `com.google.appengine.api.users.User` class expects the email address is never null, so I can understand that the email check is avoiding the eventual NullPointerException that would occur during construction. However, why couldn't the presence of either email or user ID be enough to have a valid `User` object? I do not require the email for any of my API code.","author":{"url":"https://github.com/fwpascual","@type":"Person","name":"fwpascual"},"datePublished":"2020-06-19T19:25:57.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/189/endpoints-java/issues/189"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:1ac00940-9f61-4a24-01a9-744baf941546 |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | A8FE:2A256:B2670C:10123EB:6A4E44D8 |
| html-safe-nonce | 1500639682a81551ec4801ac37d2d8f3ab3275b6983eba6af76a40f08a62b0ec |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJBOEZFOjJBMjU2OkIyNjcwQzoxMDEyM0VCOjZBNEU0NEQ4IiwidmlzaXRvcl9pZCI6IjYyMTAzNzgwNTMwMDYwMTc3NTIiLCJyZWdpb25fZWRnZSI6ImlhZCIsInJlZ2lvbl9yZW5kZXIiOiJpYWQifQ== |
| visitor-hmac | 871b1da32d3ada0b6fec8c98b8b4bd562f3a045eb05f5537cf8bebb2bf99b22b |
| hovercard-subject-tag | issue:642177231 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/cloudendpoints/endpoints-java/189/issue_layout |
| twitter:image | https://opengraph.githubassets.com/26860117071d7f6077294d2e69c876ac8e8bc67e3ca3e60dac44e0c1e74e7204/cloudendpoints/endpoints-java/issues/189 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/26860117071d7f6077294d2e69c876ac8e8bc67e3ca3e60dac44e0c1e74e7204/cloudendpoints/endpoints-java/issues/189 |
| og:image:alt | I am running into an issue with users being unable to call my backend API that is guarded by Endpoints Framework. I've traced the issue to the below line of code within Auth. authenticateAppEngineU... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | fwpascual |
| hostname | github.com |
| expected-hostname | github.com |
| None | 030096ee0db095447bfe77409d33bfac127ca7128299c58deef27c52eaa1b1f0 |
| turbo-cache-control | no-preview |
| go-import | github.com/cloudendpoints/endpoints-java git https://github.com/cloudendpoints/endpoints-java.git |
| octolytics-dimension-user_id | 19231370 |
| octolytics-dimension-user_login | cloudendpoints |
| octolytics-dimension-repository_id | 65349739 |
| octolytics-dimension-repository_nwo | cloudendpoints/endpoints-java |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 65349739 |
| octolytics-dimension-repository_network_root_nwo | cloudendpoints/endpoints-java |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | 9fabff9b8b127e686a3ec86f91422e818056ca2c |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width