Commit Graph
75 Commits
Author SHA1 Message Date
Jim acd28e5372 use CTE within transaction to calc SetGroupMembers changes (#454) 2020-09-26 17:46:21 -04:00
Jim 978f7dc34c fix immutable columns for session_state and session_connnection_state (#449) 2020-09-25 16:04:43 -04:00
Jim 21ca0b6388 SetAssociatedAccounts, DisassociateAccounts, AssociateAccounts with support for multiple accounts. (#439) 2020-09-25 13:35:32 -04:00
Jim 57da9f918e cancel a session when one of its FKs is set to null (#406) 2020-09-22 14:36:20 -04:00
Jim cfc76eb88f add support for WithSessionIds in ListSesions (#395) 2020-09-22 10:41:42 -04:00
Jim b334aeff41 refactor CancelSession and updateStates to be idempotent (#390) 2020-09-21 11:14:30 -04:00
Jim 5764b2c70a return States as a field of Connection repo operations. (#382) 2020-09-20 15:54:39 -04:00
Jim 223591d835 return connection authz info from session.AuthorizeConnection (#380) 2020-09-19 21:05:56 -04:00
Jim 66400c9cff changes needed for sessions.AuthorizeConnection (#377) 2020-09-19 14:21:09 -04:00
Jim e7e70b1b94 new domain functions for the session repo (#368) 2020-09-18 18:12:41 -04:00
Jim 7e927203e8 schema changes to support multi-connections (#372) 2020-09-18 17:41:45 -04:00
Jim 611288bdc7 basic sessions (#337) 2020-09-16 12:02:02 -04:00
Jim e119466233 stop oplogging tokens and allow for a time skew (#343) 2020-09-10 16:37:45 -04:00
Jim 96e4b1cdba add option db.WithSkipVetForWrite(true) so the db tests don't get intercepted by app validation (#332) 2020-09-07 13:20:49 -04:00
Jim 3d944a616f fix name typo (#330) 2020-09-04 17:11:51 -04:00
Jim f29869b715 support for additional deks: oplog, session and token and new CreateKeysTx() (#321) 2020-09-02 14:37:19 -04:00
Jim f3dd62d5d8 database DEKs (#317) 2020-09-02 07:42:03 -04:00
Jim 09112d1e96 refactor and remove kms/common pkg (#315) 2020-08-29 19:06:21 -04:00
Jim fcb61d4b67 targets repo (#298) 2020-08-26 13:58:46 -04:00
Jim 9570897032 basic keys mgmt repo (#264) 2020-08-19 16:47:18 -04:00
Jim 1c836c430b support for associating/disassociating an auth account with a user (#233) 2020-08-10 15:17:15 -04:00
Jim cb89422d9d define immutable fields including PKs. (#205) 2020-07-30 16:04:15 -04:00
Jim c83e90ed38 implement SetTableName patttern that allows table name to be set back to the default for the storage type. (#196) 2020-07-17 16:20:56 -04:00
Jim 4dfc41514b refactor direct sql into query.go (#192) 2020-07-15 13:32:36 -04:00
Jim 1bebe7a261 Convert option db.WithVersion to *uint32 (#195) 2020-07-15 13:12:15 -04:00
Jim e1afed75ff fix dbMask and role tests... (#188)
* fix up tests.

* case sensitive dbMask
2020-07-10 20:44:00 -04:00
JimandJeff Mitchell 260703febe add group member capabilities (#178)
* add group member capabilities

Co-authored-by: Jeff Mitchell <jeffrey.mitchell@gmail.com>
2020-07-10 19:01:23 -04:00
Jim 136e923583 make iam_role scope_id immutable (#179) 2020-07-10 10:22:38 -04:00
Jim 6c1b45f7f5 add principal roles (users and groups) to iam (#163) 2020-07-08 17:02:01 -04:00
Jim d0a846823a support for NewOplogMsgs() option when calling CreateItems and DeleteItems (#158) 2020-07-01 05:40:02 -04:00
Jim 8d8bb42418 add CreateItems and DeleteItems to writer interface (#156) 2020-06-29 19:28:15 -04:00
Jim 3e3144117e iam and auth integration (#144) 2020-06-29 08:18:57 -04:00
Jim 3d85c7ebb0 add CreateItems() and DeleteItems() (#146) 2020-06-29 06:36:00 -04:00
Jim 9a87df38c7 add CreateItems() and DeleteItems() (#146) 2020-06-29 06:31:23 -04:00
Jim 6641244734 add support for WithVersion option to updates (#126) 2020-06-24 12:33:49 -04:00
Jim ed60cac7fe add listing for groups and roles (#130) 2020-06-19 12:06:25 -04:00
Jim 1974e355c8 delete all users at the start of each test. (#129) 2020-06-19 11:27:35 -04:00
Jim c413e013bd get oplog Ticket before writing data (#127) 2020-06-18 21:24:55 -04:00
Jim 342bef7767 listing projects and organizations (#124) 2020-06-18 14:53:11 -04:00
Jim d9073a03d5 listing users (#118) 2020-06-16 18:59:30 -04:00
Jim ffddf24f86 iam roles (#116) 2020-06-15 12:42:08 -04:00
Jim cc5114bdef refactor scopes to conform to public id usage and repo error msgs (#117) 2020-06-12 15:22:23 -04:00
Jim 5c2cff3ad2 iam groups (#112) 2020-06-11 16:36:47 -04:00
Jim 10e08e90f0 cleanup tests: properly use require, catch defer errors, use testing functions (#113) 2020-06-10 12:10:34 -04:00
Jim 2d18177c9d oplog support for null field updates (#107) 2020-06-10 06:56:46 -04:00
Jim c70847fbac refactor delete test to be table driven. (#102) 2020-06-09 21:22:15 -04:00
Jim 7d4993fb61 iam users (#96) 2020-06-04 20:05:08 -04:00
JimandJim Lambert e3fdb493b8 prevent primary key updates (#95)
* prevent primary key updates

* better error to return

Co-authored-by: Jim Lambert <jimlambrt@Jims-MBP-3.home>
2020-06-03 09:51:34 -04:00
Jim 1048673171 update dbassert dep (#100) 2020-06-02 12:07:00 -04:00
Jim 55be1f4931 Revert "updated dbassert dep (#98)" (#99)
This reverts commit 628f98d344.
2020-06-02 10:58:25 -04:00
Jim 628f98d344 updated dbassert dep (#98) 2020-06-02 10:16:56 -04:00
Jim 9feb280536 wrapper for dbasserts (#94) 2020-06-02 08:59:40 -04:00
Jim ef6edbd515 Null updates (#78) 2020-05-31 19:55:56 -04:00
Jim aa64579a8c db timestamp guards (#70) 2020-05-27 17:35:04 -04:00
Jim b75feb957d require fieldMaskPaths in Update and refactor errors (#71) 2020-05-21 09:24:37 -04:00
Jim 26265399ef fix format directive (#72) 2020-05-20 19:11:39 -04:00
Jim 980a55a4e3 Added DeleteScope() with tests and TestVerifyOplog() for easier testing (#49) 2020-05-18 17:51:09 -04:00
Jim d1acc1437b fix multierror 2020-05-18 14:38:32 -04:00
Jim ee46266893 ErrRecordNotFound from LookupWhere() when no rows found (#59) 2020-05-18 12:57:45 -04:00
2aca5fff03 fix transaction rollbacks in DoTx (#55)
* fix transaction rollbacks in DoTx

* better assertion

* Update internal/db/read_writer_test.go

Co-authored-by: Michael Gaffney <mgaffney@users.noreply.github.com>

Co-authored-by: Jim Lambert <jimlambrt@Jims-MBP-3.home>
Co-authored-by: Michael Gaffney <mgaffney@users.noreply.github.com>
2020-05-15 08:38:36 -04:00
Jim 4a88d10ecc fix a minor defect in fakeFile Readdir() and unit tests (#53) 2020-05-14 13:30:45 -04:00
Jim c04c73453f refactor Update/Delete to return the number of rows affected. (#46) 2020-05-12 11:57:28 -04:00
Jim 61ca88dac9 refactor to use db.New() and clean up error msgs (#45) 2020-05-12 06:51:02 -04:00
Jim ee4a0d3f45 refactor lookups so we can easily check for not found and do the "right" thing in the repos (#42) 2020-05-11 16:21:09 -04:00
Jim cd74d7f0ef refactor ClonableResource to just be a clonable interface (#40) 2020-05-11 14:11:21 -04:00
Jim bd5ddea6e4 refactor clonable to not rely on the resource interface (#36) 2020-05-11 10:31:15 -04:00
Jim 0676ea51f1 refactor oplog to use db/internal migrations, remove InitTicket() for more reliability and simplify test step up and tear down (#37) 2020-05-11 10:30:44 -04:00
Jim c43e05be2e provide db.Open() and db.Migrate() as part of icu-64 (#34) 2020-05-08 17:21:22 -04:00
Jim 8a5197e39e implement schema, store and repository for IAM scopes of organization and project 2020-05-08 11:36:28 -04:00
Jim 725a777baf refactor friendly name to just be name (#29) 2020-05-05 16:35:24 -04:00
Jim 27b4d7a034 basic internal db interfaces and Gorm implementation
* db reader and writer interfaces which should allow us to encapsulate the vast majority of database code in this package.

* GormReadWriter implementation of the Reader and Writer interfaces
2020-05-05 13:29:47 -04:00
Jim 2f0dd58f11 set default value in gorm tag, so database timestamp defaults will get set 2020-05-03 16:10:14 -04:00
Jim 73363d4c71 adapt to use structwrapping from go-kms-wrapping 2020-05-03 16:09:22 -04:00
fca36970bf refactor replay, so that it creates the required tables during replay (#7)
Co-authored-by: Jim Lambert <jimlambrt@Jims-MBP-3.home>
Co-authored-by: Todd Knight <T.Alan.Knight@gmail.com>
2020-04-20 16:42:16 -04:00
34f530e0df Basic oplog capability (#6)
The ability to write oplog entries using a ticket based system to ensure serialization.   Uses a go-kms-wrapper for encrypting/decrypting entries.

Co-authored-by: Jim Lambert <jlm.lambert@gmail.com>
Co-authored-by: Michael Gaffney <mgaffney@users.noreply.github.com>
Co-authored-by: Todd Knight <T.Alan.Knight@gmail.com>
Co-authored-by: Jeff Mitchell <jeffrey.mitchell@gmail.com>
2020-04-08 14:55:40 -04:00