Да, вы можете сделать это с помощью OAuth, но то, как вы это сделаете, зависит от того, как организованы данные, к которым осуществляется доступ через вашу серверную службу.Если данные на самом деле относятся к конкретному пользователю, то ваш пользователь действительно является владельцем ресурса.В этом случае вы будете использовать типичный код авторизации.С этим типом предоставления вы регистрируете клиента на сервере аутентификации OAuth и получаете client_id и client_secret.Client_id действительно отображается в браузере, но client_secret находится на сервере вашего веб-приложения и никогда не отображается.Он отправляется только по запросам обратного канала (без браузера) на ваш сервер аутентификации.Главное здесь - то, что только ваше собственное клиентское веб-приложение будет зарегистрировано и получит client_id / client_secret.Вам просто не нужно предоставлять конечные точки публичной регистрации, чтобы другие клиенты не могли зарегистрироваться.С этим типом гранта, чтобы ваше веб-приложение получило авторизацию для доступа к данным пользователя в фоновой службе, пользователю необходимо будет подтвердить авторизацию в браузере как часть процесса.
Вкл.с другой стороны, если данные, к которым вы обращаетесь в своей серверной службе, не зависят от пользователя, вы можете использовать грант OAuth Client Credentials.С этим типом гранта вы регистрируете клиента, как и раньше, и получаете client_id и client_secret.Секрет надежно хранится на сервере веб-приложений и передается только в запросах обратного канала.Вы бы не позволяли другим клиентам регистрироваться.Затем ваше веб-приложение может получить авторизацию для вашей серверной службы, даже не требуя авторизации пользователя в браузере.