feat(aa-log): ensure rule access is always present.

This commit is contained in:
Alexandre Pujol 2024-02-29 00:19:26 +00:00
parent 45a6e0bf21
commit e3daaf3d4c
No known key found for this signature in database
GPG key ID: C5469996F0DF68EC
6 changed files with 25 additions and 38 deletions

View file

@ -30,39 +30,19 @@ var (
tmplAppArmorProfile = generateTemplate()
// convert apparmor requested mask to apparmor access mode
// TODO: Should be a map of slice, not exhaustive yet
maskToAccess = map[string]string{
"a": "w",
"ac": "w",
"c": "w",
"create": "create",
"d": "w",
"delete": "delete",
"getattr": "getattr",
"k": "k",
"l": "l",
"m": "rm",
"open": "open",
"r": "r",
"ra": "rw",
"read write": "read write",
"read": "read",
"readby": "readby",
"receive": "receive",
"rm": "rm",
"rw": "rw",
"send receive": "send receive",
"send": "send",
"setattr": "setattr",
"w": "w",
"wc": "w",
"wd": "w",
"wk": "wk",
"wr": "rw",
"wrc": "rw",
"wrd": "rw",
"write": "write",
"x": "rix",
requestedMaskToAccess = map[string]string{
"a": "w",
"ac": "w",
"c": "w",
"d": "w",
"m": "rm",
"ra": "rw",
"wc": "w",
"wd": "w",
"wr": "rw",
"wrc": "rw",
"wrd": "rw",
"x": "rix",
}
// The order the apparmor rules should be sorted
@ -168,3 +148,10 @@ func getLetterIn(alphabet []string, in string) string {
}
return ""
}
func toAccess(mask string) string {
if requestedMaskToAccess[mask] != "" {
return requestedMaskToAccess[mask]
}
return mask
}