관리자로 사용자 API 키를 프로그래매틱하게 생성하기

모두 안녕하세요, 할로윈과 명절 잘 보내세요.

관리자로 생성된 각 사용자에게 API 키를 생성할 수 있는 방법이 있을까요? User API keys specification 링크에 따르면 사용자 승인이 필요하다고 하는데, 관리자 API 키를 사용하여 사용자별 API 키를 프로그래밍 방식으로 생성할 수 있는 방법이 있을까요?

미리 감사드립니다.

이 키를 생성하는 작업이 어떤 문제를 해결할까요? 다른 방법이 있을 수도 있고, 더 많은 정보를 알게 되면 해결책이 떠오를 수도 있습니다.

다른 사이트와 인증 정보를 공유하고 있습니다(사용자가 Discourse를 사용하려면 별도의 계정을 만들 필요가 없도록 하기 위함입니다). 이제 다른 웹앱에서 사용자의 일부(비공개) 데이터를 가져오고, 때로는 사용자를 대신해 게시물을 작성하고 싶습니다.

따라서 DiscourseConnect - Official Single-Sign-On for Discourse (sso)와 같은 것을 원하실 가능성이 높습니다.

또는 앱이 브라우저에서 Discourse 데이터를 가져오는 경우라면, 이미 사용자가 로그인되어 있을 것입니다. 또는 앱이 백엔드에서 데이터를 자동화 방식으로 가져오는 경우라면, 전역 키(global key)를 사용하면 됩니다.

네, SSO 링크를 보내주셔서 감사합니다. SSO는 이미 완료했으며, 이제 웹앱(React 앱)의 프론트엔드에서 사용자를 대신해 게시글을 올리고 싶습니다.

그러면 브라우저에서 게시물을 작성해야 합니다(이게 바로 "프론트엔드"라는 말의 뜻이죠?). 그러면 로그인된 상태이므로, CORS 관련 설정만 해결하면 될 것 같습니다.

네, 브라우저에서입니다. 명확하지 않게 말씀드려서 죄송합니다. 이 모든 것은 다른 웹앱에서 발생하고 있으며, 사용자는 로그인되어 있지 않고 Discourse의 iframe도 사용하지 않습니다. 요청은 브라우저에서 발생하며, apikey를 요청 매개변수로 전달합니다.

제 이해에 따르면, 사용자의 apikey를 가진다면 콘솔/터미널(curl 또는 동등한 도구)을 포함해 어디서든 해당 사용자를 대신하여 작업을 수행할 수 있습니다. 더 이상 CORS 문제가 발생하지 않습니다.

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

정말 큰 도움이 됐어요! 감사합니다!