https://github.com/movableink/doorman
HTTP Proxy + OAuth
https://github.com/movableink/doorman
Last synced: 10 months ago
JSON representation
HTTP Proxy + OAuth
- Host: GitHub
- URL: https://github.com/movableink/doorman
- Owner: movableink
- License: mit
- Created: 2012-01-15T09:28:54.000Z (over 14 years ago)
- Default Branch: master
- Last Pushed: 2023-10-06T19:43:36.000Z (over 2 years ago)
- Last Synced: 2024-04-15T12:29:03.382Z (about 2 years ago)
- Language: JavaScript
- Homepage:
- Size: 444 KB
- Stars: 167
- Watchers: 55
- Forks: 54
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
DOORMAN
=======
Doorman is an http proxy that authenticates via OAuth.
Your organization probably has some internal services that need to be
password-protected. You likely also already manage users using an external
service. (Github, Google Apps, etc) Wouldn't it be nice if you could
delegate your internal app's authentication/authorization to that app?

Requirements
------------
* node.js >= 0.8.x
Installation
------------
* `npm install`
* copy conf.example.js to conf.js and modify
* `npm start`
Strategies
----------
Doorman uses [everyauth](https://github.com/bnoguchi/everyauth) for authenticating,
so it supports a wide variety of providers for authentication. For authorization,
we need to determine which authenticated users to let in. (see `lib/modules`) So
far only the Github and Google modules are complete, but others are fairly easy.
Acknowledgements
----------------
Doorman is pretty much just everyauth (https://github.com/bnoguchi/everyauth) and
node-http-proxy (https://github.com/nodejitsu/node-http-proxy) grafted together,
and those two projects do most of the heavy lifting.
Changelog
---------
#### 0.4.1
* bump http-proxy version to fix #32 (AlexRRR)
#### 0.4.0
* _breaking_: simplify session cookie config. (see conf.example.js) (kcrayon)
* pass config file as a second argument (kcrayon)
* google auth only prompts user when necessary (kuahyeow)
* reduce github permissions to minimum necessary (dwradcliffe)
* https support (AndrewJo)
* conf.environment.js config for using environment variables (pataquets)
* replace winston logging with stdout/stderr
#### 0.3.0
* `requiredEmail` option for github and google modules
* `requiredDomain` and `requiredOrganization` options can be arrays
* /_doorman/logout route
* Upgrade everyauth to 0.4.9 (#18)
License
-------
Licensed under the MIT License. See LICENSE.