AWSRekognition — Как разделить коллекции/лица для каждой учетной записи пользователя?

Спасибо за AWS Mobile SDK — отличный способ изучить и интегрировать сервисы AWS в наши мобильные приложения.

У меня эта проблема уже несколько дней, но я еще не понял, как ее решить.

Ниже приведена схема моей системы:

Схема моей системы

  1. Из приложения я делаю запрос на свой сервер, принося текущий userId.
  2. Мой сервер вызывает GetOpenIdTokenForDeveloperIdentity() для каждого userId, полученного на шаге 1. (указанного в массиве Logins) для AWS Cognito
  3. AWS Cognito возвращает Identity и Token на мой сервер
  4. Мой сервер возвращает Identity и Token моему приложению
  5. Затем мое приложение вызывает ListCollections() с AWSRecognition.default() по AWS Rekognition.
  6. Наконец, AWS Rekognition возвращает collectionIds

Вроде бы все хорошо, но я заметил, что независимо от того, сколько разных userId было передано на шаге 2, я получаю одно и то же collectionIds на шаге 6.

Например: user1 (id: 1) создает коллекцию «AllowedGuest». user2 (id: 2) также получил "AllowedGuest"

Я думал, что для каждого переданного userId я могу получить только те коллекции и данные о лицах, которые были созданы только этим userId. Итак, согласно примеру выше: user2 (id: 2) не должен получать коллекцию "AllowGuest".

Почему я получаю эту проблему? Есть ли что-то, что я неправильно понимаю?

Заранее спасибо,


person quanguyen    schedule 07.08.2019    source источник


Ответы (1)


Что такое идентификатор пользователя? Является ли он пользователем IAM определенной учетной записи AWS?

API AWS Rekognition ListCollection возвращает все коллекции, созданные любыми пользователями этой учетной записи AWS, что объясняет, почему вы получаете все коллекции.

https://docs.aws.amazon.com/rekognition/latest/dg/API_ListCollections.html

person tly_alex    schedule 10.08.2019
comment
userId является пользователем моего приложения, а не пользователем IAM - person quanguyen; 12.08.2019
comment
Важны учетные данные AWS, которые вы использовали для вызова CreateColleciton и ListCollection. Если учетные данные принадлежат одной учетной записи AWS, они будут возвращать одни и те же коллекции. - person tly_alex; 13.08.2019