Next BP 24.174.2

OAuth_Aplicativo_DAO extends DAO
in package

Cadastro dos aplicativos clientes do servidor OAuth do Next BP.

Ver manual/pt-BR/dev_oauth.md

Table of Contents

Constants

ESQUEMAS_PROIBIDOS  = array('javascript', 'data', 'file', 'vbscript', 'about', 'blob')
Esquemas que nunca podem receber o código de autorização.
PARAMETRO_HOSTS_REDIRECT  = 'oauth_hosts_redirect_permitidos'
PARAMETRO_REGISTRO_DINAMICO  = 'oauth_registro_dinamico'

Properties

$_erp_empresa  : mixed
$_erp_filial  : mixed
$_erp_grupo  : mixed
$api_token  : mixed
$dir_dao  : mixed
$emp  : mixed
$idioma  : mixed
$instance_token  : mixed
$login_anonimo  : mixed
$token_job  : mixed
$viewcode  : mixed

Methods

__construct()  : mixed
alterar_situacao()  : mixed
Desativar o aplicativo derruba todas as conexões dele (os tokens emitidos param na hora).
api_token()  : mixed
AutoLoad()  : mixed
ConvertBase64()  : mixed
criar()  : mixed
Cria o aplicativo. Um aplicativo confidencial recebe o client_secret em `$aplicativo_model->client_secret`, que não é persistido: só o hash.
Delete_Token_JOB()  : mixed
DxParamsAddFilter()  : mixed
emp()  : mixed
excluir()  : mixed
gerar_novo_segredo()  : mixed
Troca o segredo: o anterior deixa de valer na hora. O aplicativo passa a confidencial.
get_login_anonimo()  : mixed
getFormData()  : mixed
getJsonData()  : mixed
hash_segredo()  : mixed
O segredo tem 256 bits aleatórios: sha256 basta, e é o que permite comparar em tempo constante.
hosts_redirect_permitidos()  : mixed
Hosts (ou *.dominio) e esquemas de aplicativo nativo aceitos no registro dinâmico. Vazio libera todos.
instance_token()  : mixed
isJsonRequest()  : mixed
listar()  : mixed
LoadDAO()  : mixed
LoadHTML()  : mixed
LoadMail()  : mixed
LoadModel()  : mixed
LoadPDF()  : mixed
popular()  : mixed
popular_por_client_id()  : mixed
preencher()  : mixed
ReadBodyParams()  : mixed
ReadDxParams()  : mixed
ReadFile()  : mixed
ReadFiles()  : mixed
ReadGet()  : mixed
ReadPost()  : mixed
ReadRequest()  : mixed
redirect_uri_valida()  : mixed
URL de retorno aceitável para receber o código de autorização: - https com host; - http só no loopback (aplicativos nativos, RFC 8252 §7.3); - esquema próprio de aplicativo nativo, ex.: cursor:// (RFC 8252 §7.1).
registrar_uso()  : mixed
registro_dinamico_habilitado()  : mixed
salvar()  : mixed
Inclui ou altera um aplicativo pela tela de administração. Passar a confidencial gera um segredo (devolvido uma única vez); voltar a público descarta o segredo.
set_login_anonimo()  : mixed
Start_Token_JOB()  : mixed
WhatRequest()  : mixed
limite_sql()  : mixed
Normaliza um valor que será interpolado em LIMIT/OFFSET, onde o PDO também não aceita parâmetro nomeado. Negativos viram 0, pois quebrariam a consulta.
lista_ids_sql()  : mixed
Monta o conteúdo de um IN (...) a partir de ids já validados como inteiros.
normalizar_ids()  : array<string|int, mixed>
Normaliza uma lista de ids para interpolação segura em um IN (...).

Constants

ESQUEMAS_PROIBIDOS

Esquemas que nunca podem receber o código de autorização.

public mixed ESQUEMAS_PROIBIDOS = array('javascript', 'data', 'file', 'vbscript', 'about', 'blob')

PARAMETRO_HOSTS_REDIRECT

public mixed PARAMETRO_HOSTS_REDIRECT = 'oauth_hosts_redirect_permitidos'

PARAMETRO_REGISTRO_DINAMICO

public mixed PARAMETRO_REGISTRO_DINAMICO = 'oauth_registro_dinamico'

Properties

$instance_token

protected static mixed $instance_token

$login_anonimo

protected static mixed $login_anonimo = false

Methods

alterar_situacao()

Desativar o aplicativo derruba todas as conexões dele (os tokens emitidos param na hora).

public alterar_situacao(mixed $id, mixed $ativo, mixed $usuario_id) : mixed
Parameters
$id : mixed
$ativo : mixed
$usuario_id : mixed

AutoLoad()

public static AutoLoad(mixed $className) : mixed
Parameters
$className : mixed

ConvertBase64()

public static ConvertBase64(mixed $name, mixed &$request_params) : mixed
Parameters
$name : mixed
$request_params : mixed

criar()

Cria o aplicativo. Um aplicativo confidencial recebe o client_secret em `$aplicativo_model->client_secret`, que não é persistido: só o hash.

public criar(mixed $aplicativo_model[, mixed $usuario_id = null ]) : mixed
Parameters
$aplicativo_model : mixed
$usuario_id : mixed = null

Delete_Token_JOB()

public static Delete_Token_JOB() : mixed

DxParamsAddFilter()

public DxParamsAddFilter(mixed &$params, mixed $campo, mixed $condicao, mixed $valor) : mixed
Parameters
$params : mixed
$campo : mixed
$condicao : mixed
$valor : mixed

excluir()

public excluir(mixed $id, mixed $usuario_id) : mixed
Parameters
$id : mixed
$usuario_id : mixed

gerar_novo_segredo()

Troca o segredo: o anterior deixa de valer na hora. O aplicativo passa a confidencial.

public gerar_novo_segredo(mixed $id, mixed $usuario_id) : mixed
Parameters
$id : mixed
$usuario_id : mixed

get_login_anonimo()

public static get_login_anonimo() : mixed

getFormData()

public static getFormData([mixed $param = null ]) : mixed
Parameters
$param : mixed = null

getJsonData()

public static getJsonData([mixed $param = null ]) : mixed
Parameters
$param : mixed = null

hash_segredo()

O segredo tem 256 bits aleatórios: sha256 basta, e é o que permite comparar em tempo constante.

public static hash_segredo(mixed $segredo) : mixed
Parameters
$segredo : mixed

hosts_redirect_permitidos()

Hosts (ou *.dominio) e esquemas de aplicativo nativo aceitos no registro dinâmico. Vazio libera todos.

public static hosts_redirect_permitidos() : mixed

instance_token()

public static instance_token() : mixed

isJsonRequest()

public static isJsonRequest() : mixed

listar()

public listar([mixed $dx_params = null ]) : mixed
Parameters
$dx_params : mixed = null

LoadDAO()

public static LoadDAO(mixed $dao_class_required[, mixed $auto_construct = false ][, mixed $auto_load = false ]) : mixed
Parameters
$dao_class_required : mixed
$auto_construct : mixed = false
$auto_load : mixed = false

LoadHTML()

public static LoadHTML(mixed $html_class_required[, mixed $auto_construct = false ][, mixed $auto_load = false ]) : mixed
Parameters
$html_class_required : mixed
$auto_construct : mixed = false
$auto_load : mixed = false

LoadMail()

public static LoadMail(mixed $mail_class_required[, mixed $auto_construct = false ][, mixed $auto_load = false ]) : mixed
Parameters
$mail_class_required : mixed
$auto_construct : mixed = false
$auto_load : mixed = false

LoadModel()

public static LoadModel(mixed $model_class_required[, mixed $auto_construct = false ][, mixed $auto_load = false ]) : mixed
Parameters
$model_class_required : mixed
$auto_construct : mixed = false
$auto_load : mixed = false

LoadPDF()

public static LoadPDF(mixed $pdf_class_required[, mixed $auto_construct = false ][, mixed $auto_load = false ]) : mixed
Parameters
$pdf_class_required : mixed
$auto_construct : mixed = false
$auto_load : mixed = false
public popular_por_client_id(mixed $client_id) : mixed
Parameters
$client_id : mixed

ReadBodyParams()

public ReadBodyParams([mixed $param = null ]) : mixed
Parameters
$param : mixed = null

ReadFile()

public ReadFile(mixed $name[, mixed $default = null ][, mixed $arrAcceptedMimeTypes = [] ]) : mixed
Parameters
$name : mixed
$default : mixed = null
$arrAcceptedMimeTypes : mixed = []

ReadFiles()

public ReadFiles(mixed $name) : mixed
Parameters
$name : mixed

ReadGet()

public ReadGet(mixed $name[, mixed $default = null ]) : mixed
Parameters
$name : mixed
$default : mixed = null

ReadPost()

public ReadPost(mixed $name[, mixed $default = null ]) : mixed
Parameters
$name : mixed
$default : mixed = null

ReadRequest()

public ReadRequest(mixed $name[, mixed $default = null ]) : mixed
Parameters
$name : mixed
$default : mixed = null

redirect_uri_valida()

URL de retorno aceitável para receber o código de autorização: - https com host; - http só no loopback (aplicativos nativos, RFC 8252 §7.3); - esquema próprio de aplicativo nativo, ex.: cursor:// (RFC 8252 §7.1).

public static redirect_uri_valida(mixed $uri, mixed $registro_dinamico) : mixed

Nunca com fragmento (RFC 6749 §3.1.2). No registro dinâmico vale ainda a lista do parâmetro oauth_hosts_redirect_permitidos, quando preenchida.

Parameters
$uri : mixed
$registro_dinamico : mixed

salvar()

Inclui ou altera um aplicativo pela tela de administração. Passar a confidencial gera um segredo (devolvido uma única vez); voltar a público descarta o segredo.

public salvar(mixed $aplicativo_model, mixed $usuario_id) : mixed
Parameters
$aplicativo_model : mixed
$usuario_id : mixed

set_login_anonimo()

public static set_login_anonimo(mixed $value) : mixed
Parameters
$value : mixed

Start_Token_JOB()

public static Start_Token_JOB(mixed $new_token) : mixed
Parameters
$new_token : mixed

WhatRequest()

public WhatRequest(mixed $name[, mixed $default = null ]) : mixed
Parameters
$name : mixed
$default : mixed = null

limite_sql()

Normaliza um valor que será interpolado em LIMIT/OFFSET, onde o PDO também não aceita parâmetro nomeado. Negativos viram 0, pois quebrariam a consulta.

protected limite_sql(mixed $valor[, mixed $padrao = 0 ]) : mixed
Parameters
$valor : mixed
$padrao : mixed = 0

lista_ids_sql()

Monta o conteúdo de um IN (...) a partir de ids já validados como inteiros.

protected lista_ids_sql(mixed $valor) : mixed

Sem nenhum id aproveitável devolve o literal NULL, para o IN não casar com nada em vez de gerar SQL inválido.

Parameters
$valor : mixed

normalizar_ids()

Normaliza uma lista de ids para interpolação segura em um IN (...).

protected normalizar_ids(mixed $valor) : array<string|int, mixed>

Aceita array, string separada por vírgula ou escalar, e descarta tudo que não for numérico.

Use sempre que um valor vindo da request precisar entrar concatenado no SQL: os parâmetros nomeados do PDO não funcionam dentro de um IN (...) de tamanho variável, e é justamente aí que a concatenação crua costuma aparecer.

Parameters
$valor : mixed
Return values
array<string|int, mixed> —

Lista de inteiros reindexada; vazia quando nada é aproveitável.


        
On this page

Search results