수천 건의 사용자 API 요청 및 무효화

확인차 말씀드리면, 질문하신 내용은 사용자 API 요청(User API requests)에 관한 것이 맞고, Discourse 사이트의 관리자 / API 페이지에서 사용자를 위해 생성한 API 키로 실행된 API 요청은 아닙니다. 아래 스크린샷에서 사용자 API 요청은 초록색으로 강조되어 있습니다:

사용자 API 키의 용도에 대한 자세한 내용은 이곳에서 확인하실 수 있습니다: User API keys specification.

Discourse 사이트와 통합되는 앱을 생성하지 않으셨다면, 가장 그럴듯한 설명은 사용자들이 DiscourseHub 앱(https://play.google.com/store/apps/details?id=com.discourse&hl=en&gl=US&pli=1)을 통해 사이트에 로그인하고 있거나, Fig - Native Discourse client for iOS 와 유사한 앱을 사용하여 사이트와 상호작용하고 있다는 것입니다.

이 답변이 모든 질문에 답하지는 못하지만, 다음 Data Explorer 쿼리를 사용하여 사용자 API 키 사용 현황에 대한 일반적인 개요를 얻을 수 있습니다:

SELECT * FROM user_api_keys

사이트에 사용자 API 키 요청을 보내는 애플리케이션 목록과 각 애플리케이션으로 요청을 보내는 사용자 수를 확인하려면:

SELECT
application_name,
COUNT(application_name) AS user_count
FROM user_api_keys
GROUP BY application_name

DiscourseHub 앱에서 연결하는 데 사용되는 사용자 API 키의 경우 application_name 값이 "Discourse - unknown"으로 설정됩니다.

사용자가 사용자 API 키를 사용하여 사이트와 상호작용하면, 해당 사용자의 설정 페이지 보안 탭에 Apps 항목이 추가됩니다:

해당 항목에는 앱에 부여된 권한(scopes)이 표시됩니다. 또한 앱의 액세스 권한을 취소할 수도 있습니다.

Discourse UI에서 모든 사용자 API 키를 만료시키거나 취소하는 방법을 찾지 못했습니다. 사용자 설정 페이지에서 한 번에 하나의 키만 취소할 수 있는 옵션만 존재합니다. Rails 콘솔을 통해 모든 사용자 API 키를 취소하는 것은 가능하지만, 먼저 키가 어떻게 사용되고 있는지 조사하는 것이 가치가 있을 것입니다.