Hi,
Migrating subscription from one tenant to another tenant while there are resources in it is generally not good idea. Many resources have too many dependencies that will cause issues with the resources after migration. General way to do this is:
- Recreate resources in a new subscription under the new tenant
- Move the data for each resource that needs it from the old subscription and tenant to the new one.
This is just general guidance and will very much depends on your infrastructure and application architecture.
Specifically for the example above there is no way to move Service principal from one tenant to another.
Please "Accept the answer" if the information helped you. This will help us and others in the community as well.