Commit Graph
62 Commits
Author SHA1 Message Date
abin-rafay 464a1014db User management (#8)
multiple fixes and refactored to support from id to name, added resource roles, permissions script and improved test coverage
2022-02-03 11:04:01 +05:30
nirav-rafay a4af8dae6e Merge pull request #10 from RafaySystems/oidc-init
Support for OIdC authentiation
2022-02-01 16:06:16 +05:30
Akshay Gaikwad 9b831d56b7 Moved oidc provider triggers sql file to migrations 2022-02-01 13:39:46 +05:30
Akshay Gaikwad a03cf171d0 Valdiate URLs in create/update OIDC provider service 2022-01-25 18:35:48 +05:30
Akshay Gaikwad 1d447cf5a9 Remove callbackURL from oidc_provider models
OIDC callback URL are Kratos url specific hence generate it
dynamically.
2022-01-25 18:35:48 +05:30
Akshay Gaikwad 3794f5e31d Update OIDC provider sync script
Trigger synchronization on PostgreSQL db notifications.
2022-01-25 18:35:48 +05:30
Akshay Gaikwad 50d1c315c9 Add OIDC providers synchronize util 2022-01-25 18:35:48 +05:30
Akshay Gaikwad f01c3a59ae Declare baseUrl at package level 2022-01-25 18:35:48 +05:30
Akshay Gaikwad d5b8fa3466 Implement OIDC provider Update and Delete methods 2022-01-25 18:35:48 +05:30
Akshay Gaikwad a6e6827fac Implement create, get, list endpoint of oidc provider service 2022-01-25 18:35:45 +05:30
Akshay Gaikwad 9902eb4af0 Add organizationId and partnerId to OIDC provider model 2022-01-25 18:33:55 +05:30
Akshay Gaikwad f93962e5f2 Add structure for OIdC provider service 2022-01-25 18:33:55 +05:30
Akshay Gaikwad aa98bcd215 Add OIDC provider db model 2022-01-25 18:33:55 +05:30
Akshay Gaikwad de7e491802 Add OIdC provider service API specs 2022-01-25 18:33:55 +05:30
nirav-rafay 6aeb92b0f5 Merge pull request #7 from RafaySystems/cluster-crud
initial commit for cluster management
2022-01-24 19:58:46 +05:30
nirav-rafay 1b0aa547de Merge pull request #4 from RafaySystems/init-saml
SAML based user authentication
2022-01-24 19:56:22 +05:30
Akshay Gaikwad fc4f5802a5 Some minor modifications in the Idp service 2022-01-21 16:05:00 +05:30
Akshay Gaikwad 9f8ebe2fd8 Change name of Idp Service methods
Being consistent with other resource names.
2022-01-21 12:34:06 +05:30
nirav-rafay 0bfe13670e removed support by id and updated list cluster service 2022-01-19 18:33:47 +05:30
Akshay Gaikwad ed0390cb8c Update Idp service according to GVK spec 2022-01-19 13:50:21 +05:30
nirav-rafay eefb66d885 initial commit for cluster management 2022-01-19 12:42:02 +05:30
Akshay Gaikwad ad3cbc10d3 Convert Idp API spec to GVK style 2022-01-19 12:38:09 +05:30
Akshay Gaikwad c1ba133383 Register IdpService in main.go and minor changes in Idp model 2022-01-18 18:07:17 +05:30
Akshay Gaikwad d794603d7f Add DeleteIdp rpc method
Signed-off-by: Akshay Gaikwad <akshay.gaikwad@rafay.co>
2022-01-17 13:12:25 +05:30
Akshay Gaikwad 2ef237dac5 Add IdP swagger details and HTTP endpoints to RPCs
Signed-off-by: Akshay Gaikwad <akshay.gaikwad@rafay.co>
2022-01-17 12:41:39 +05:30
Akshay Gaikwad 8464307c1e SAML Authentication and IDP Service
Initial SAML based authentication in usermgmt component

Signed-off-by: Akshay Gaikwad <akshay.gaikwad@rafay.co>

Update SAMLAuth middleware

- Get username from request body
- Validate for exiwstng session
- Redirect to IDP authentication when no valid session

Modification in SAML middlewares

- Reduce duplicate code by new function createSAMLMiddleware

Restructure saml package

- Moved SAML Middlewares to middleware.go
- Embed samlsp.Middleware into own struct

Use EntityDAO from common and mock Idp model for testing

Signed-off-by: Akshay Gaikwad <akshay.gaikwad@rafay.co>

Add IDP API definitions

Signed-off-by: Akshay Gaikwad <akshay.gaikwad@rafay.co>

Add interface for IdpService

Add id to UpdateIdp proto message

Add metadata_url to UpdateIdp message and limit to ListIdps rpc

Implement Idp Service methods

Update Idp model

Remove main.go and mocked idp model

Generate ACS URL and SAML SP cert

Change Id type in proto as well as in IDP model

Update IDP model struct tags

Set TimeFormat for IDP service

Update generateSpCert() and generateAcsURL()

Add idpServer which is wrapper around idpService

idpServer is a gRPC controller.

Add back-end validations for idp service
2022-01-17 11:29:55 +05:30
nirav-rafay ccf35cdffd Merge pull request #6 from RafaySystems/usermgmt-db
Initial setup for users/groups/roles
2022-01-14 16:32:42 +05:30
Abin Simon 64a70363db Simplify server package for usermgmt 2022-01-13 10:29:54 +05:30
Abin Simon ca11e2bd9b Updated rest examples file 2022-01-13 10:18:56 +05:30
Abin Simon 0aef2df882 Few tweaks on resource response on success 2022-01-13 10:18:56 +05:30
Abin Simon f2124caf28 User spec can now specify the groups a user belongs to 2022-01-12 17:35:38 +05:30
Abin Simon 9a189f4bb6 Return updated status back to client on error 2022-01-12 17:35:38 +05:30
Abin Simon dca468292d Revert bun version to 1.0.20
1.0.21 was returning `0` for the ids after insertion
2022-01-12 17:35:38 +05:30
Abin Simon 7bbc1541f8 Set Trash colums in models to default to false 2022-01-12 17:35:38 +05:30
Abin Simon 4e77e0495c Fix a few issues in group proto spec 2022-01-12 17:35:38 +05:30
Abin Simon 723c719eb9 Switch to using EntityDAO from common 2022-01-12 17:35:38 +05:30
Abin Simon 82cec87a0a Post rebase fixes 2022-01-12 17:35:38 +05:30
Abin Simon eba34f40ed Users can now be assigned to roles without group 2022-01-12 17:35:38 +05:30
Abin Simon d2d214c7e3 Update account id constraints to use kratos db 2022-01-12 17:35:38 +05:30
Abin Simon 21e06a0b6f Switch kratos from using mem to db 2022-01-12 17:35:38 +05:30
Abin Simon d8b8fab1ff Move user management to new strucutre 2022-01-12 17:35:38 +05:30
Abin Simon 36b00390fe Project, group, namespace, role linking basics 2022-01-12 17:35:37 +05:30
Abin Simon 9e2d13876c Group creation now also maps proper accounts 2022-01-12 17:35:37 +05:30
Abin Simon 544a2d6bb0 Basic CRUD operations on role can now be done 2022-01-12 17:35:37 +05:30
Abin Simon 769acb9c80 Complete basic setup for groups in usermgmt 2022-01-12 17:35:37 +05:30
Abin Simon 461683145b Simplify input and output for user operations
Post rebase fixups
2022-01-12 17:35:37 +05:30
Abin Simon 6c4c1b4b29 Fix incorrect imports with buf generate 2022-01-12 17:35:37 +05:30
Abin Simon 3bf7e6e61c Add a simple readme for usermgmt 2022-01-12 17:35:37 +05:30
Abin Simon 7ca97c845d Initial kratos config files to start a server
To start kratos:
kratos serve -c kratos.yml
2022-01-12 17:35:37 +05:30
Abin Simon 428672f313 Simple user CRUD operations 2022-01-12 17:35:37 +05:30