Как заставить моих конечных пользователей (под сервером идентификации wso2) подписаться на API в менеджере API wso2? - PullRequest
1 голос
/ 13 февраля 2020

В настоящее время я выполняю Po C в WSO2 API manager (v2.6.0) . У меня уже есть веб-приложение (например, бронирование пиццы), а также зарегистрированы клиенты (конечные пользователи), которые используют приложение для бронирования пиццы. Теперь я хотел принести бэкэнд-сервисы приложения для бронирования пиццы, такие как,

  1. Выбрать местоположение магазина,
  2. Забронировать пиццу,
  3. Порядок следования и др. c.

в качестве API в WSO2 API Manager. Для этого я бы создал необходимый API в диспетчере API. Затем я хотел привести существующих пользователей веб-приложений (конечных пользователей) в диспетчер API и предоставить доступ к этим API.

Как лучше всего это реализовать?

  1. Перевести моих пользователей на сервер идентификации WSO2 и использовать сервер идентификации в качестве менеджера ключей для моего менеджера API?
  2. Перевести моих пользователей в хранилище дополнительных пользователей / использовать пользовательское хранилище пользователей менеджера API?

В таком случае, как бы я предоставлял доступ к определенным API (подписываясь на API), не входя в хранилище API Manager и не подписываясь вручную для каждого пользователя?

Кроме того,

  1. Какая польза от создания поставщика услуг и приложения Oauth при входящей аутентификации?

  2. Что я могу сделать с этим приложением?

  3. Это то же самое, что приложение, которое мы создаем перед подпиской на API в хранилище API Manager?

  4. Можно ли добавить пользователей в это приложение и предоставить им общий доступ?

  5. Могу ли я подписаться на API, используя это приложение, чтобы все пользователи этого приложения имели к нему доступ?

Ответы [ 2 ]

2 голосов
/ 13 февраля 2020

Вы можете сделать это любым способом. Использование IS в качестве диспетчера ключей (если вы уже используете IS) или добавление в качестве дополнительного хранилища пользователей.

Итак, если вы уже используете WSO2 Identity Server в своем развертывании, его настройка в качестве диспетчера ключей (путем совместного использования хранилищ пользователей) автоматически разрешит всем пользователям в IS (с соответствующим разрешением) доступ к API-интерфейсу.

Если вы в настоящее время не используете IS, лучшим вариантом будет добавить в качестве дополнительного хранилища пользователей существующее развертывание APIM.

Пожалуйста, найдите ответы на другие вопросы ниже.

  1. Какая польза от создания поставщика услуг и создания приложения Oauth при входящей аутентификации?
  2. Что можно сделать с этим приложением?
  3. Это то же самое, что и приложение, которое мы создаем перед подпиской на API в хранилище менеджера API?
  4. Можно ли добавлять пользователей в это приложение и предоставлять им доступ в общие?
  5. Могу ли я подписаться на API с помощью этого приложения, чтобы все пользователи этого приложения имели к нему доступ?

Ответ

Поставщик услуг создается автоматически при создании приложения Oauth и генерации ключей. Но существуют разные аспекты этих двух сущностей.

  • Поставщик услуг обычно используется для генерации ключей приложения, чтобы получить токен доступа для вызова API.

  • Приложение OAuth (при создании через хранилище API) имеет несколько других применений, таких как подписка на API, применение политик регулирования для подписок et c.

Чтобы использовать токен, сгенерированный Приложением, соответствующее API должно быть подписано приложением. В противном случае вы не сможете вызвать этот API, хотя у вас есть действительный токен доступа.

Вы можете подписаться на API только из приложения OAuth, созданного через API Store.

Ваши пользователи могут использовать одно и то же приложение OAuth (которое создается через портал Store и подписано на API) создать для них токен доступа. То есть, предоставляя им ключи приложения и используя тип предоставления пароля, они могут сгенерировать для них токен

См. Эту документацию для получения дополнительной информации об API токена и типах предоставления. https://docs.wso2.com/display/AM260/Token+API

1 голос
/ 17 февраля 2020

Добавление к тому, что объяснила @Menaka.

Ваши конечные пользователи не должны подписываться на API. Только разработчик приложения должен подписаться и встраивать потребительский ключ / секрет в свое приложение. Затем приложение должно сгенерировать токены для конечных пользователей с использованием этих пар ключей + учетные данные конечного пользователя.

...