I have a website that uses firebase authentication and I want to use these same login details for discourse, whats the best way to achieve this?
Discourse SSO with Firebase (Discourse Connect)
694 Views Asked by chantey At
1
There are 1 best solutions below
Related Questions in FIREBASE
- Protect OpenAI key using Firebase function
- How to read new child from firebase in an android app?
- Why do I need to wait to reaccess to Firestore database even though it has already done before?
- Firebase storage : How to load images faster in flutter
- Hi, there is an error happened when I build my flutter app, after I'm installing firebase packages occurs that error
- Kotlin Version Error in Integration of Firebase
- How to add and retrive pdf file on firebase in jetpack compose
- I am getting "binding has not yet been initialized" error when trying to connect firebase with flutter
- I created a domain name from cloudflare, and Hoisted my static site hosted in google firebase, error in adding custom domain in firebase
- Can Anyone help me to load pdf file from firebase to user app by URL in jetpack compose?
- chatbot respond to onequery type
- I just cant make it work, HTML, JS and Firebase error
- Blog Post URL In flutter Web
- sendPasswordResetEmail Firebase Auth method deleting other sign in providers accounts (facebook, github, etc)
- Setting document field value using Firestore Functions
Related Questions in SINGLE-SIGN-ON
- Generate Databricks personal access token using REST API
- Allow external users to login using custom SAML app in Google Admin
- Handling errors in MSAL Redirect - reactjs login with microsoft sso
- How would single sign-on work for my multi-tenant application?
- How can we make an environment specific Token-based authorization using Ping Token?
- Is it possible to integrate Looker Studio with websites without keeping it public, to preserve data?
- OKTA SSO Driven API Invocation
- Is there any way to login SSO using RestAssured or using any API calls?
- Is it possible to interact with SSO between Website A and Website B?
- SSO to Grafana embeded in iframe
- Secure React App and .net 6 apis with Keycloack
- Integrating one tap sign in with phone from phone email - Converting html and javascript code to React JS
- I need SSO and Maven to work together in a Tomcat 9 Eclipse project, I have check the usual suspects but I think I missed something
- Firebase Authentication SAML resource metadata file
- How to add ForceAuthn flag on AWS cognito
Related Questions in DISCOURSE
- Why does logster need a redis connection while building asset:precompile?
- Installing Discourse in Multiple Containers
- Can i deploy discourse forum on deb11 with bare ip address?
- How to add a multi-line text field to a Discourse Community signup page?
- How to install discourse forum along with multiple sites via varnish & hitch proxy
- How to Redirecting HTTP to HTTPS, while terminating ssl via apache and varnish configuration
- Create a Discourse topic and immediately reply to that newly created topic
- Track Down Ruby-on-Rails "RunTimeError"
- Install discourse with helm charts
- Cannot set more than 1 cookie in ruby on rails
- Cannot connect to Protonmail Bridge SMTP (host machine) from a Docker container
- Installing rbtrace 0.4.14 with native extensions Gem::Ext::BuildError: ERROR: Failed to build gem native extension
- Discourse SSO with Firebase (Discourse Connect)
- Why does secondary subdomain for Discourse in AWS fail?
- Python script: json.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
1. Using Redirects
This is the workflow I have found the most elegant. It allows sign in from discourse with a single click as long as you are signed in on the main site, because firebase auth will auto-sign-in on visit.
The flow of data is like this:
forum -> sitesite -> serverserver -> site -> forumHere is the code used to create this:
forum- Discourse Connect Urlsite- page visit handlerThis part should go on your website when people visit
/forum-sign-in. It will automatically trigger the sso flow once they are signed in, which will happen automatically if they have previously signed in.server- auth handlerI'm using firebase functions here, but as long as you have access to
firebase-adminyou can use whatever backend you like. Also this example includes some firestore stuff for usernames etc, which is not required.2. Using Cookies
The second method is one I had trouble with because my server is on a different domain from the client and forum. This means that Safari will treat the cookies as third party and give you a hard time when trying to pass them around. If this isn't the case for you, check out this discussion and this GitHub gist. The credentials are all the same, the only difference is how they are passed around. It is something like this:
site -> serverserver -> siteforum -> serverserver -> forum