Estou tentando invocar minha função Gen 2 Firebase em meu aplicativo IOS. Ele funcionou bem por vários meses, até que eu o reimplantei hoje e agora, de repente, os usuários do meu aplicativo recebem Unauthenticated
ao tentar invocá-lo.
Concedi o allUsers
& Cloud Functions Invoker (1)
principal à minha função, mas agora recebo este aviso:
O principal especificado não roles/run.invoker
foi encontrado em lugar nenhum .
Meus usuários não conseguem acessar a função. O Google deliberadamente torna as coisas mais complicadas do que deveriam?
No canto superior direito dos detalhes da função Cloud Gen 2, você verá um emblema: “Powered by Cloud Run”, junto com o nome do serviço Cloud Run na parte inferior. Lembre-se deste nome de serviço.
Em seguida, abra Serverless -> Cloud Run no menu esquerdo. Você verá uma lista de serviços Cloud Run. Encontre seu serviço Cloud Run e marque a caixa de seleção ao lado dele. Um painel aparecerá na parte superior com a mensagem “1 serviço selecionado” e botões como Copiar, Excluir e Permissões. . Clique em Permissões. O painel de permissões deste serviço Cloud Run aparecerá à direita. Aqui, você pode atribuir o papel Cloud Run Invoker à conta de serviço necessária.
Eu também sugeriria remover a permissão allUsers do Cloud Function original para evitar consequências inesperadas de segurança.