Hi @Anonymous,
This wouldn't be a Portal situation, per se. You would need to setup your Portal's permissions to not be based on Authenticated User, and instead create a Web Role to give your permissions to. Then create a Power Automate, or other automated process, to send an email on registration (various options here - one example: On Create of a Contact where Username contains data and "Created By" Full Name is "SYSTEM" - note it must be done this way, you won't find SYSTEM if you just try to do Created By == SYSTEM, etc.). There you can link to the record, and in the record you can create a subgrid of Web Roles for the admin to grant. Otherwise, if it needs to be more automated, you could create a button (or a flag, some other field, etc.) that associates the intended Web Role, but this might be over-engineering the process since it'll just do the same thing - depends on your security requirements and desire for technical debt.
Example FetchXML if you use Power Automate and want to use FetchXML filter
<fetch version="1.0" output-format="xml-platform" mapping="logical" distinct="false">
<entity name="contact">
<attribute name="fullname" />
<attribute name="contactid" />
<order attribute="fullname" descending="false" />
<link-entity name="systemuser" from="systemuserid" to="createdby" link-type="inner" alias="ab">
<filter type="and">
<condition attribute="fullname" operator="eq" value="SYSTEM" />
</filter>
</link-entity>
</entity>
</fetch>