diff --git a/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go b/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go
index 890bb0c2f27a52633976db990c3cb718b1a5b883..bad21c1b4d45655d872771d3ea3656c09ff36b29 100644
--- a/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go
+++ b/pkg/clients/transport/grpc/protobuf_type_converters.microgen.go
@@ -136,8 +136,8 @@ func PtrPermissionRuleToProto(rule *permission.Rule) (*commonpb.Rule, error) {
 		Actions:         actions,
 		Access:          commonpb.Access(rule.Access),
 		HiddenFields:    rule.HiddenFields,
-		ReadonlyFields:  rule.DenyReadFields,
-		WriteonlyFields: rule.DenyWriteFields,
+		ReadonlyFields:  rule.DenyWriteFields,
+		WriteonlyFields: rule.DenyReadFields,
 		ReadFilter:      rule.ReadFilter,
 		WriteFilter:     rule.WriteFilter,
 		DenyReadFields:  rule.DenyReadFields,
@@ -153,7 +153,7 @@ func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission.Rule, error
 	for _, a := range protoRule.Actions {
 		actions = append(actions, permission.Action(a))
 	}
-	return &permission.Rule{
+	r := &permission.Rule{
 		CollectionID:    protoRule.CollectionId,
 		Actions:         actions,
 		Access:          permission.Access(protoRule.Access),
@@ -162,5 +162,12 @@ func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission.Rule, error
 		DenyWriteFields: protoRule.DenyWriteFields,
 		ReadFilter:      protoRule.ReadFilter,
 		WriteFilter:     protoRule.WriteFilter,
-	}, nil
+	}
+	if len(r.DenyReadFields) == 0 {
+		r.DenyReadFields = protoRule.WriteonlyFields
+	}
+	if len(r.DenyWriteFields) == 0 {
+		r.DenyWriteFields = protoRule.ReadonlyFields
+	}
+	return r, nil
 }
diff --git a/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go b/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go
index 6e09f6a48fc10d738fe535978e5bf64d03b58102..b115b147ee18fe36e499b2d8c4b008e83cfaa627 100644
--- a/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go
+++ b/pkg/collections/transport/grpc/protobuf_type_converters.microgen.go
@@ -56,8 +56,8 @@ func PtrCollectionToProto(coll *service.Collection) (*pb.Collection, error) {
 			HiddenFields:    coll.Access.HiddenFields,
 			ReadonlyFields:  coll.Access.DenyReadFields,
 			WriteonlyFields: coll.Access.DenyWriteFields,
-			DenyReadFields:  coll.Access.DenyReadFields,
-			DenyWriteFields: coll.Access.DenyWriteFields,
+			DenyReadFields:  coll.Access.DenyWriteFields,
+			DenyWriteFields: coll.Access.DenyReadFields,
 		}
 	}
 	protoCollection := &pb.Collection{
@@ -117,6 +117,12 @@ func ProtoToPtrCollection(protoCollection *pb.Collection) (*service.Collection,
 			DenyReadFields:  protoCollection.Access.DenyReadFields,
 			DenyWriteFields: protoCollection.Access.DenyWriteFields,
 		}
+		if len(access.DenyReadFields) == 0 {
+			access.DenyReadFields = protoCollection.Access.WriteonlyFields
+		}
+		if len(access.DenyWriteFields) == 0 {
+			access.DenyWriteFields = protoCollection.Access.ReadonlyFields
+		}
 	}
 	collection := &service.Collection{
 		ID:      protoCollection.Id,
diff --git a/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go b/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go
index 67089c7be29d97d93490295acc1cb2aa2f09cea1..4dca1e282e3bfd93fa287cc8df3495fb0931444e 100644
--- a/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go
+++ b/pkg/roles/transport/grpc/protobuf_type_converters.microgen.go
@@ -82,8 +82,8 @@ func PtrPermissionRuleToProto(rule *permission.Rule) (*commonpb.Rule, error) {
 		Actions:         actions,
 		Access:          commonpb.Access(rule.Access),
 		HiddenFields:    rule.HiddenFields,
-		ReadonlyFields:  rule.DenyReadFields,
-		WriteonlyFields: rule.DenyWriteFields,
+		ReadonlyFields:  rule.DenyWriteFields,
+		WriteonlyFields: rule.DenyReadFields,
 		ReadFilter:      rule.ReadFilter,
 		WriteFilter:     rule.WriteFilter,
 		DenyReadFields:  rule.DenyReadFields,
@@ -99,7 +99,7 @@ func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission.Rule, error
 	for _, a := range protoRule.Actions {
 		actions = append(actions, permission.Action(a))
 	}
-	return &permission.Rule{
+	r := &permission.Rule{
 		CollectionID:    protoRule.CollectionId,
 		Actions:         actions,
 		Access:          permission.Access(protoRule.Access),
@@ -108,5 +108,12 @@ func ProtoToPtrPermissionRule(protoRule *commonpb.Rule) (*permission.Rule, error
 		DenyWriteFields: protoRule.DenyWriteFields,
 		ReadFilter:      protoRule.ReadFilter,
 		WriteFilter:     protoRule.WriteFilter,
-	}, nil
+	}
+	if len(r.DenyReadFields) == 0 {
+		r.DenyReadFields = protoRule.WriteonlyFields
+	}
+	if len(r.DenyWriteFields) == 0 {
+		r.DenyWriteFields = protoRule.ReadonlyFields
+	}
+	return r, nil
 }