Я думаю, у каждого найдётся парочка историй о том, как были перепутаны латинская и кириллическая буквы «С». Сколько фиксов было брошено на амбразуру прода. Но недавно я столкнулся с совершенно новым уровнем этой пустяковой проблемы.
Команда получила файл с учётными данными для настройки интеграции с внешней системой. В нём был список логинов и паролей. Я берусь за настройку Apiman'а, ввожу учётные данные для каждого API, проверяю — работает. Настало время вывода на прод, внешняя система была выведена, и мы получаем 401 по всем методам, авторизация не проходит. До этого мы получили письмо о том, что на внешней системе ещё раз провели работы по настройке паролей, и первое, что пришло в голову — наверное, ребята поменяли пароли на другие, а нам забыли прислать. Мы сверяемся — пароли совпадают, пересоздаем пароли — опять та же картина, не работает.
Я прошу DevOps посмотреть логи Apiman'a, для того чтобы понять, что происходит. И тут мы видим в логах такую вещь:
Authorization: – Credentials: CRM?2?
Что за вопросики? А, так это же не ASCII символы! Кто-то, составляя файл с учётными данными, умудрился в логине CRMB2C оставить «В» и вторую «С» русскими символами, что и было мной благополучно скопировано в Apiman. Ну ладно «С», но почему «В»?! А почему оно работало при первичной проверке? Дело в том, что первый раз внешняя система завела креды из этого файла, а второй раз ввела логин руками.
В общем, мораль — когда копируешь что-то из сторонних источников, будь готов, что придется пересоздавать 15 апи в Апимане)) Надеюсь, что никогда не придётся проверять пароли на наличие русских символов!
· 11.11.2025
Да, русские буквы и еле заметные вторые пробелы - тот ещё баг. Долго смеялся, когда обнаружил наконец-то причину бага на проде (не проливались данные) пару лет назад.
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
коммент удалён
· 12.11.2025
Теперь всегда держу рядом программу Meld (сравнивает файлы).
0
ответить
коммент скрыт — часть юзеров считает его токсичным или некорректным
ответ удалён