Commit graph

321 commits

Author SHA1 Message Date
Eric Chiang
f738188c13 db: switch migration source to use in-memory migration
When reading migrations from files, sql-migrate attempts to split
SQL statements. The parsing logic does not handle $BODY$ statements
and broke when the migration included one.

Replace go-bindata with a small migration generation script and use
in memory migrations instead.
2016-03-01 10:55:05 -08:00
Eric Chiang
208afd3b01 *: add functional tests for case insensitive emails 2016-03-01 10:54:12 -08:00
Eric Chiang
9bc68edae7 *: add migration to convert all emails to lowercase
Fixes #338
2016-03-01 10:51:50 -08:00
Eric Chiang
118bbb6d18 Merge pull request #335 from ericchiang/fix_passwords
user: fix password info JSON encoding to survive round trips
2016-02-24 13:55:43 -08:00
Eric Chiang
221a1ad7a0 user: fix password info JSON encoding to survive round trips
PasswordInfos are marshaled when storing them in the database as
part of the local connector. However, the custom unmarsheler
defined could not unmarshal the standard marshling of this struct.

Add a struct tag to the Password field to correct this.

Closes #332
2016-02-23 16:25:56 -08:00
bobbyrullo
f51125f555 Merge pull request #304 from ericchiang/sqlite3
move to sqlite3 for --no-db mode and tests
2016-02-19 16:03:15 -08:00
Eric Chiang
9ca27a2035 Merge pull request #322 from ericchiang/update_roadmap
Documentation: update roadmap with issue and PR numbers
2016-02-19 10:04:55 -08:00
Eric Chiang
a7bd437c25 Documentation: update roadmap with issue and PR numbers
Closes #299
2016-02-18 11:08:03 -08:00
Eric Chiang
a58b9c268b Merge pull request #321 from ericchiang/add_go_1_6
*: add go 1.6 to CI
2016-02-17 16:52:04 -08:00
Eric Chiang
abc91564ba *: add go 1.6 to CI 2016-02-17 16:32:46 -08:00
Eric Chiang
f1d0e307ec session: remove unused function argument 2016-02-16 18:20:48 -08:00
Eric Chiang
ed5dee9960 db: clean up quote and executor function calls, improve translate docs 2016-02-16 18:19:23 -08:00
Eric Chiang
aff47d2cb2 Merge pull request #317 from fnordahl/connector_ldap_make_const_defaults
connector_ldap: Make constants for default values, simplify logic
2016-02-16 16:06:35 -08:00
Eric Chiang
2cc0ae6fac functional: remove in memory connector configs from ldap tests 2016-02-16 15:21:38 -08:00
Frode Nordahl
bedd4716b9 Make constants for default values, simplify logic 2016-02-16 23:58:41 +01:00
Eric Chiang
dc9e596542 Merge pull request #315 from fnordahl/issue/314-entryDN-does-not-exist
Get DN from entry, not entryDN attribute
2016-02-16 09:44:32 -08:00
Frode Nordahl
508c24b10e Get DN from entry, not entryDN attribute
Not all LDAP servers have entryDN available as an attribute. Reading up on
https://tools.ietf.org/html/rfc5020 tells me that entryDN is intended for
making the DN available for attribute value assertions. Thus it is not
mandatory for a LDAP server to make it available as an retrievable
attribute.

The DN is always a part of the entry returned in a search result, just use
it.

Fixes #314
2016-02-14 09:33:38 +01:00
Eric Chiang
1658e86b2a *: fix govet warnings 2016-02-12 13:19:05 -08:00
Eric Chiang
07236da1e7 *: use go install instead of go build in build script
go-sqlite3 takes a long time to compile, so it's very important
to cache a build rather than re-compile every time.

Use go install instead of go build in the build script to cache
all packages. Print a warning in the test script if cached packages
are not found.
2016-02-12 13:19:05 -08:00
Eric Chiang
07af73f367 *: don't allow sqlite3 if --no-db flag not specified 2016-02-12 13:19:05 -08:00
Eric Chiang
3b125d6073 *: fix --no-db client decoding 2016-02-12 13:19:05 -08:00
Eric Chiang
dcf5835189 *: remove in memory connector config repo 2016-02-12 13:19:05 -08:00
Eric Chiang
b572b8dd6c *: remove in memory client repo
The DB implementation expects secrets to be base64 encoded blobs.
Because of this a bunch of tests broke moving to sqlite.

