1234567891011121314151617181920212223242526272829303132333435363738394041424344 |
- **Janta** is a project whose goal is to allow web services and systems to share
- their user databases, instead of having their own separate lists. The benefits
- from this are:
- - People don't need to remember/keep many passwords for the various services
- they use
- - Services make themselves open for access by many people without effort, by
- trusting an existing user list
- - A web of trust allows the user list to grow without centralized control,
- building a strong community with power to the people
- "Janta" means "people" in Hindi, at least according to Wiktionary. See there
- for the precise spelling of the word.
- The very first step is currently planned to be an attempt to share a user
- database between two separate services. Currently I'd like to try sharing the
- user database of [[Freepost|http://freepo.st]] with this wiki, so that any user
- registered there can make web edits here. This plan may change, depending on
- ikiwiki's support for the access method which will be chosen.
- Right now it seems the user DB there is stored in a MySQL database. The schema
- is
- [[here|https://notabug.org/zPlus/freepost/src/master/freepo.st-web/php-include/src/AppBundle/Resources/config/doctrine/User.orm.yml]].
- I could research LDAP, or just have that database configured to give this wiki
- read access. It's also possible to give it global read access, but that could
- cause spam and denial of service. For an initial experiment, it's unnecessary.
- I couldn't find any info about using an SQL query to authenticate users. Maybe,
- if it's not too complicated, I can write a plugin for that. A modified version
- of the default `passworsauth` plugin, which uses an SQL query to verify user
- and password match if they can't be found in the local userdb.
- Ideas and next steps:
- - See if a MySQL plugin for ikiwiki can be written
- - Read about ways to share users: SQL, NoSQL, LDAP, WebDAV, OpenID, Persona
- - Exactly how does OpenID work? What's special about it?
- - Same, for Mozilla Persona
- - Think about "novel" ways, such as synchronizing the userdb between all the
- servers using it, in a distributed manner
- - Run an initial plan, e.g. an LDAP server with basic user info, and access
- management (e.g. maybe some service needs just user/pass and should access
- people's e-mail addresses, which another service does need e-mail)
|