Hi @Kapil, A (Apurva) · Thank you for sharing required information.
As you have mentioned in your current scenario, Provider creates an application(Application2) in AAD and adds app roles. The purpose of app roles is to perform authorization, and based on app role(s) in the token, required access can be granted. E.g., In your case application2 must be configured to authorize read access if the value of Roles claim is read in the token acquired and presented by Application1 and write access if the value of roles claim is write, for instance.
You can acquire a token with scope APPLICATION_ID_OF_APP2/.default but it will include Roles claim and Application2 needs to be configured to return HTTP Forbidden or Unauthorized, if Roles claim is not present in the token. A token without roles claim should be of no use.
In order to get a token with Roles claim, the App Roles defined in the Application2, must be added as application permissions under API permissions blade of Application1 and admin consent must be granted.
Hope that helps clarifying your doubt.
-----------------------------------------------------------------------------------------------------------
Please "Accept the answer" if the information helped you. This will help us and others in the community as well.