Как мое приложение на основе Cognito может определить, какой пользовательский интерфейс должен быть доступен вошедшему в систему пользователю? - PullRequest
0 голосов
/ 01 июня 2018

В одностраничном приложении ReactJS я хотел бы показать элементы пользовательского интерфейса, которые управляют функциями, доступ к которым разрешен текущему пользователю, и скрыть элементы, когда текущий пользователь не разрешен.Приложение использует Cognito через AWS Amplify .Он делает запросы REST через AWS API Gateway, где политики IAM определяют, разрешена ли каждая конечная точка.На мой взгляд, приложение должно предсказать, какие конечные точки шлюза API разрешены, чтобы определить, какие элементы пользовательского интерфейса видны.Например, когда я изменяю политики, контролирующие доступ к внутреннему API, я хотел бы быть уверен, что соответствующие изменения происходят в интерфейсном интерфейсе пользователя.

Я заметил, что Google Cloud имеет Проверка прав доступа функция, которая может быть полезна для этой цели.Приложение может запросить, какие конечные точки и методы разрешены для текущего пользователя.Есть ли подобная техника для AWS? IAM Policy Simulator выглядит так, как будто он не предназначен для этого варианта использования.

1 Ответ

0 голосов
/ 02 июня 2018

Я бы предложил использовать хранилище синхронизации AWS Cognito для этого типа настраиваемых и постоянно меняющихся политик доступа: https://aws.amazon.com/cognito/faqs/#sync

Эта функция также пытается решить некоторые проблемы синхронизации с мобильными устройствами: https://docs.aws.amazon.com/IAM/latest/UserGuide/id_roles_providers_oidc_cognito.html, что может не понадобиться для вашего случая.Мне интересно узнать, есть ли другой рекомендуемый способ реализации описанной вами функции.

Спасибо!

...