В сценарии 1 компонент A1 не является клиентом, поскольку он не имеет доступа к защищенным ресурсам из Google.Но компонент А2 является клиентом.И это защищенный клиент, поскольку он не предоставляет учетные данные клиента владельцу ресурса (просто пользователю приложения).С вашей конечной точки, и А1, и А2 - это единое целое (одно приложение).Но это не относится к серверу авторизации.
В сценарии 2 компонент A1 получает токены и также потребляет ресурсы Google.Таким образом, с точки зрения сервера авторизации, A1 является клиентом.И это публичный клиент, так как он не может защитить учетные данные клиента, если таковые имеются (он основан на браузере.!).Как и прежде, с вашей стороны, A1 и A2 - это единое целое.
Теперь подумайте о сценарии, в котором вам нужно использовать сервисы Google из компонентов A1 и A2.Теперь у вас есть возможность зарегистрировать двух клиентов, потому что с точки зрения сервера авторизации он видит две разные сущности.Один может защитить учетные данные, а другой нет.Тем самым вы полностью используете типы клиентов OAuth.Для этого авторизуйтесь.Сервер может облегчить некоторые функции (которые я также не полностью осознаю).Это может быть что-то вроде возможности зарегистрировать два URL перенаправления на одного клиента.Или использовать одну и ту же идентификационную информацию клиента для конфиденциального и публичного клиента.