Ir para o conteudo principal

Autenticacao do Device SDK (DPoP)

O SDK v2 da vitalera utiliza DPoP (Demonstration of Proof-of-Possession) para autenticacao. Isto vincula os tokens a um par de chaves criptograficas no dispositivo, prevenindo roubo de tokens e ataques de replay -- critico para software de dispositivo medico que manuseia informacao de saude protegida.

Como funciona

  1. Inicializacao -- Quando chama VitaleraSdk.builder().clientId("your-org-license-key").build(), o SDK gera um par de chaves DPoP (armazenado no Android Keystore ou iOS Secure Enclave).
  2. Ativacao -- O SDK envia um pedido de ativacao assinado com DPoP ao servico de autenticacao da vitalera. O servidor valida a chave de licenca da organizacao e retorna um access token vinculado ao DPoP juntamente com os direitos da organizacao.
  3. Cache de direitos -- Os direitos sao armazenados em cache localmente por um periodo de graca offline de 7 dias. O SDK funciona offline desde que os direitos em cache nao tenham expirado.
  4. Atualizacao automatica -- O SDK gere a atualizacao de tokens de forma transparente. Nunca precisa de gerir tokens manualmente.

Android (Kotlin)

val sdk = VitaleraSdk.builder()
.context(applicationContext)
.clientId("your-org-license-key") // Organization license key
.addProvider("omron")
.build() // suspend: DPoP key gen + activation

iOS (Swift)

let sdk = try await VitaleraSdk.companion.builder()
.clientId(clientId: "your-org-license-key") // Organization license key
.addProvider(providerName: "omron")
.build() // async: Secure Enclave key gen + activation

Obtencao de uma chave de licenca

Contacte sdk@vitalera.com para obter uma chave de licenca de organizacao. Cada chave esta associada a uma organizacao especifica e determina quais modulos de provedores e funcionalidades estao disponiveis.

Operacao offline

O SDK foi desenhado para casos de uso de dispositivos medicos onde a conectividade a internet pode ser intermitente. Apos a ativacao inicial:

  • Pesquisa e emparelhamento de dispositivos funciona completamente offline.
  • Recolha de observations de dispositivos BLE funciona completamente offline.
  • Os dados sao armazenados em cache localmente e sincronizados quando a conectividade e restabelecida.
  • O periodo de graca de 7 dias permite ao SDK operar sem contacto com o servidor ate uma semana.

Se o periodo de graca expirar sem conectividade, o SDK requer reativacao antes de continuar a operar.

Arquitetura de seguranca

CamadaMecanismo
Armazenamento de chavesAndroid Keystore / iOS Secure Enclave (com suporte de hardware)
Vinculacao de tokensA prova DPoP vincula cada token ao par de chaves do dispositivo
Prevencao de replayCada prova DPoP inclui um jti unico e um timestamp iat
TransporteTLS 1.2+ para toda a comunicacao com o servidor

Proximos passos


Precisa de ajuda?

Contacte support@vitalera.io para assistencia com a autenticacao do SDK.