В настоящее время я работаю над тем, чтобы указать новый партнер/публичный API моей компании, который будет ресурсо-ориентированным веб-сервисом RESTful. Отсутствующий фрагмент головоломки в настоящий момент является аутентификацией/авторизацией.
Требования:
- Первоначально он должен работать в среде сервер-сервер, например. серверное приложение должно иметь возможность идентифицировать себя, чтобы мы знали, кто вызывает API.
- В будущем мы хотели бы позволить им олицетворять учетные записи пользователей, так как идентифицируемый сервер будет иметь токен, который представляет собой учетную запись пользователя в течение ограниченного периода времени.
OAuth, по-видимому, идеально подходит для (2) с процессом получения маркера, перенаправлением на веб-сайт, на котором пользователь вводит свои учетные данные, для его авторизации, а затем используя этот токен, который идентифицирует/аутентифицирует как приложение, так и пользователя.
Однако из того, что я прочитал, я не знаю, подходит ли это для (1) - то есть есть ли способ, которым OAuth может использоваться только для идентификации вызывающего приложения без наличия действительного токена для пользователя и таким образом, не нужно перенаправлять на веб-страницу, чтобы они могли ввести свои учетные данные?