사용자 API 키 관리 - Kotlin SDK
코틀린 SDK (Kotlin SDK) 를 사용하여 사용자가 재인증할 필요 없이 기존 사용자를 대신하여 Realm 과 통신할 수 있도록 하는 사용자 API 키 를 만들고 관리 수 있습니다.
사용자 API 키는 익명이 아닌 다른 인증 제공자가 생성한 사용자 객체와 연결됩니다. 각 사용자는 자신의 계정에 최대 20개의 사용자 키를 연결할 수 있습니다.
user.apiKeyAuth 인터페이스를 통해 키를 관리할 수 있습니다.
팁
사용자 API 키는 사용자 또는 서비스가 API 키 인증 제공자 를 사용하여 Realm으로 직접 인증할 수 있는 서버 API 키 와 동일하지 않습니다. 서버 API 키에 대해 자세히 알아보려면 API 키 인증을 참조하세요.
사용자 API 키 만들기
새 사용자 API 키를 생성하려면 ApiKeyAuth.create() 에 고유한 키 이름을 전달합니다. 생성된 키는 로그인한 사용자와 연결되며 사용자를 대신하여 Realm과 상호 작용하는 데 사용할 수 있습니다. 익명 사용자에 대한 사용자 API 키를 생성할 수 없습니다.
경고
API 키 값 저장
SDK는 사용자가 생성할 때 사용자 API 키의 값만 반환합니다. 로그인에 사용할 수 있도록 key
값을 안전하게 저장해야 합니다.
key
값을 분실하거나 저장하지 않으면 이를 복구할 수 있는 방법이 없습니다. 새 사용자 API 키를 생성해야 합니다.
val user = app.currentUser!! val provider = user.apiKeyAuth // Create an API key for the logged-in user val key = provider.create("apiKeyName")
사용자 API 키 조회
로그인한 사용자와 연결된 모든 사용자 API 키 목록을 가져오려면 ApiKeyAuth.fetchAll()을 호출합니다.
로그인한 사용자의 특정 사용자 API 키를 찾으려면 키의 id
을 ApiKeyAuth.fetch()에 전달합니다.
val user = app.currentUser!! val provider = user.apiKeyAuth // Get all keys for the logged-in user val apiKeys = provider.fetchAll() // Get a specific key by its ID val apiKey = provider.fetch(key.id)
사용자 API 키 활성화 또는 비활성화
키의 id
를 사용하여 ApiKeyAuth.enable() 또는 ApiKeyAuth.disable() 을 호출하여 키를 활성화하거나 비활성화할 수 있습니다. 비활성화된 키를 사용하여 사용자를 대신하여 로그인할 수 없습니다.
val user = app.currentUser!! val provider = user.apiKeyAuth // ... fetch the key to enable or disable // Enable an API key that's currently disabled provider.enable(key.id) // Disable an API key that's currently enabled provider.disable(key.id)
사용자 API 키 삭제
특정 사용자 API 키를 영구적으로 제거하려면 키의 id
를 ApiKeyAuth.delete() 에 전달합니다. 삭제된 키를 복구하거나 사용자를 대신하여 로그인하는 데 사용할 수 없습니다.
val user = app.currentUser!! val provider = user.apiKeyAuth // ... fetch the key to delete // Delete the specified API key provider.delete(key.id)