Criar apikey programaticamente para o usuário como admin

Olá a todos, feliz Halloween e boas festas.

Existe uma maneira de criar uma apikey para cada usuário criado como administrador? Existe User API keys specification que precisa de aprovação do usuário, existe uma maneira de criar uma apikey por usuário programaticamente usando a apikey de administrador?

Agradeço desde já.

1 curtida

Que problema a geração dessas chaves vai resolver? Talvez haja outra maneira e talvez saber mais sugira uma solução.

Estamos compartilhando a autenticação com outro site (para que os usuários não precisem criar outra conta para usar o discourse). Agora, no outro webapp, gostaríamos de obter alguns dados (não públicos) dos usuários e, às vezes, postar em nome do usuário.

Então você provavelmente quer algo como DiscourseConnect - Single Sign-On Oficial para Discourse (sso).

Ou se o aplicativo estiver buscando dados do Discourse no navegador, o usuário já estará logado. Ou se o aplicativo estiver buscando os dados de alguma forma automatizada no backend, você pode simplesmente usar a chave global.

Sim, obrigado pelo link do SSO. Já concluí o SSO, queremos postar em nome dos usuários do frontend do nosso webapp (aplicativo React).

Então você vai querer postar do navegador (é isso que "frontend" significa?), então eles estarão logados, então você só precisa resolver as coisas de CORS, eu acho.

Sim, do navegador. Desculpe se não fui claro. Tudo isso está acontecendo a partir de outro webapp, o usuário não está logado e não há iframing do discourse. A solicitação se origina de um navegador passando a apikey como parâmetros de solicitação

Meu entendimento de apikeys é que, uma vez que temos a apikey do usuário, podemos agir em nome dele de qualquer lugar, mesmo de um console/terminal (curl ou equivalente). Chega de CORS

https://meta.discourse.org/t/discourse-api-documentation/22706/301

4 curtidas

Salvador! Obrigado!