CODEOWNERS based push rules

From the docs:

Any user who is not specified in the CODEOWNERS file cannot push changes for the specified files or paths, unless they are specifically allowed to. You don’t have to restrict developers from pushing directly to the protected branch. Instead, you can restrict pushing to certain files where a review by Code Owners is required.

Assuming I have a protected branch configured to disallow push to anyone and also a CODEOWNERS file configured that specifies some codeowners for some files. If I directly push changes to files matching entries in the CODEOWNERS files, the push is rejected. But if I edit files not listed in CODEOWNERS, the push should go in. Is it correct?

Because I can’t make it work. I always get my push rejected if the protected branch doesn’t allow anyone to push.