Your understanding is correct, but you have much more flexibility in OAuth2.0 areas (claims)
These areas can be configured in any way, for example, in your case, instead of creating separate areas for each CRUD operation for each main area, you can create group areas, such as
customer.read_write
order.read_write
Etc, , ,
webportal.full_access
adminportal.full_access
, ,
ValidScopesIn({Scopes.WEBPORTAL_FULL_ACCESS, Scopes.CUSTOMER_READ_WRITE})
public void createCustomer(Customer customer) {
}