Commit graph

1671 commits

Author SHA1 Message Date
Pando85 b75f433293 Fix: change image names to go to kanidm repository 2020-04-27 16:03:37 +10:00
Pando85 911b5983aa Add github actions:
- Add linter with `cargo fmt`
- Add tests
- Add kanidmd docker build
- Add kanidm_rlm_python docker build
- Fix kanidm_unix_int format to pass tests
2020-04-27 15:01:56 +10:00
Pando85 cfdaa702e5 Fix multiple typo in docs 2020-04-27 10:34:33 +10:00
Firstyear 6c87cefca5
Update README.md 2020-04-25 13:18:19 +10:00
Firstyear 671e642099
Update readme with more completed objectives 2020-04-24 16:59:08 +10:00
Firstyear 255921cb69
Update readme 2020-04-21 12:35:08 +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
William Brown 3240d993b9 Clean removed schema struct 2020-04-11 16:25:43 +10:00
William Brown b8f906ed36 Update outdated libraries and add helper make argument. 2020-04-11 10:48:34 +10:00
William Brown 29d99654c3 Update to latest rc 2020-04-10 15:55:25 +10:00
Firstyear 8cfa8f3f95
12 totp (#201)
Implements #12, TOTP. This adds support for TOTP to the api and server, with server side token generation, authentication and the correct URI for encoding into QR codes for client token addition. Some extra measures have been taken such as in the stepped auth to always notify on the success or failure of the TOTP first (regardless of order) to prevent PW bruteforce attacks.
2020-04-10 15:50:45 +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
William Brown 8d8d5d02dd Finish up claim design 2020-03-26 11:56:20 +10:00
William Brown 32dcaa39ac Test perf improvements 2020-03-26 11:56:20 +10:00
William Brown aae6625c4d Clean up incorrect logging and document some recycle bin edge cases. 2020-03-25 08:31:51 +10:00
Firstyear 6388bcf6fc
20200322 132 recyclebin 2 (#193)
Implements #132, the recycle bin. This completes the feature, with working API's, front end tests and CLI tooling. It also includes a refactor of the CLI tools to make them a bit easier to manage/work with.
2020-03-25 08:21:49 +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 c5664988e3
Refactor for actix and futures upgrade (#190) 2020-03-07 10:49:39 +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 f8adfc3840
20200216 fix gidnumber validation (#186)
* Fix an issue with gid number validation
2020-02-17 08:09:11 +10:30
William Brown d82b942ddc Update to disable debug logging 2020-02-16 09:59:48 +10:30
William Brown 3221cf9bdf Minor update to paths for dynamic users 2020-02-16 08:43:58 +10:30
Firstyear 9de7d33293
129 nsswitch stage 2 groups (#185)
Implements #129, adding the libnss_kanidm.so/dylib, and the related caching parts for properly handling these types.
2020-02-15 10:57:25 +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
Charelle Collett e41fada28a Minor typo and formatting fixes. 2020-01-27 22:47:40 +10:00
Firstyear 9360ba78f3
Add feature for re-adding some group memberships on revival (#176)
Implements #49, revive directmemberships if possible on revive. As items that are deleted are able to maintain and preserve their directmembership from MO, this allows a way to back-create group memberships when we revive a user from the recycle bin.

Note that if the group was itself deleted and revived, this breaks the relationship because it causes ref int to remove all the references. This could be a reason to change the refint policy to allow keeping dead-references, but I think I want to think about that more before I change that policy too quickly.

Saying this, most groups are long lived, we are really wanting to handle the case where you delete and revive a user, or delete and revive a group to restore consistency. Deletenig and reviveng groups and users at the same time will lead to some hairy-complex cases.
2020-01-27 20:56:21 +10:00
Firstyear a55f277ac3
Add pragma integrity check to verify (#175) 2020-01-27 13:37:55 +10:00
Firstyear 559222206f
133 limit to human readable characters. (#174)
Implements #133, limit password generators to distict human readable characters. This removes the common confusions such as I,l, 1, 0, O, o, m,rn, etc . This in mind, they may not all have been found, but it should be easier now to improve upon.
2020-01-27 12:56:15 +10:00
Firstyear 1e7ba58fe8
Add concurrent structures, and initial attempt at benchmarking (#173) 2020-01-26 19:55:53 +10:00
Tristram Healy 4470311f84 Replaced Firstyear 2020-01-17 11:57:30 +10:00
William Brown 678ec17909 Add design for enrolling another webauthn device to an account 2020-01-15 09:56:27 +10:00
Alberto Planas c2d98f2057 Address clippy reports attending to #![deny(warnings)] 2020-01-15 09:55:01 +10:00
Alberto Planas 311de5248b Remove "extern crate" from binary crates 2020-01-15 09:55:01 +10:00
Alberto Planas bb298968ea Cargo: fix repository typo 2020-01-15 09:55:01 +10:00
Firstyear 66b90fd378
Fix issues with default vlan (#165) 2020-01-10 10:49:44 +11:00
Firstyear 7135a6e42d
Attempted to add caching but it failed, improve usage (#162) 2020-01-02 18:54:50 +11:00
William Brown cc5993a141 Merge branch 'master' of github.com:Firstyear/kanidm 2020-01-01 12:59:00 +11:00
William Brown 4360ea3d88 Add reference 2020-01-01 12:58:42 +11:00
Firstyear c8d73b7594
20191217 update 1.39 deps (#161)
Update to 1.39 + all deps update, and setup cargo.toml's for publishing to crates (to prevent domain/crate squatting).
2019-12-17 15:47:16 +10:00
Firstyear 2ede944fdb
29 password badlisting (#158)
Implements #29 password badlist and quality checking. This checks all new passwords are at least length 10, pass zxcvbn and are not container in a badlist. The current badlist is a preprocessed content of rockyou from seclists, but later wwe'll update this to the top 10million badlist which when processed is about 70k entries..
2019-12-13 08:49:32 +10:00
Firstyear b579c5395c
20191202 documentation (#156)
Add an initial skeleton and draft of a book, which should be maintained and improved as the server is developed to help guide users.
2019-12-03 16:03:05 +10:00
William Brown 646261ebf7 Resolve domain_name overwrite on startup issue 2019-12-01 15:16:56 +10:00
William Brown 7fcb0e6069 Fix missing self write on ssh public key 2019-12-01 14:19:20 +10:00
William Brown e670924324 Update assert to debug assert, add Makefile, and resolve an issue with reindexing 2019-11-30 22:05:13 +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
Firstyear 6faf79db03
acp_enable is optional and non-presence implies true (#152)
Implements #88, acp_enable becomes optional. This is important with regard to migrations. When we migrate, if an attribute is present in the migration we always set the value in the case of a single-value attribute (multivalues interleave). This means an admin who may set acp_enable to false on default shipped access controls would have them forcefully re-activated on each server restart. This change makes acp_enable optional, and removes it from the migration. If NOT present on an ACP, it's considered "true", so that when an admin overrides this value to false, we will permanently respect that choice.
2019-11-30 09:39:00 +10:00
Firstyear 0609196048
127 domain info type (#150)
Implements #127 and #125. This adds domain_info support, and spn types and generation. It also correctly handles domain renaming, and has tooling to support this. It "should" work on an upgrade, due to the correct bump of index version, but I plan to test this from a backup of my production instance soon.
2019-11-29 10:48:22 +10:00
Firstyear 6157c65d3a
Add support for better client building (#147)
Implements #134 Client Builder Pattern. This makes it much easier to build a client by making the configuration of the client lib follow a builder pattern. The error management needs a lot of work still, but for now it's rough and it works.
2019-11-19 12:20:37 +10:30
Firstyear 44693be17a
Add docs for backup, restore, reindex and verify (#148)
Implements #136 document backup and restore. This adds documentation into getting started on these actions, as well as reindex and verify .
2019-11-17 12:36:32 +10:00