Hi Rohit,
You can do it many way in a cleaner and simple one.
-
Register on behalf of your client with only required resource as scope and just share the token them to invoke resource API.
-
if you want your client to generate token then you need to expose your token service as API. Here both client and providers as individual responsibility . As a provider you need to store all the meta data information about your client your client just simply invoke your get token wrapper service. if your oAuth is refresh token enabled then as client responsibility to recheck if the token is active by invoking introspect URL and call the service with active token.
Since your API are beside your firewall only authorized client will be able to reach your network from the DMZ. Design your solution in a simple and secure way .
Regards,
Dinesh
#API-Management#webMethods#API-Gateway