5 ms·
I want to be my own identity provider, which ever web technology, php, ruby, python, JavaScript.
by jeena 13y ago
I want to be my own identity provider, which ever web technology, php, ruby, python, JavaScript.
- ozten 13y agoThis is a NodeJS personal project that I use to host my identity: https://github.com/ozten/hostedpersona https://github.com/ozten/hostedpersona https://ozten.com/.well-known/browserid https://ozten.com/.well-known/browserid (a static website) delegates to https://hostedpersona.me/.well-known/browserid https://hostedpersona.me/.well-known/browserid which I run on an ec2 instance. This clearly isn't as polished as aptitude install, but feel free to fork and play.
- StavrosK 13y agoI wrote a service so you don't have to do any of that: https://persowna.net/ https://persowna.net/ Just add the .well-known file to your site, and that's it. EDIT: Actually, I might just open-source this and keep the hosted version for people who want convenience.
- callahad 13y agoDude, that's awesome! I didn't know you were ready to accept sign-ups. Will try to mention it more often. :)
- StavrosK 13y agoMan I told you about it like three times on IRC (and that was your response then, too)! :P It's still early-stage, but it works very well for plain authentication. Next step is two-factor auth.
- thoughtpalette 13y agoSide note, Your font differs on https://persowna.net/pricing/ https://persowna.net/pricing/ and https://persowna.net/ https://persowna.net/ for the logotype. Awesome job on the site!
- StavrosK 13y agoOops, good catch! Thanks! EDIT: This is really odd, it's the exact same HTML/CSS, yet a different typeface. Weird. EDIT 2: It would help if I had actually included the font in the header. Thanks again :)
- seanmonstar 13y agoWhichever technology you want to use is fine. You need to publish 3 routes: /.well-known/browserid, an auth route, and a provision route. The auth and provision routes need to be HTML pages that authenticate you however you want, and then sign a certificate with your key that you publish the .well-known file. Here's how we did it for Gmail: https://github.com/mozilla/browserid-sideshow/blob/master/bin/sideshow.js#L164-L237 https://github.com/mozilla/browserid-sideshow/blob/master/bi...
- Lukasa 13y agoI wrote a blog post about implementing an IdP from scratch in Python. (Uses Django, but the lessons should be transferable). https://lukasa.co.uk/2013/04/Writing_A_Persona_Identity_Provider/ https://lukasa.co.uk/2013/04/Writing_A_Persona_Identity_Prov...