Given you want to verify each applied license for a particular project, you may want to use the "enforce Allow-listing" feature. Enabling this option, the system will require each new license to be added to the Allow list. Every license that is not on the list will be marked as violation. See here for a detailed description on how to switch on and off.
To change violation status, the license needs to be put on the whitelist. Using the context function in the license view, the license may be put on the corresponding list. (see how to put on Allow- or Deny list) All users with access to the project may execute this task.
But this does not immediately lift the violation status. When you look at the Allow list, you will see the license added to the list but marked with the status "approval pending". The push to the Allow list does initiate a task for the corresponding compliance manager to verify the suitability. As soon as he approves the license, the status label will change to "Allowed" (ok).
PLEASE NOTE: Approvals may be performed on all three levels: corporate, project or module. Be cautious with approvals on higher levels. Especially circumstances like distribution, modification or architectural position are defined on module level only.
It might make sense to reject an approval on project level but approve the same request on a module level instead.