Amplify を使用して、iOS アプリ用の書籍 API を作成しました。認証されたユーザーと認証されていないユーザーの両方に対して book テーブルに読み取りアクセスを許可したいと考えています。スキーマは次のとおりです。
type Book
@model
@searchable
@auth(
rules: [
{allow: private, provider: userPools, operations: [read]},
{allow: groups, groups: ["Admin"]}
]
)
{
id: ID!
category: BookCategoryType!
description: String
groupsCanAccess: [String]!
images: [Image!]
@auth(rules: [
{allow: groups, groupsField: "groupsCanAccess", operations: [read]},
{allow: groups, groups: ["Admin"]}
])
title: String!
}
fetch
ただし、から呼び出すとAWSAppSyncClient
、次のエラーが発生します。
authenticationError(AWSMobileClient.AWSMobileClientError.notSignedIn(message: "User is not signed in, please sign in to use this API."))
Cognito ID プールがEnable access to unauthenticated identities
チェックされ、認証されていない IAM ロールがあります。
何が問題なのですか?