- Видео 10
- Просмотров 22 971
Шкатулка программиста
Добавлен 24 окт 2021
Привет! В шкатулке программиста вы найдете полезные советы в программировании на C#, познакомитесь с компонентами DevExpress, узнаете секреты работы с mssql. А также много другое вас ждет в шкатулке!
Видео
Authorization with ASP.NET Core Identity
Просмотров 6 тыс.2 года назад
В данном видео рассмотрим простой способ регистрации, хранения и работы с данными пользователей нашего приложения. видео по токенамruclips.net/video/ecydLcSXd5o/видео.html Аватары: ru.freepik.com/vectors/abstract - Abstract вектор создан(а) macrovector
Asp.Net Core - JWT token - authentication and authorization
Просмотров 6 тыс.2 года назад
В этом видео ознакомимся с такими понятиями как аутентификация и авторизация. Узнаем, из чего состоит токен, и создадим простой пример на Asp.Net Core Net 6. Ссылка для тестирования токена :jwt.io/ Ссылка на обсуждение перекоса времени тактовой частоты: stackoverflow.com/questions/39728519/jwtsecuritytoken-doesnt-expire-when-it-should Аватары: ru.freepik.com/vectors/abstract - Abstract вектор с...
C# - CSVhelper - чтение и запись файлов
Просмотров 2,2 тыс.2 года назад
CSVHelper -библиотека для обработки файлов .csv. joshclose.github.io/CsvHelper/ Шпаргалка: programmer.help/blogs/user-manual-of-csvhelper.html
DevExpress GridView - Column Checkbox
Просмотров 3,9 тыс.2 года назад
Разберем множественный выбор в GridView, пропишем собственные кнопки для выбора по условию и обработаем выбор
Построение отчета с помощью DevExpress
Просмотров 2,1 тыс.2 года назад
Построим простой отчет и рассмотрим основные инструменты и блоки.
Паттерн Одиночка С#
Просмотров 1473 года назад
Изучим паттерн Одиночка на простом примере открытия окон.
DevExpress GridView Окрашивание ячеек
Просмотров 4313 года назад
Научимся окрашивать строки и ячейки в элементе GridView.
Знакомство с GridControl DevExpress
Просмотров 1,6 тыс.3 года назад
Небольшое знакомство с компонентом Devexpress - GridControl
Asynchronous programming ADO.NET . Writing to a DataTable
Просмотров 2533 года назад
Вы узнаете, как асинхронно подключиться к базе данных и записать полученный результат в DataTable.
У тебя очень милый голос❤
Ответил на все вопросы верно) В основном знал ответы, но годиков мне не мало) Жаль что не выходят новые видео)
Выдаёт ошибку System.InvalidOperationException: "Action 'ASP_NET_CORE_AUTH.Controllers.AuthorizeController.GetToken (ASP NET CORE AUTH)' has more than one parameter that was specified or inferred as bound from request body. Only one parameter per action may be bound from body. Inspect the following parameters, and use 'FromQueryAttribute' to specify bound from query, 'FromRouteAttribute' to specify bound from route, and 'FromBodyAttribute' for parameters to be bound from body:
Забавно )))
Спасибо вам, помогли!
Большое спасибо, все очень понятно.
это рассматривать мы не будем … это мы пропускаем. 😡 норм 👌🏼
Круто, а как лучше внедрить в код refresh_token ?
Great explanation.. 👍
test
Вы можете поделиться этим видео-примером ? can you share this video example ?
Было бы еще круче расскажи вы как это делать в микросервисной архитектуре с серверами авторизации - а то не очень понятно как реализовывать работу access токена и крендельков для получения доступа к другим API со стороны SPA - а так контент на вес золота :D
Что за бред... Неужели авторизация и аутентификация пользователя настолько сложна? Вот правда, что ли? Т.е. чтобы авторизовать пользователя по логину и паролю, затем идентифицировать, что он авторизован в системе... нужно сделать вот это вот все???
Нет, не все, как минимум, половина. См. следующий урок...
Тут же приведено несколько шаблонных действий
Когда положишь продакшин потому что твой говно код взломают ты поменяешь свое мнение
Иди учишь парень )))
не стоит так работать с формой, вы переопределяете, то что делает за вас фреймворк, в итоге вы и получаете ошибку при повторном открытии disposed объекта. Не надо так делать в рабочих проектах - это первое. Второе, суть патерна одиночки - закрытие конструктора. Сейчас вам ничего не мешает юзать и конструктор и получение инстанса. Форма использует Dispose паттерн. Если вы хотели показать суть паттерна одиночки, сделайте, пожалуйста, правильное видео, чтобы не вводить в заблуждение.
Божечки, спасибо огромное, засел с данным вопросом, выручили!
Это самый понятный урок по работе с JWT! Спасибо!
К сожалению, лист claims не хочет подходить в await _userManager.AddClaimAsync (это в контроллере авторизации) ошибка "Не удаётся преобразовать из System.Collections.Generic.List<System.Security.Claims.Claim> в System.Security.Claims.Claim (
извиняюсь, нашёл свою ошибку
❤
super super
super
Отличное видео, только неудобно искать если чего то пропустил, текста не хватает :)
кринжанул с формата
На подключении к БД я-б остановился по подробнее.
Здравствуйте Наталия, спасибо за подробное видео, хотел уточнить, у меня выводится Token авторизации, но когда через Postman в вкладке Authorization c типом Bearer Token передаю в запрос WeatherForecast получаю ошибку 401 как и у пользователя "ZLUKA" можете поподробнее рассказать в чем может быть дело ?
Добрый день. Проверьте порядок элементов в program.cs
Добрый день. У меня все работает кроме того что я не могу авторизоваться. Почему так. Я передаю токен в заголовках также как и на видео, Но почему-то он все равно выдает что я не авторизован.
Добрый день. Вы в постмане токен вводите в разделе Authorization с типом Bearer Token или в разделе Headers?
@@programming.box.1 все куда проще было. Я мидлвары не в правильном порядке поставил)
@@zluka4636 У меня такая же ошибка. Можете подробнее объяснить, как вы ее решили?
Здравствуйте, Наталия. Я новичок и вообще не понятно зачем нужен токен, если есть авторизация. Но вопрос в другом. При создании проекта я указал авторизацию через создание индивидуальных учётных записей. Токенирование там про умолчанию?
То есть это для того чтобы перехватив сообщение злоумышленник не смог понять что там?
@@dns_kr добрый вечер. Когда вы проходите этап авторизации, сервер выдаёт токен. Можно назвать это паспортом в обычной жизни, где прописано кто вы, откуда, какой уровень доступа имеете. Каждый раз, когда вы обращаетесь к методу сервера, показываете паспорт. Сервер сразу понимает кто вы и имеете ли право получить информацию от метода. Если бы не указывали токен, то при каждом обращении к любому методу сервера пришлось бы указывать логин и пароль, а серверу обращаться к базе данных и выяснять, действительно ли это вы и всю информацию о вас. Также токен считается безопасным способом, т к для его взлома нужно знать ключ. По поводу второго вопроса не могу сказать, тк таким способом я ни разу не создавала проект.
@@programming.box.1 понял. Спасибо. Вы сказали в реальном проекте этот приватный ключ хранится где-то на сервере, но не в решении. Не совсем понял этот момент. И на картинке нарисовано 2 сервера это как понять?
@@dns_kr думаю, это вам поможет learn.microsoft.com/en-us/aspnet/core/security/app-secrets?view=aspnetcore-6.0&tabs=windows Любая другая веб-служба, к которой имеют доступ только авторизированные пользователи.
var signingKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(secretKey)); эта строка выдает ошибку при сборке
Какой текст ошибки?
@@programming.box.1 Ссылка на строку не указывает на экземпляр строки. Arg_ParamName_Name, Я ещё не закончил первый видеоурок
@@AKHI_DIESEL предположу, что в appsetting.json не указан secretkey.
@@programming.box.1 есть телеграмм?
Ауу
Чтобы сделать войти или зарегистрироваться, впервые 4 строки кода в GetToken() просто передаем данные введенные пользователем, да?
Можно и так реализовать. В моем следующем видео есть регистрация и авторизация. В том видео информация о пользователе берётся из базы данных, которая была сохранена при регистрации. ruclips.net/video/6YN6AUOnRrM/видео.html
good tutorial 👍
Большое спасибо за вашу работу. Было бы ещё лучше, если бы вы это рассказывали. А так, весьма понятно
Благодарю за отзыв!
Из всех уроков(включая иностранные) ваш показался мне самым понятным и простым) . Жаль, что так мало просмотров, видео супер! Спасибо
Спасибо за отзыв!
Спасибо. Пример работы с CSVhelper пригодился.
Спасибо.
Не забрасывай. Хорошее начало.