You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Oct 20, 2023. It is now read-only.
Cara seria interessante validar parâmetro $type em relação a um conjunto predefinido de tipos de chave antes de usá-lo, isso ajuda evitar possíveis vulnerabilidades de segurança, como injeção de código.
public static function validate(string $type, string $key): bool
{
if (!in_array($type, self::ALLOWED_KEY_TYPES)) {
throw InvalidPixKeyException::invalidKeyType($type);
}
switch ($type) {
case Pix::RANDOM_KEY_TYPE:
return self::validateRandom($key);
case Pix::CPF_KEY_TYPE:
return self::validateCPF($key);
case Pix::CNPJ_KEY_TYPE:
return self::validateCnpj($key);
case Pix::EMAIL_KEY_TYPE:
return self::validateEmail($key);
case Pix::PHONE_NUMBER_KEY_TYPE:
return self::validatePhoneNumber($key);
default:
throw InvalidPixKeyException::invalidKeyType($type);
}
}
}
Adicionei um array constante chamado ALLOWED_KEY_TYPES, que contém todos os tipos de chave válidos. Quando o método de validação é chamado, ele primeiro verifica se o $type fornecido está presente na lista de tipos de chave permitidos. Caso contrário, ele lança uma InvalidPixKeyException para tratar adequadamente a entrada inválida. Isso permite que apenas chaves legítimas sejam aceitas para validação.
The text was updated successfully, but these errors were encountered:
Sign up for freeto subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Fala dev beleza?
Cara seria interessante validar parâmetro $type em relação a um conjunto predefinido de tipos de chave antes de usá-lo, isso ajuda evitar possíveis vulnerabilidades de segurança, como injeção de código.
Por exemplo:
class Validator implements PerformKeyValidations
{
const ALLOWED_KEY_TYPES = [
Pix::RANDOM_KEY_TYPE,
Pix::CPF_KEY_TYPE,
Pix::CNPJ_KEY_TYPE,
Pix::EMAIL_KEY_TYPE,
Pix::PHONE_NUMBER_KEY_TYPE,
];
}
Adicionei um array constante chamado ALLOWED_KEY_TYPES, que contém todos os tipos de chave válidos. Quando o método de validação é chamado, ele primeiro verifica se o $type fornecido está presente na lista de tipos de chave permitidos. Caso contrário, ele lança uma InvalidPixKeyException para tratar adequadamente a entrada inválida. Isso permite que apenas chaves legítimas sejam aceitas para validação.
The text was updated successfully, but these errors were encountered: