Combate à Fraude Docs

Combate à Fraude Docs

    ›Android

    Introdução

    • Início
    • Token de acesso
    • Checando as respostas assinadas
    • Checklist de integração

    Android

    • Primeiros passos
    • DocumentDetector
    • PassiveFaceLiveness
    • FaceAuthenticator
    • AddressCheck
    • DeviceAnalyser
    • Customização
    • Resultado de um SDK
    • Reduzindo o tamanho dos SDKs
    • Configuração dos sensores
    • Configuração de proxy
    • Configuração de preview
    • Formulário de segurança Google
    • Analytics
    • Notas de atualização

    iOS

    • Primeiros passos
    • DocumentDetector
    • PassiveFaceLiveness
    • FaceAuthenticator
    • AddressCheck
    • DeviceAnalyser
    • Customização
    • Configuração de proxy
    • Notas de atualização

    Flutter

    • Primeiros passos
    • DocumentDetector
    • PassiveFaceLiveness
    • FaceAuthenticator
    • Notas de atualização

    React Native

    • Primeiros passos

    Ionic

    • Primeiros passos
    • DocumentDetector
    • PassiveFaceLiveness
    • FaceAuthenticator
    • Notas de atualização

    Xamarin

    • Primeiros passos

    JavaScript

    • Primeiros passos
    • DocumentDetector
    • PassiveFaceLiveness
    • FaceAuthenticator
    • Erros do SDK
    • Customização
    • Eventos do SDK
    • Segurança
    • Notas de atualização (DocumentDetector)
    • Notas de atualização (PassiveFaceLiveness)
    • Notas de atualização (FaceAuthenticator)

    API

    • Primeiros passos
    • Assinatura de respostas
    • Registro Facial
    • Autenticação Facial
    • Prova de vida passiva
    • Autenticação de dispositivos
    • Comprovante de endereço digital

    FaceAuthenticator

    Facematch com prova de vida do usuário do seu app, ideal para fluxos de login ou de operações financeiras valiosas.


    Tamanho do SDK

    Um máximo de aproximadamente 3.8 MB, podendo diminuir por conta desses elementos.


    Analytics

    Nossos SDKs por padrão coletam informações sobre o usuário e ambiente em execução para melhorar o mapeamento de fraudadores e entender seus comportamentos. Recomendamos manter essa coleta ativa pois o único intuito desses dados é para redução de fraudes, mas se desejar, você desabilitar pelo parâmetro .setAnalyticsSettings(boolean useAnalytics).


    Permissões em tempo de execução

    PermissãoMotivoObrigatória?
    CAMERAPara capturar a selfie do usuárioSim


    Instanciando o FaceAuthenticator

    Primeiro, crie um objeto do tipo FaceAuthenticator. Este objeto serve para você configurar todos as suas regras de negócio para o SDK:

    FaceAuthenticator mFaceAuthenticator = new FaceAuthenticator.Builder(String mobileToken)
        // veja a tabela abaixo
        .build();
    

    Todos os parâmetros anotados com @Nullable podem receber valores null, útil caso você queira configurar somente um dos parâmetros de um mesmo método.


    FaceAuthenticator.Builder

    ParâmetroObrigatório?
    String mobileToken

    Token de utilização associado à sua conta da CAF.
    Sim
    .setPeopleId(String peopleId)

    Identificador do usuário para realização do facematch. Atualmente, esse valor aceita somente o CPF do usuário.
    Sim
    .setAnalyticsSettings(boolean useAnalytics)

    Habilita/desabilita a coleta de dados para o analytics.
    Não, o padrão é true
    .setStabilitySensorSettings(@Nullable SensorStabilitySettings sensorStabilitySettings)

    Altera as configurações padrão do sensor de estabilidade, Aplique null se não deseja utilizar este sensor.
    Não. O tempo padrão é 1000 ms e o limiar padrão é 0.7 m/s²
    .setCaptureSettings(@Nullable CaptureSettings captureSettings)

    Define as configurações de captura. O método aceita instâncias das classes ImageCapture e VideoCapture.
    Não. O padrão é ImageCapture
    .setLayout(@Nullable @LayoutRes Integer layoutId)

    Substitui o layout padrão do SDK. Crie um arquivo na pasta layout do seu projeto, copie este template e faça as alterações desejadas.
    Não. O padrão é esse
    .setMask(@DrawableRes Integer greenMask, @DrawableRes Integer whiteMask, @DrawableRes Integer redMask)

    Troca as máscaras para captura da face: SUCESSO, NORMAL e FALHA, nesta ordem. Caso for utilizar esta opção, utilize máscaras com a mesma área de detecção da face, essa região é de suma importância para o algoritmo realizar a captura.
    Não. Os padrões de máscara são:
    Normal
    Sucesso
    Falha
    .setStyle(@StyleRes int styleResourceId)

    Substitui o style padrão do SDK. No arquivo styles.xml do seu projeto, copie este template e edite.
    Não. O padrão é esse
    .enableSwitchCameraButton(boolean enable)

    Permite habilitar/desabilitar o botão para o usuário trocar entre a câmera frontal e traseira.
    Não. O padrão é True
    .setNetworkSettings(int requestTimeout)

    Define o tempo de timeout das requests do SDK.
    Não. O padrão é 60 (segundos)
    .enableGoogleServices(boolean enable)

    Permite habilitar/desabilitar recursos do SDK que consomem GoogleServices no SDK, não recomendamos desabilitar os serviços por conta da perda de segurança.
    Não. O padrão é true
    .setUseEmulator(boolean use)

    Permite o uso de emuladores quando true. Quando true, o modo ADB é ativado em conjunto para o emulador funcionar corretamente. Não é recomendado ativar esta opção, utilize apenas para fins de testes.
    Não. O padrão é false
    .setUseRoot(boolean use)

    Permite o uso de dispositivos root quando true.
    Não. O padrão é false
    .setUseDeveloperMode(boolean use)

    Permite o uso do modo de desenvolvedor quando true. Não é recomendado ativar esta opção, utilize apenas para fins de testes.
    Não. O padrão é false
    .setUseAdb(boolean use)

    Permite o uso do modo de depuração Android Debug Bridge (ADB) quando true. Não é recomendado ativar esta opção, utilize apenas para fins de testes.
    Não. O padrão é false
    .setUseDebug(boolean use)

    Permite o uso do app em modo debug quando true. Não é recomendado ativar esta opção, utilize apenas para fins de testes.
    Não. O padrão é false
    .setAudioSettings(boolean use)

    Habilita/desabilita a reprodução dos áudios do SDK.
    Não. O padrão é true
    .setAudioSettings(Integer audioResId)

    Permite customizar o áudio utilizado pelo SDK.
    Não. O padrão é "Registro facial"
    .enableBrightnessIncrease(boolean enable)

    Habilita/desabilita o incremento de brilho do dispositivo na abertura do SDK.
    Não. O padrão é True
    .setEyesClosedSettings(boolean enable, double threshold)

    Permite customizar as configurações de validação de olhos abertos do SDK. O método espera como parâmetro enable para habilitar ou não a validação, e threshold, valor entre 0.0 e 1.0
    Não. O padrão é true e 0.5

    Desativando validações de segurança para teste

    Estamos constantemente realizando ações para tornar o produto cada vez mais seguro, mitigando uma série de ataques observados ao processo de captura e, consequentemente, reduzindo o maior número de possíveis fraudes de identidade. O SDK possui alguns bloqueios que podem impedir a execução em certos contextos. Para desabilitá-los, você pode utilizar os métodos conforme o exemplo abaixo:

    FaceAuthenticator.Builder("mobileToken")
        .setUseEmulator(true)
        .setUseRoot(true)
        .setUseDeveloperMode(true)
        .setUseAdb(true)
        .setUseDebug(true)
        .build();
    

    Atenção! A desabilitação das validações de segurança são recomendadas apenas para testes. Para publicação do seu aplicativo em produção, recomendamos utilizar as configurações padrão.

    Iniciando o FaceAuthenticatorActivity

    Após a criação do FaceAuthenticator, inicie a FaceAuthenticatorActivity passando esse objeto como parâmetro via intent extra:

    Intent mIntent = new Intent(context, FaceAuthenticatorActivity.class);
    mIntent.putExtra(FaceAuthenticator.PARAMETER_NAME, mFaceAuthenticator);
    startActivityForResult(mIntent, REQUEST_CODE);
    


    Obtendo o resultado

    Para obter o objeto FaceAuthenticatorResult, que contém as capturas obtidas pelo SDK, sobrescreva o método onActivityResult na mesma activity que você iniciou a FaceAuthenticatorActivity:

    @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        if (requestCode == REQUEST_CODE) {
            if (resultCode == RESULT_OK && data != null) {
                FaceAuthenticatorResult mFaceAuthenticatorResult = (FaceAuthenticatorResult) data.getSerializableExtra(FaceAuthenticatorResult.PARAMETER_NAME);
                // verifique mFaceAuthenticatorResult.getSDKFailure() para descobrir qual foi o motivo da finalização do SDK
            } else {
                // o usuário fechou a activity
            }
        }
        super.onActivityResult(requestCode, resultCode, data);
    }
    

    FaceAuthenticatorResult

    ParâmetroPode ser nulo?
    boolean authenticated

    Flag que indica se a selfie capturada passou no facematch com a foto armazenada no servidor da CAF e o respectivo CPF informado pelo usuário.
    Não
    String signedResponse

    Resposta assinada do servidor da CAF que realizou o facematch. Utilize esse parâmetro caso queira uma camada extra de segurança, verificando se a assinatura da resposta não está quebrada, provocada por uma interceptação da requisição. Se estiver quebrada, há um grande indício de interceptação da requisição.
    Sim, em caso de erro
    String trackingId

    Identificador dessa execução em nossos servidores. Se possível, salve este campo e mande-o junto para nossa API. Assim, teremos mais dados de como o usuário se comportou durante a execução.
    Sim, caso o usuário configure useAnalytics = false ou as chamadas de analytics não funcionem
    SDKFailure sdkFailure

    Objeto que informa o motivo do encerramento do SDK. Para mais informações, veja aqui.
    Sim, em caso de sucesso
    lensFacing: Int

    Define a face da câmera que foi utilizada. Utilize FaceAuthenticatorResult.LENS_FACING_FRONT ou FaceAuthenticatorResult.LENS_FACING_FRONT para validar.
    Não
    ← PassiveFaceLivenessAddressCheck →
    • Tamanho do SDK
    • Analytics
    • Permissões em tempo de execução
    • Instanciando o FaceAuthenticator
      • FaceAuthenticator.Builder
    • Desativando validações de segurança para teste
    • Iniciando o FaceAuthenticatorActivity
    • Obtendo o resultado
      • FaceAuthenticatorResult
    Combate à Fraude Docs
    2021 © Combate à Fraude - Todos os direitos reservados.
    COMBATEAFRAUDE TECNOLOGIA DA INFORMACAO LTDA CNPJ: 34.102.645/0001-57
    R. Tiradentes, 1077 - 5º andar - Centro, Venâncio Aires - RS, CEP 95800-000