私は以下を達成しようとしています: APIゲートウェイへのいくつかのメニューと呼び出しに対して異なるユーザー権限が必要なWebアプリケーションがあります。Cognito User Pool Groupsは異なるロールでは機能しません。
私は次のことを行っている: - それらのグループ に割り当てられたユーザ - - 2グループ(グループ1とグループ2) で、ユーザのプールを設定2つのポリシー(ポリシー1を設定し、ポリシー1が供給における認証ロールのデフォルトのポリシーです方針2、identites) - 。役割 に正しい信頼ポリシーを設定する - authentica下連合アイデンティティでは、ション・プロバイダー、私はに認証ロールに選択を設定しているが、フロントにはトークン
からロールを選択し、私はIDトークンをデコードし、cognitoことを確認した:初期化時にグループなどが正しいですかログイン。
したがって、グループ1はすべてを許可する緩いポリシーであり、ポリシー2はAPIゲートウェイ内の特定のリソースへの呼び出しを許可しないようにするより厳しいポリシーです。
しかし、より厳しいポリシー2を持つグループ2にユーザーを割り当てると、ユーザーは引き続きすべてを許可するポリシー1を使用しているようです。私はここで間違って何をしていますか?
私はthis threadと同じ問題を持っていないと行われ、それが言うまさに、まだ何の進展
ここで同じ問題があります。あなたはそれを解決しましたか? – Philipp
いいえ、私は別の方法でそれを解決してしまった...私は誤って認可者としてコグニートを使用しました。私はオーソライザをまったく使用してはいけませんでしたが、代わりにAWS_IAMをAPIゲートウェイに使用してください。次に、正しいARN(以前のログインから保存された)で正しい役割を引き受けるAPIゲートウェイへの呼び出しの前に、リフレッシュ認証情報とセッションをリフレッシュします。リトルトリッキーしかし、それは動作します。これがあなたを助けることを願って! – Shaho
アンサーに感謝します。私は同じ方法であなたに尋ねた後、昨日も解決しました。他の人が興味を持っている場合は、ここに私のソリューションを掲載しました:https://stackoverflow.com/questions/48540390/aws-restrict-cognito-authorized-user-to-specific-lambda-functions – Philipp