Jonathan Boulle
ee522025b3
etcdserver: restructure auth.Store and auth.User
...
This attempts to decouple password-related functions, which previously
existed both in the Store and User structs, by splitting them out into a
separate interface, PasswordStore. This means that they can be more
easily swapped out during testing.
This also changes the relevant tests to use mock password functions
instead of the bcrypt-backed implementations; as a result, the tests are
much faster.
Before:
```
github.com/coreos/etcd/etcdserver/auth 31.495s
github.com/coreos/etcd/etcdserver/etcdhttp 91.205s
```
After:
```
github.com/coreos/etcd/etcdserver/auth 1.207s
github.com/coreos/etcd/etcdserver/etcdhttp 1.207s
```
2015-10-30 16:33:40 -07:00
Xiang Li
6c05a01ec6
Merge pull request #3604 from gyuho/replace_netutil_BasicAuth
...
etcdhttp/auth: BasicAuth method in standard pkg
2015-09-28 15:55:46 -07:00
Gyu-Ho Lee
e16f81838b
etcdhttp/auth: BasicAuth method in standard pkg
...
I created a new PR from https://github.com/coreos/etcd/pull/3598 .
This is for `TODO: use the standard lib BasicAuth method when we move to
Go 1.4.` [1]. `BasicAuth` method got into Go standard package a year ago. [2]
---
1. https://github.com/coreos/etcd/blob/master/pkg/netutil/netutil.go#L126-L138
2. https://codereview.appspot.com/76540043/
2015-09-28 14:02:55 -07:00
Gyu-Ho Lee
85f4475f62
httptypes/errors: HTTPError.WriteTo returns error
...
Squashing all commits into this one
(from https://github.com/coreos/etcd/pull/357 ).
Thanks,
2015-09-25 08:06:26 -07:00
Mohammad Samman
6ae1f6c6e4
etcdserver: extend auth api
...
allow recursive query on users and roles to get more detail
Fixes #3278
2015-09-21 00:51:18 -07:00
Mohammad Samman
e2e002f94e
etcdserver: handle malformed basic auth
...
return insufficient credentials if basic auth header is malformed
Fixes #3280
2015-08-25 12:37:24 -07:00
Yicheng Qin
18169e896c
etcdhttp: fix access check for multiple roles in auth
...
Check access for multiple roles should go through all roles.
2015-08-04 14:31:07 -07:00
Barak Michener
dd1a8fe330
etcdhttp: Improve test coverage surrounding auth
2015-07-30 14:21:08 -04:00
Xiang Li
e291dfd748
etcdhttp: improve user endpoint validation
...
Giving both roles and grant/revoke is not allowed.
Creating an existing user is not allowed.
Updating a non-existing user is not allowed.
2015-06-23 14:38:44 -07:00
Xiang Li
c8628c8fe5
auth: separate the role create and update path
...
Giving both permission and grant/revoke is not allowed.
Creating an existing role is not allowed.
Updating a non-existing is not allowed.
2015-06-23 13:15:32 -07:00
Xiang Li
bc61056912
etcdhttp: use correct http status const when writing http error
2015-06-23 12:40:30 -07:00
Barak Michener
d5a0e3ac6a
etcdhttp: Always strip password hash when returning users
2015-06-22 18:39:16 -04:00
Xiang Li
cad757efa0
etcdhttp: fix the response type for auth
2015-06-19 15:19:00 -07:00
Barak Michener
64ec8af91b
*: Rename security
to auth
2015-06-15 18:18:50 -04:00