Это проблема с сетью. Просто ограничьте доступ к микросервису B на сетевом уровне. Это можно легко сделать, если использовать Docker, например. Вы бы просто не публично выставляли соответствующий порт для микросервиса B, а выставляли его в определенной сети, а затем подключались к этой сети.
Если вы хотите добавить дополнительную безопасность, вы можете использовать общедоступные/закрытые ключи. В качестве альтернативы, было бы проще создать JWT для приложения A и проверить его в микросервере B, но по мере добавления дополнительных микросервисов это будет иметь дополнительные накладные расходы на управление.
В качестве альтернативы, вы должны смотреть в API шлюза, который может обрабатывать доступ API для вас
Я бы рекомендовал не позволять microservices использовать синхронную связь при всех (использование обмена сообщениями и паб/суб вместо). –
Не думаю, что этот вопрос имеет какое-либо отношение к синхронности? Синхронные вызовы также отлично действуют в микросервисах, например, платежи – ExoticChimp