Commit graph

58 commits

Author SHA1 Message Date
Firstyear bd41ef8f91
Add design doc, revive the domain wide enc token (#649)
* Add design doc, revive the domain wide enc token, use jwt from our lib instead of bundy, update docs
2022-03-14 17:29:04 +10:00
Firstyear fa610c6d88
106 auth concurrency (#643) 2022-03-07 09:22:35 +10:00
Firstyear 6e1ed9ea07
Update to concread, add hooks for cache quiescing (#641) 2022-02-16 09:20:37 +10:00
Firstyear c6c564cebb
Finalise email changes for oidc (#629) 2021-12-25 09:47:14 +10:00
Firstyear 42df4bf1a3
Refactor of value and addition of base types for business attributes (#626) 2021-12-16 10:13:03 +10:00
Firstyear 0f4189a57e
278 603 OIDC implementation (#608) 2021-11-21 16:41:49 +10:00
Firstyear c62b39c338
509 oauth2 scope mapping (#586) 2021-10-07 18:31:48 +10:00
Firstyear 573e346476
Add support for storing security token key in domain config (#581) 2021-09-25 11:24:00 +10:00
Firstyear dbb57e9a7b
Remove auditscope for tracing (#580) 2021-09-21 12:42:00 +10:00
Firstyear 2fbc92668c
Entry Arc Tracking to reduce memory footprint (#579) 2021-09-17 12:05:33 +10:00
Firstyear d2bb9cead4
Rewrite how we store the internals of valuesets in entries (#578) 2021-09-15 08:24:37 +10:00
Firstyear 1080e5d0b4
Start to remove audit scope :) (#574) 2021-08-26 11:48:03 +10:00
Firstyear 9456cac15b
Qnn idiomatic refactor (#570) 2021-08-21 14:44:55 +10:00
Quinn a3c0b8ccfe
Customized tracing for tide::Middleware logging (#544) 2021-08-19 11:04:24 +10:00
Firstyear 3f27267ea4
508 token introspect (#565) 2021-08-18 09:41:04 +10:00
Firstyear 27b7572842
468 valueset abstraction (#538) 2021-07-30 09:45:25 +10:00
Firstyear 040e9fd352
Add statistical analysis to indexes (#505) 2021-07-02 14:50:56 +10:00
Firstyear 1de1b2db3b
Add the ability to configure and provide Oauth2 authentication for Kanidm. (#485) 2021-06-29 14:23:39 +10:00
Firstyear 2493dad4fb
Add auth docs (#463) 2021-06-02 09:42:40 +10:00
Firstyear 807af81184
64 120 session claims (#462) 2021-06-02 09:30:37 +10:00
Firstyear 033b977906
Add ldap vattr mapping (#459) 2021-05-29 12:50:16 +10:00
James Hodgkinson 35c1de4c45
Calming clippy's nerves, Friday edition (#448)
* whoa clippy you are very helpful
2021-05-21 16:35:09 +10:00
Firstyear e88ac01aca
20210509 cleanup clippy and audit name (#437) 2021-05-09 22:06:04 +10:00
Firstyear 644eb0b0d6
Add verification of name indexes (#433) 2021-05-06 21:12:02 +10:00
James Hodgkinson 77381c1a2a
User feedback improvements, also handling a permissions issue (#424) 2021-04-26 11:52:13 +10:00
Firstyear 6f222f6408
62 idm qs cleanup (#419) 2021-04-25 11:35:02 +10:00
Firstyear 72dfe1b035
Idlset2, query cache, acp resolve cache (#409) 2021-04-14 09:56:40 +10:00
Firstyear dd1945dd0d
363 scaling benchmarks (#366)
Starts on #363, adding initial scaling tests and benchmarks. Generally this is a pretty big clean up of macros and some testing elements too.
2021-02-23 18:10:59 +10:00
Firstyear faa4b74683
320 filter double verify (#339)
Fixes #320, remove double verification of filters. In addition this replaces attr strings with smartstring to allow better inling due to their static and compact nature.
2020-12-30 09:53:19 +10:00
Firstyear 018039b0b2
Account valid-from and expiry (#322)
Fixes #59 account policy and lockout. This is achived with a valid_from and expire attribute that are timestamps. Cli tools are added to manage these.
2020-10-10 10:31:51 +10:00
William Brown 85ec82832e V large cleanup 2020-08-05 09:58:49 +10:00
Firstyear 96e6c9107d
refint improve (#274)
Fixes #61 and fixes #234 - this rewrites quite a few internals of refint and memberof to make them much more efficient compared to previously. This takes nearly 70s out of the test execution time - a full 25% of the run time of tests.

A number of other improvements have been made through out with regard to memory pre-alloc for hashset/hashmap, fixing some more types, and reducing some un-needed allocations.
2020-06-26 11:36:37 +10:00
Firstyear 0adec0d437
260 entry ava interfaces (#271)
Fixes #260 fixes #257 fixes #157. This is really a set of cleanups around the code base to minimise clones, choose better datastructures for specific tasks, improve the ability to pass references in certain calls and more. Generally this just makes everything a bit smoother, and really has big gains on the write path (it's about 20% faster now).
2020-06-24 21:17:46 +10:00
Firstyear fec28e03e2
195 rel cleanup (#268)
Fixes #195 pre release cleanup. This does a LOT, clippy, formatting, and much much more. It fixes a lot of parts of the book, improves server config and more.
2020-06-18 10:30:42 +10:00
Firstyear d47d4fed0a
245 ldap compat (#247)
Add's improvements to ldap compatibility. This stabilises DN formats and how they are returned, and adds the name2uuid index to help speed up binds and entry resolves on large queries. Even on the largest queries, this is able to process them rapidly, and the ldap interface now has single operation times of sub 0.001 second even on 100k entry databases with references.
2020-06-14 09:34:23 +10:00
Firstyear 70fa17f3a1
199 ldap gateway (#246)
adds an LDAP gateway to the server. It supports TLS if configured for the webserver, using the same parameters. It is a read only interface, only supporting bind via the configured posix password.
2020-06-10 12:07:43 +10:00
Firstyear ff9238b7ee
184 151 183 name constraint and spn (#244)
This adds support to do on-upgrade migrations of the previous iutf8 type to iname, iname contains a better checker of the content of the name values that will become spn's, this allows auth via spn as well as just name. This really just does a lot of clean up to make spns more viable. #181 is still outstanding, but you can currently already login via spn a posixid_to_uuid supports this, it's only the resolving of unixgroup/accounts that need to have name as Option to cause a fall back to spn when in a trust.
2020-06-07 09:53:10 +10:00
Firstyear 4bed9c87bf
Improve errors, tagging, logging and more across the codebase. (#243) 2020-06-05 14:01:20 +10:00
Firstyear 923cf6c0f8
99 p3 clean up sensitive log data (#239)
Fix logging of potentially sensitive data.

* Disable docker automation
2020-05-29 18:13:54 +10:00
Firstyear 5eb370bc43
Phase 2, logging refactor (#236)
* Phase 2, logging refactor
2020-05-22 17:03:42 +10:00
Firstyear 15bc8d4120
101 idlcache (#224)
Fixes #101, concurrent caching of IDL and Entries. This yields a 10% improvement for test case execution, and 35% for tests run under --release mode. A lot of code around the code base was needed to be touched due to the extra need for mut in some operations and some lifetimes, but the majority of the work was in idl_arc_sqlite.rs, which has the cache layer. There are many performance gains yet to see, but most of those will come through improvement of the concread ARC and it's related BTree implementation.
2020-05-11 21:12:32 +10:00
Pando85 ffa2e416aa Optimized all possible constant values using const
Replace all replaceable static declarations with const values.
Ref: 61e3dc9c1e/text/0246-const-vs-static.md
2020-05-05 10:01:10 +10:00
Pando85 daf22462d7 Feature/entry extend apply modlist tests
Add entry test cases for `apply_modlist`:
- present multivalue
- purge single/multi/empty value
- remove exists and doesn't exist value
2020-04-12 12:27:13 +10:00
Firstyear ceb6048bf0
122 password import design (#196)
Implements #122 password import. This adds most of the server core framework to allow password imports from other sources, with new types easily able to be added in credential.rs.
2020-03-27 08:27:07 +10:00
Firstyear 61c240e44b
20200307 137/132 cid/recyclebin (#192)
Implements #137 and parts of #132. This adds full support for CID's to the server, and some parts for recyclebin to work such as internal lessthan queries.
2020-03-22 11:31:02 +10:00
Firstyear 5a9ad39d6b
20200218 pam (#189)
Add support for unix_password handling, and pam authentication for services.
2020-02-29 14:02:14 +10:00
Firstyear b048115698
20200216 document internals (#187)
Add documentation of internal api
2020-02-17 08:09:32 +10:30
Firstyear d063d358ad
129 pam nsswitch stage 1 daemon (#179)
Implements #129, pam and nsswitch daemon capability. This is stage 1, which adds a localhost unix domain socket resolver, a ssh key client, support to the server for generating unix tokens, an async client lib, and client handles for adding posix extensions to accounts and groups.
2020-02-13 10:43:01 +11:00
Alberto Planas c2d98f2057 Address clippy reports attending to #![deny(warnings)] 2020-01-15 09:55:01 +10:00
Firstyear 000a24b49e
23 gidnumber generation (#154)
Implements #23 gidnumber generation. This automatically creates gid numbers for posixaccounts and posixgroups based on the UUID of the object. Alternately, these can be provided if manual allocation is desired. This is an important step in posix attribute support.
2019-11-30 09:39:31 +10:00