29d804e692
feat: add API key scopes and application_connect scope ( #4067 )
2022-09-19 17:39:02 +00:00
9ab437d6e2
feat: Add serving applications on subdomains and port-based proxying ( #3753 )
...
Co-authored-by: Dean Sheather <dean@deansheather.com >
2022-09-14 03:31:33 +10:00
850a83097c
feat: Allow deleting users ( #4028 )
...
* Add deleted column to the users table
* Fix user indexes
* Add frontend
* Add test
2022-09-12 23:24:20 +00:00
4e26e325a6
feat: add auditing to user routes ( #3961 )
2022-09-08 21:16:16 -05:00
05e2806ff3
feat: Add profile pictures to OAuth users ( #3855 )
...
This supports GitHub and OIDC login for profile pictures!
2022-09-04 11:44:27 -05:00
aa9a1c3f56
fix: Prevent suspending owners ( #3757 )
2022-08-31 15:26:36 +00:00
14a9576b77
Auto import kubernetes template in Helm charts ( #3550 )
2022-08-26 05:32:35 +10:00
0b53b06fc6
chore: Make member role struct match site roles ( #3671 )
2022-08-24 15:58:57 -04:00
c9bce19d88
GET license endpoint ( #3651 )
...
* GET license endpoint
Signed-off-by: Spike Curtis <spike@coder.com >
* SDK GetLicenses -> Licenses
Signed-off-by: Spike Curtis <spike@coder.com >
Signed-off-by: Spike Curtis <spike@coder.com >
2022-08-24 18:44:22 +00:00
a7b49788f5
chore: deduplicate OAuth login code ( #3575 )
2022-08-22 18:13:46 -05:00
c3eea98db0
fix: use unique ID for linked accounts ( #3441 )
...
- move OAuth-related fields off of api_keys into a new user_links table
- restrict users to single form of login
- process updates to user email/usernames for OIDC
- added a login_type column to users
2022-08-17 18:00:53 -05:00
01dd35f1ba
chore: Rename 'admin' to 'owner' ( #3498 )
...
Co-authored-by: Colin Adler <colin1adler@gmail.com >
2022-08-15 14:40:19 -05:00
3ae42f4de9
chore: Update rego to be partial execution friendly ( #3449 )
...
- Improves performance of batch authorization calls
- Enables possibility to convert rego auth calls into SQL WHERE clauses
2022-08-11 22:07:48 +00:00
db665e7261
chore: Drop resource_id support in rbac system ( #3426 )
2022-08-09 18:16:53 +00:00
7e9819f2a8
ref: move httpapi.Reponse into codersdk ( #2954 )
2022-07-12 19:15:02 -05:00
576aef40f2
chore: Add linter rule to catch missing return after http writes ( #2702 )
2022-06-28 14:13:37 -05:00
a494489ffa
fix: use valid ip mask in api keys when remote address is ipv6 ( #2695 )
2022-06-27 20:31:18 +00:00
2353687610
feat: unexpose coderdtest.NewWithAPI ( #2613 )
...
* feat: unexpose coderdtest.NewWithAPI
2022-06-27 13:50:52 -05:00
4851d932c4
fix: Split host and port before storing IP ( #2594 )
...
The IP was always nil prior, and this fixes the test to
check for that as well!
2022-06-26 21:22:03 +00:00
90815e5119
feat: improve Users filter API ( #2645 )
2022-06-24 23:55:28 +00:00
d21ab2115d
feat: Backend api for filtering users using filter query string ( #2553 )
...
* User search query string
2022-06-24 10:02:23 -05:00
b7eeb436ad
feat: Add ip_address
to API keys ( #2580 )
...
Fixes #2561 .
2022-06-22 17:32:21 +00:00
4cce969018
feat: Add anonymized telemetry to report product usage ( #2273 )
...
* feat: Add anonymized telemetry to report product usage
This adds a background service to report telemetry to a Coder
server for usage data. There will be realtime event data sent
in the future, but for now usage will report on a CRON.
* Fix flake and requested changes
* Add reporting options for setup
* Add reporting for workspaces
* Add resources as they are reported
* Track API key usage
* Ensure telemetry is tracked prior to exit
2022-06-17 00:26:40 -05:00
251316751e
feat: Return more 404s vs 403s ( #2194 )
...
* feat: Return more 404s vs 403s
* Return vague 404 in all cases
2022-06-14 10:14:05 -05:00
92bda0d2c1
fix: allow admins to reset their own pass without old_password ( #2222 )
2022-06-10 11:43:54 +10:00
74fe38eb3d
feat: Add initiator_username to workspace builds in apis ( #2174 )
...
* feat: Add initiator_username to workspace builds in apis
2022-06-08 20:23:35 -05:00
af401e3fe1
chore: Linter rule for properly formatted api errors ( #2123 )
...
* chore: Linter rule for properly formatted api errors
* Add omitempty to 'Detail' field
2022-06-07 14:33:06 +00:00
c9a4642a12
chore: Update BE http errors to be ui friendly ( #1994 )
...
* chore: More UI friendly errors
Mainly capitlization + messages prefix error
2022-06-03 21:48:09 +00:00
913c0f5e7f
feat: Longer lived api keys for cli ( #1935 )
...
* feat: Longer lived api keys for cli
* feat: Refresh tokens based on their lifetime set in the db
* test: Add unit test for refreshing
2022-06-01 14:58:55 -05:00
cc87a0cf6b
feat: Implied 'member' roles for site and organization ( #1917 )
...
* feat: Member roles are implied and never exlpicitly added
* Rename "GetAllUserRoles" to "GetAuthorizationRoles"
* feat: Add migration to remove implied roles
* rename user auth role middleware
2022-06-01 09:07:50 -05:00
7acb742218
feat: Prevent role changing on yourself. ( #1931 )
...
* feat: Prevent role changing on yourself.
Only allow changing roles on other users. Not much value in self changing
at the moment
2022-05-31 15:50:38 -05:00
26a2a169df
fix: Suspended users cannot authenticate ( #1849 )
...
* fix: Suspended users cannot authenticate
- Merge roles and apikey extract httpmw
- Add member account to make dev
- feat: UI Shows suspended error logging into suspended account
- change 'active' route to 'activate'
2022-05-31 08:06:42 -05:00
5598ac05dc
fix: prevent email from being altered ( #1863 )
2022-05-27 22:25:04 +00:00
d623eeb8d1
feat: delete API token in /logout API ( #1770 )
...
* delete API token in logout api
* add deleteapikeybyid to databasefake
* set blank cookie on logout always
* refactor logout flow, add unit tests
* update logout messsage
* use read-only file mode for windows
* fix file mode on windows for cleanup
* change file permissions on windows
* assert error is not nil
* refactor cli
* try different file mode on windows
* try different file mode on windows
* try keeping the files open on Windows
* fix the error message on Windows
2022-05-27 16:47:03 -04:00
24d1a6744a
fix: Add route for user to change own password ( #1812 )
2022-05-27 17:29:55 +00:00
ec1fe46138
feat: Move create organizations route ( #1831 )
...
* feat: last rbac routes
- move create organization to /organizations.
2022-05-27 11:19:13 -05:00
31b819e83f
chore: Remove interface from coderd and lift API surface ( #1772 )
...
Abstracting coderd into an interface added misdirection because
the interface was never intended to be fulfilled outside of a single
implementation.
This lifts the abstraction, and attaches all handlers to a root struct
named `*coderd.API`.
2022-05-26 03:14:08 +00:00
eea8dc6c16
feat: Add rbac to templateversion+orgmember endpoints ( #1713 )
2022-05-25 11:00:59 -05:00
c7ca86d374
feat: Implement RBAC checks on /templates endpoints ( #1678 )
...
* feat: Generic Filter method for rbac objects
2022-05-24 08:43:34 -05:00
c034e8389e
feat: Add RBAC to /workspace endpoints ( #1566 )
...
* feat: Add RBAC to /workspace endpoints
2022-05-18 18:15:19 -05:00
0706c60445
chore: Add watch workspace endpoint ( #1493 )
2022-05-18 16:16:26 -05:00
4ad5ac2d4a
feat: Rbac more coderd endpoints, unit test to confirm ( #1437 )
...
* feat: Enforce authorize call on all endpoints
- Make 'request()' exported for running custom requests
* Rbac users endpoints
* 401 -> 403
2022-05-17 13:43:19 -05:00
b55d83ca82
feat: Add suspend/active user to cli ( #1422 )
...
* feat: Add suspend/active user to cli
* UserID is now a string and allows for username too
2022-05-16 15:29:27 -05:00
680de709a5
chore: organize http handlers ( #1486 )
...
They're currently randomly in a bunch of different files. This cleans up
the handler functions to be in the file of the type they return.
2022-05-16 14:36:27 -05:00
97a95f1377
chore: upgrade golangci-lint to v1.46.0 ( #1373 )
2022-05-10 16:04:23 -05:00
2d3dc436a8
feat: Implement unified pagination and add template versions support ( #1308 )
...
* feat: Implement pagination for template versions
* feat: Use unified pagination between users and template versions
* Sync codepaths between users and template versions
* Create requestOption type in codersdk and add test
* Fix created_at edge case for pagination cursor in queries
* feat: Add support for json omitempty and embedded structs in apitypings (#1318 )
* Add scripts/apitypings/main.go to Makefile
2022-05-10 07:44:09 +00:00
dc115b8ca0
fix: Use proper endpoint for user workspaces ( #1356 )
...
This was a silly mistake in a prior PR, so the code wasn't
actually being called!
2022-05-10 03:10:47 +00:00
b675aec4dd
feat: Add endpoint to get all workspaces a user can access ( #1354 )
...
This iterates through user organizations to get permitted
workspaces. This will allow admins to manage user workspaces!
2022-05-10 02:38:20 +00:00
e54324d880
refactor: Add roles into the user response ( #1347 )
2022-05-09 16:38:14 +00:00
cf5aca799d
Add reset user password action ( #1320 )
2022-05-06 13:23:03 -05:00