Токены: что это, где передается и как?
Сегодня продолжим говорить про авторизацию. В прошлый раз мы затронули тему того что именно является авторизацией, сегодня же обсудим такое понятие как "токен".
Что такое токен?
Токен - это некий ключ, предъявление которого является пропуском к защищенным ресурсам. К примеру мобильному приложению необходимо получить данные о покупках от сервера, чтобы отобразить экран со списком покупок. Так как это конфиденциальная информация, то серверу надо удостовериться что запрашивает данные именно тот пользователь, кому эти данные доступны. Для этого клиент в запросах отправляет токен (ключ доступа), который был ранее получен при успешной авторизации.
Пример токена: Authorization: Basic YWRtaW46YWRtaW4=
А где они передаются?
В HTTP запросах токен в целом возможно передавать как в query параметрах, так и в header или body.
Худший вариант из всех — передавать токен в query параметрах, так как он будет виден в URI запроса и это небезопасно.
Средний вариант — передавать в body, но это накладывает большое количество ограничений при проектировании запросов дальше (к примеру нельзя использовать GET запросы).
Лучший вариант — передача токена в header. Это безопасно и не накладывает иные условия на проектирования методов. Общим стандартом при проектировании как раз таки считается передача токена в header, который называется "Authorization".
Отдельный вариант для веб-приложений — в header параметре "Cookie". Это безопасный и достаточно распрастраненный вариант, но для мобильных приложений не подойдет.
Существует несколько схем HTTP-аутентификации: Basic и Bearer.
Basic — передает учетные данные в виде пар идентификатора пользователя и пароля, закодированных с помощью base64. Тут важно понимать, что base64 очень просто раскодировать и такой метод совершенно небезопасен, поэтому обязательно нужно использовать HTTPS (SSL) соединение.
Bearer — токены-носители для доступа к ресурсам, защищенным OAuth 2.0 (открытый протокол авторизации, который позволяет предоставить третьей стороне ограниченный доступ к защищённым ресурсам пользователя без необходимости передавать ей (третьей стороне) логин и пароль). Об OAuth 2.0 мы еще напишем отдельный пост, в котором затронем еще вид токена, который там используется.
Выбранная схема аутентификации обычно передается сразу в "Authorization":
Authorization: Bearer mF_9.B5f-4.1JqM
Сегодня продолжим говорить про авторизацию. В прошлый раз мы затронули тему того что именно является авторизацией, сегодня же обсудим такое понятие как "токен".
Что такое токен?
Токен - это некий ключ, предъявление которого является пропуском к защищенным ресурсам. К примеру мобильному приложению необходимо получить данные о покупках от сервера, чтобы отобразить экран со списком покупок. Так как это конфиденциальная информация, то серверу надо удостовериться что запрашивает данные именно тот пользователь, кому эти данные доступны. Для этого клиент в запросах отправляет токен (ключ доступа), который был ранее получен при успешной авторизации.
Пример токена: Authorization: Basic YWRtaW46YWRtaW4=
А где они передаются?
В HTTP запросах токен в целом возможно передавать как в query параметрах, так и в header или body.
Худший вариант из всех — передавать токен в query параметрах, так как он будет виден в URI запроса и это небезопасно.
Средний вариант — передавать в body, но это накладывает большое количество ограничений при проектировании запросов дальше (к примеру нельзя использовать GET запросы).
Лучший вариант — передача токена в header. Это безопасно и не накладывает иные условия на проектирования методов. Общим стандартом при проектировании как раз таки считается передача токена в header, который называется "Authorization".
Отдельный вариант для веб-приложений — в header параметре "Cookie". Это безопасный и достаточно распрастраненный вариант, но для мобильных приложений не подойдет.
Существует несколько схем HTTP-аутентификации: Basic и Bearer.
Basic — передает учетные данные в виде пар идентификатора пользователя и пароля, закодированных с помощью base64. Тут важно понимать, что base64 очень просто раскодировать и такой метод совершенно небезопасен, поэтому обязательно нужно использовать HTTPS (SSL) соединение.
Bearer — токены-носители для доступа к ресурсам, защищенным OAuth 2.0 (открытый протокол авторизации, который позволяет предоставить третьей стороне ограниченный доступ к защищённым ресурсам пользователя без необходимости передавать ей (третьей стороне) логин и пароль). Об OAuth 2.0 мы еще напишем отдельный пост, в котором затронем еще вид токена, который там используется.
Выбранная схема аутентификации обычно передается сразу в "Authorization":
Authorization: Bearer mF_9.B5f-4.1JqM
🔥8👍3❤1
Из джуна в мидла: как?
Дополним видео ещё одним советом Якуба, тимлида системных аналитиков KODE и автора Симулятора:
- На старте важно учиться и привыкать к новым задачам и неопределенностям. Это нормально, если в начале вам будут помогать коллеги: подсказывать, направлять и подталкивать. Но чем быстрее вы начнёте брать инициативу в свои руки и решать задачи самостоятельно, тем быстрее вы сможете перейти на следующий уровень.
Дополним видео ещё одним советом Якуба, тимлида системных аналитиков KODE и автора Симулятора:
- На старте важно учиться и привыкать к новым задачам и неопределенностям. Это нормально, если в начале вам будут помогать коллеги: подсказывать, направлять и подталкивать. Но чем быстрее вы начнёте брать инициативу в свои руки и решать задачи самостоятельно, тем быстрее вы сможете перейти на следующий уровень.
🔥13❤2🤝2
Привет, начинающие системные аналитики! Сегодня поговорим о том, почему проектный подход так важен для нашей работы.
Что такое проект? Проект — это временная работа с четкими целями и результатами. У него есть сроки, бюджет, ресурсы и задачи. Как аналитик, ты участвуешь в создании системных решений, которые помогают достичь этих целей. О процессе разработки продукта: от идеи до релиза мы уже рассказывали более подробно в этом посте.
Системный аналитик — это тот, кто помогает проекту двигаться по четкому плану, создавая работающие решения для бизнеса. Важно быть внимательным, хорошо понимать задачи и уметь грамотно работать с людьми и документацией.
Листай карточки, в них мы собрали важные моменты проектного подхода, а также советы, которые помогут в работе системного аналитика.
Что такое проект? Проект — это временная работа с четкими целями и результатами. У него есть сроки, бюджет, ресурсы и задачи. Как аналитик, ты участвуешь в создании системных решений, которые помогают достичь этих целей. О процессе разработки продукта: от идеи до релиза мы уже рассказывали более подробно в этом посте.
Системный аналитик — это тот, кто помогает проекту двигаться по четкому плану, создавая работающие решения для бизнеса. Важно быть внимательным, хорошо понимать задачи и уметь грамотно работать с людьми и документацией.
Листай карточки, в них мы собрали важные моменты проектного подхода, а также советы, которые помогут в работе системного аналитика.
❤12👍2🔥2🐳1
Для того, чтобы стать уверенным джун+ и приблизиться к уровню миддла, нужно двигаться дальше и развивать определенные хард-скиллы! 💪
Вот некоторые из них:
1️⃣ Углубленные знания в UML и BPMN
Помимо знаний нотаций UML, BPMN и для чего конкретно каждая из них нужна, а также базовых диаграмм, научись строить более сложные схемы и дополнять функциональные требования диаграммами SD/BPMN. Понимание, как визуализировать систему через диаграммы, поможет лучше структурировать и передавать информацию.
2️⃣ SQL на уровне работы со сложными запросами
Если на уровне джуна достаточно базовых SELECT и JOIN и понимания реляционных БД, то теперь пора научиться писать более сложные запросы, с применением основных операторов вывода данных (SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING), выводить массив данных в виде плоской таблицы, иметь опыт в модификации данных (INSERT, UPDATE, DELETE). Чем лучше ты владеешь SQL, тем проще будет анализировать данные и предлагать решения.
3️⃣ API и интеграции
Современные системы редко существуют в вакууме, поэтому понимание, как происходит обмен данными между сервисами через API, крайне важно. Разберись, как работают REST и SOAP, научись читать и писать спецификации для API.
4️⃣ Документирование требований
Хороший аналитик – это тот, кто умеет четко и понятно документировать требования. Прокачай навыки работы с инструментами вроде Confluence, Jira. Учись не только оформлять ТЗ, но и описывать сценарии использования (use cases), user stories и функциональные требования в понятной и структурированной форме.
5️⃣ Системное мышление
Твой рост как аналитика напрямую связан с тем, насколько хорошо ты понимаешь не только отдельные части системы, но и как они связаны между собой. Развивай навык видеть "общую картину" и просчитывать последствия изменений в одном месте на всю систему в целом.
⭐ Работай с реальными кейсами, старайся брать больше ответственности на проектах, учись у более опытных коллег и не забывай прокачивать софт-скиллы — это все даст возможность выйти на новый уровень. ⭐
Вот некоторые из них:
Помимо знаний нотаций UML, BPMN и для чего конкретно каждая из них нужна, а также базовых диаграмм, научись строить более сложные схемы и дополнять функциональные требования диаграммами SD/BPMN. Понимание, как визуализировать систему через диаграммы, поможет лучше структурировать и передавать информацию.
Если на уровне джуна достаточно базовых SELECT и JOIN и понимания реляционных БД, то теперь пора научиться писать более сложные запросы, с применением основных операторов вывода данных (SELECT, FROM, WHERE, GROUP BY, ORDER BY, HAVING), выводить массив данных в виде плоской таблицы, иметь опыт в модификации данных (INSERT, UPDATE, DELETE). Чем лучше ты владеешь SQL, тем проще будет анализировать данные и предлагать решения.
Современные системы редко существуют в вакууме, поэтому понимание, как происходит обмен данными между сервисами через API, крайне важно. Разберись, как работают REST и SOAP, научись читать и писать спецификации для API.
Хороший аналитик – это тот, кто умеет четко и понятно документировать требования. Прокачай навыки работы с инструментами вроде Confluence, Jira. Учись не только оформлять ТЗ, но и описывать сценарии использования (use cases), user stories и функциональные требования в понятной и структурированной форме.
Твой рост как аналитика напрямую связан с тем, насколько хорошо ты понимаешь не только отдельные части системы, но и как они связаны между собой. Развивай навык видеть "общую картину" и просчитывать последствия изменений в одном месте на всю систему в целом.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤9🔥5👍2🐳1😭1
Привет, я Илья, системный аналитик в компании KODE, и сегодня хочу рассказать вам о работе системного аналитика - о его основных задачах и зонах ответственности 🔥
Представьте, что вы проводите со мной целый рабочий день, наблюдая за тем, что я делаю. Это поможет вам не только узнать, в чем заключается основные рабочие задачи, но и прочувствовать атмосферу проектирования.
Итак, завтракаем и начинаем! Листайте карточки, чтобы посмотреть как проходит рабочий день системного аналитика👆 💜
Представьте, что вы проводите со мной целый рабочий день, наблюдая за тем, что я делаю. Это поможет вам не только узнать, в чем заключается основные рабочие задачи, но и прочувствовать атмосферу проектирования.
Итак, завтракаем и начинаем! Листайте карточки, чтобы посмотреть как проходит рабочий день системного аналитика
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤8🔥7😍5🥰1🐳1
Бывало у вас такое: приходите в новый коллектив, а там вокруг все говорят на каком-то непонятном языке? Кажется, что с этим сталкивались все начинающие специалисты.
Мы решили сделать рубрику Глоссарий, чтобы вам было легче понимать коллег и чувствовать себя увереннее в любой беседе. Начнем со слова Аппрув.
Аппрув (approve) — это термин, заимствованный из английского, который означает "утвердить" или "одобрить". В IT это слово используется для согласования определённых результатов работы, таких как требования, дизайн, код, проектная документация и т.д., а применительно к системному аналитику такое можно услышать, когда мы говорим про предложения, которые выносим заказчику или про ревью требований.
Например: "Системный аналитик может предложить требования к системе, которые затем проходят через процесс утверждения (аппрува) со стороны заказчика или команды разработки."
Когда что-то "аппрувится", это значит, что работа прошла проверку и может быть принята для дальнейших этапов.
Мы решили сделать рубрику Глоссарий, чтобы вам было легче понимать коллег и чувствовать себя увереннее в любой беседе. Начнем со слова Аппрув.
Аппрув (approve) — это термин, заимствованный из английского, который означает "утвердить" или "одобрить". В IT это слово используется для согласования определённых результатов работы, таких как требования, дизайн, код, проектная документация и т.д., а применительно к системному аналитику такое можно услышать, когда мы говорим про предложения, которые выносим заказчику или про ревью требований.
Например: "Системный аналитик может предложить требования к системе, которые затем проходят через процесс утверждения (аппрува) со стороны заказчика или команды разработки."
Когда что-то "аппрувится", это значит, что работа прошла проверку и может быть принята для дальнейших этапов.
❤7🔥4👍3🐳1
Если ты только начинаешь свой путь, обрати внимание на эти навыки, которые помогут тебе развиваться в этой профессии. Без паники — все реально, главное постепенно прокачиваться в нужных направлениях! 👇
1️⃣ Аналитическое мышление
Системный аналитик — это человек, который видит за проблемой всю картину. Задача — не просто собрать данные, а разобраться, как всё работает и найти лучшее решение. Начни привыкать к тому, чтобы задавать себе вопросы: почему так происходит, что можно улучшить и какие будут последствия изменений.
2️⃣ Умение собирать и оформлять требования
Важный навык — умение подавать информацию: визуализировать, описывать однозначно и емко, чтобы требования были четкими и понятными. Это сэкономит кучу времени и сил твоей команде.
3️⃣ Коммуникационные навыки
Умение общаться с разными людьми (заказчиками, разработчиками, тестировщиками), задавать правильные вопросы, доносить суть и договариваться.
4️⃣ Базовые знания в IT
Чтобы быть системным аналитиком, не нужно становиться программистом, но базовые знания о том, как работают системы и приложения, точно пригодятся. Изучи основы баз данных, сетей и архитектуры — это поможет лучше понимать разработчиков и предлагать адекватные решения.
5️⃣ Внимание к деталям
Детали — это твои лучшие друзья. Малейшая ошибка в документации или недочёт в требованиях могут вылезти большими проблемами на этапе разработки. Будь внимателен к мелочам, ведь твоя точность делает работу команды проще и эффективнее.
Постоянная работа над этими навыками поможет решать задачи и предлагать лучшие решения для команды и бизнеса. Успех в системном анализе — это не результат одного дня, а постоянный рост, и ты уже на верном пути💛
Системный аналитик — это человек, который видит за проблемой всю картину. Задача — не просто собрать данные, а разобраться, как всё работает и найти лучшее решение. Начни привыкать к тому, чтобы задавать себе вопросы: почему так происходит, что можно улучшить и какие будут последствия изменений.
Важный навык — умение подавать информацию: визуализировать, описывать однозначно и емко, чтобы требования были четкими и понятными. Это сэкономит кучу времени и сил твоей команде.
Умение общаться с разными людьми (заказчиками, разработчиками, тестировщиками), задавать правильные вопросы, доносить суть и договариваться.
Чтобы быть системным аналитиком, не нужно становиться программистом, но базовые знания о том, как работают системы и приложения, точно пригодятся. Изучи основы баз данных, сетей и архитектуры — это поможет лучше понимать разработчиков и предлагать адекватные решения.
Детали — это твои лучшие друзья. Малейшая ошибка в документации или недочёт в требованиях могут вылезти большими проблемами на этапе разработки. Будь внимателен к мелочам, ведь твоя точность делает работу команды проще и эффективнее.
Постоянная работа над этими навыками поможет решать задачи и предлагать лучшие решения для команды и бизнеса. Успех в системном анализе — это не результат одного дня, а постоянный рост, и ты уже на верном пути
Please open Telegram to view this post
VIEW IN TELEGRAM
👍10❤5🔥2
Меня зовут Алёна, я системный аналитик в KODE, и сегодня я хочу поделиться своей историей о том, почему я выбрала системный анализ 💛
У каждого когда-то возникала мысль «А может стать айтишником?», но первая трудность, с которой ты сталкиваешься – это выбрать, а каким именно айтишником хочешь стать, ведь есть frontend-разработчики, backend-разработчики, и всё это помноженное на N-ное число, в зависимости от количества стеков, есть тестировщики и аналитики (и тут перечислять можно бесконечно, но остановимся на основных направлениях).
Как по мне, аналитика – самый лучший выбор, и тут у меня есть несколько аргументов➡️
1️⃣ У аналитиков есть несколько направлений - digital-аналитика, продуктовая, системная, бизнес-аналитика, аналитика данных, веб-аналитика, UX-аналитика и т.д. – то есть каждый сможет найти себе что-то по душе. У каждого вида аналитика есть свой пулл обязанностей, и эти обязанности могут различаться от компании к компании, даже от проекта к проекту внутри одной компании.
2️⃣ Что касаемо системных аналитиков, то они постоянно работают с разнообразными задачами. У нас не бывает двух одинаковых дней, да и честно говоря, я бы не смогла жить в «дне сурка». Бывают спокойные дни, когда я занимаюсь сбором и написанием функциональных требований и саппортом команды, но бывают дни, когда всё моё внимание погружено в решение проблем, возникающих у пользователей.
3️⃣ Это постоянное общение. Кого-то это может напугать, но не меня, потому что я – это тот человек, который подпитывается от общения с людьми (таких людей еще называют «вампирами», но мне хочется верить, что люди тоже заряжаются от меня энергией). Системные аналитики – это те люди, которые общаются со всеми членами команды разработки, а также с некоторыми людьми из команды, отвечающей за развитие бизнеса.
Так, стал я системным аналитиком, а кем я буду «когда я вырасту»? На самом деле, у системного аналитика много путей развития.
— Если вам нравится общаться с людьми и настраивать процессы, то можно стать лидом отдела.
— Если вам нравится изучать различные сложные технологии, то можно стать техническим лидом.
— Также возможно горизонтальное развитие в другие профессии как project-менеджер, product-owner или архитектор (я сейчас не про того, который строит дома, а про того, кто строит системы).
💛 Что ж, надеюсь, я смогла убедить вас, что системная аналитика – это лучший выбор!💛
У каждого когда-то возникала мысль «А может стать айтишником?», но первая трудность, с которой ты сталкиваешься – это выбрать, а каким именно айтишником хочешь стать, ведь есть frontend-разработчики, backend-разработчики, и всё это помноженное на N-ное число, в зависимости от количества стеков, есть тестировщики и аналитики (и тут перечислять можно бесконечно, но остановимся на основных направлениях).
Как по мне, аналитика – самый лучший выбор, и тут у меня есть несколько аргументов
Так, стал я системным аналитиком, а кем я буду «когда я вырасту»? На самом деле, у системного аналитика много путей развития.
— Если вам нравится общаться с людьми и настраивать процессы, то можно стать лидом отдела.
— Если вам нравится изучать различные сложные технологии, то можно стать техническим лидом.
— Также возможно горизонтальное развитие в другие профессии как project-менеджер, product-owner или архитектор (я сейчас не про того, который строит дома, а про того, кто строит системы).
Please open Telegram to view this post
VIEW IN TELEGRAM
👍15❤10🔥2🥰1🐳1
Сегодня постараемся рассказать вам просто о сложном. Наша команда аналитиков подготовила небольшой материал о моделирование бизнес процессов. Этот инструмент помогает визуализировать текущие процессы, выявить узкие места и неэффективные элементы, а также создать новые, более эффективные процессы. Этот метод служит основой для последующей автоматизации и внедрения IT-систем.
Листай карточки там все самое интересно!
Обязательно оставь реакцию или комментарий. Именно так мы понимаем, как информация вам нравится 💛
Листай карточки там все самое интересно!
Обязательно оставь реакцию или комментарий. Именно так мы понимаем, как информация вам нравится 💛
❤11👍3🔥3