A lot of this commit is fixing those tests.
2016-02-12 13:19:05 -08:00
Eric Chiang
72d1ecab64 *: remove in memory password info repo 2016-02-12 13:19:05 -08:00
Eric Chiang
2726f4dcdf *: remove in memory user repo 2016-02-12 13:19:05 -08:00
Eric Chiang
95560404a3 *: remove in memory refresh repo 2016-02-12 13:19:05 -08:00
Eric Chiang
7bac93aa20 *: remove in memory session repos
Move manager to it's own package so it can import db. Move all
references to the in memory session repos to use sqlite3.
2016-02-12 13:19:05 -08:00
Eric Chiang
5052d8007f functional: clean up functional tests
Adjust logic and remove panics from functional tests.
2016-02-12 13:19:05 -08:00
Eric Chiang
bfd63b7514 db: add sqlite3 support 2016-02-12 13:19:05 -08:00
Eric Chiang
8f16279f49 Godeps: add sqlite3 2016-02-12 13:19:05 -08:00
Eric Chiang
cd72a1f69f Merge pull request #178 from fnordahl/ldap_connector
connector: add LDAP connector
2016-02-12 11:30:21 -08:00
Frode Nordahl
4d970d5fc4 connector: add LDAP connector
Authentication is performed by binding to the configured LDAP server using
the user supplied credentials. Successfull bind equals authenticated user.

Optionally the connector can be configured to search before authentication.
The entryDN found will be used to bind to the LDAP server.

This feature must be enabled to get supplementary information from the
directory (ID, Name, Email). This feature can also be used to limit access
to the service.

Example use case: Allow your users to log in with e-mail address instead of
the identification string in your DNs (typically username).

To make re-use of HTTP form handling code from the Local connector possible:
- Implemented IdentityProvider interface
- Moved the re-used functions to login_local.go

Fixes #119
2016-02-11 18:30:16 +01:00
Frode Nordahl
bb53e5bb81 Godeps: add ldap and asn1-ber library 2016-02-11 18:30:15 +01:00
Eric Chiang
8bfe5d92fc Merge pull request #307 from ericchiang/google_group
README: add note about roadmap and google group
2016-02-10 14:21:53 -08:00
Eric Chiang
9dd1c4bb41 README: add note about roadmap and google group
Closes #297
2016-02-10 09:52:05 -08:00
Eric Chiang
907f536e74 Merge pull request #273 from ericchiang/version
cmd: add version to command worker and overlord, print go version
2016-02-05 09:30:48 -08:00
Eric Chiang
232a6103f9 Merge pull request #285 from ericchiang/api_docs
add generated documentation for APIs
2016-02-01 16:26:05 -08:00
Eric Chiang
af790e46bb Merge pull request #267 from ericchiang/metadata
add dynamic client registration
2016-02-01 16:25:57 -08:00
Eric Chiang
e6963f078a schema: regenerate schemas with markdown documentation 2016-02-01 16:09:39 -08:00
Eric Chiang
c7ed4fdd60 pkg,cmd: add document generator tool 2016-02-01 16:09:23 -08:00
Eric Chiang
04cd1851aa server: add dynamic client registration 2016-02-01 16:06:46 -08:00
Eric Chiang
0ceecbaa72 Merge pull request #271 from ericchiang/proposals
Documentation: move proposals to their own sub directory
2016-02-01 11:32:22 -08:00
Eric Chiang
5961122c80 Merge pull request #291 from Tecsisa/admintest
admin: tests do not compile (Fixes #257)
2016-01-28 09:34:32 -08:00
miguelcubillo
4c7fc43296 admin: Fix compile errors in test script
includes admin in the test script and fix the api_test compile errors

Fixes #257
2016-01-27 09:21:58 +01:00
Eric Chiang
c7606ae320 Merge pull request #296 from set321go/master
worker start command missing registration and emailer config.
2016-01-26 20:46:20 -08:00
Alex Edwards
4741017055 worker start command missing registration and emailer config. exported as env variables like other properties. 2016-01-26 20:40:50 -08:00
Eric Chiang
1bc004e5b3 Merge pull request #294 from ericchiang/db_url_flag
Documentation: fix --db-url flag
2016-01-26 17:53:12 -08:00
Eric Chiang
7b32d9e4ee Documentation: fix --db-url flag
As was noted in #293 --db-url must take two slashs, not one.
2016-01-26 17:30:01 -08:00
Eric Chiang
6bcdbd2660 Merge pull request #293 from set321go/master
Fixed db-url flag in standup-db.sh
2016-01-26 17:28:52 -08:00
Alex Edwards
f6361f67fe fixed -db-url flag as it now requires two dashes --db-url 2016-01-26 17:18:52 -08:00