Skip to content

foundation for 'trust' model #386

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 34 commits into from
Apr 17, 2022
Merged

foundation for 'trust' model #386

merged 34 commits into from
Apr 17, 2022

Conversation

Byron
Copy link
Member

@Byron Byron commented Apr 15, 2022

See https://github.com/libgit2/libgit2/releases/tag/v1.4.3 and https://github.blog/2022-04-12-git-security-vulnerability-announced/

Tasks

Byron added 18 commits April 15, 2022 12:39
It will hold the current credentials helper implementation and might
contain more one day.

Primarily meant to interface with `git-sec` when needed, even though
currently it deals with git directly.
Otherwise we wouldn't know if the dependency resolution breaks.
It's shared across crates.
…d `identity::UserId` (#386)

As the fewest consumers will be able to deal with multiple identities,
remove the enumeration approach in favor of individual type which deal
with one specific way of identifying a user.
For posterity, using the windows API is absolutely terrible and
I hope I don't have to do it again anytime soon.

More importantly, I hope that it works nonetheless.
Byron added a commit that referenced this pull request Apr 16, 2022
Byron added 8 commits April 16, 2022 11:41
Is it desirable have permissions tagged like this?
These would typically show up in options, and I have a feeling it makes
them more descriptive. That's all really.
…ory (#386)

There is also the notion of a 'main' worktree, the one we usually
get when cloning non-bare. And we can currently instantiate a Repository
from a worktree that isn't the main one.
Hence, when opening a repository permissions are already derived
from Trust, and next up is to figure out how to get there so that
open/discover can decide what to do while being configurable in full.
Byron added a commit that referenced this pull request Apr 17, 2022
…ion failure. (#386)

Evidence from CI suggests that on windows 'AlreadyExists' isn't the
common error code. Instead, maybe due to racyness, it can also emit
PermissionDenied errors which we now handle specifically.
Byron added 6 commits April 17, 2022 17:19
That way it's possible to ignore repositories which effectively
aren't owned by the current user, or to not ignore them (default)
but assign tigher permissions to the repository.
It should be possible to control which configuration files are loaded
and contribute to the overall configuration. This goes along with
at some point allowing to obtain only values which are from trusted
configuration files, based on the trust specification passed when
loading the configuration.
@Byron Byron merged commit 2fe70f9 into main Apr 17, 2022
@Byron Byron deleted the git-sec branch April 18, 2022 02:40
Byron added a commit that referenced this pull request Apr 23, 2022
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant