Hi Aaron,
There isn't any OOTB solution to map roles from AAD, unfortunately. At least not that I'm aware of. In the documentation you will see this note:
The claims-based authentication implemented in Xperience handles only the authentication of users (uses only the name and email of users from the tokens), you have to configure the authorization of users (permissions and roles) in Xperience itself.
The other thing, if you look at the Global events, there is one for Authenticate where you could have mapped Roles during sign in, however, unfortunately, this event doesn't contain token details (groups in your case) from AAD.
Therefore, Sean's approach you listed in your question is perhaps the only way of dealing with this case. I don't think there is a significant risk associated with this solution for you, because the new version of Kentico will have CMS admin on .net Core anyways, therefore any custom code you will write here will only target your current site.