Pull to refresh

Выпущено еще одно дополнение управления доступом на уровне строк для Django REST Framework

Python *Django *

Вышел пакет Django-REST-Access для подключения пакета Django-Access в качестве бакенда динамического управления доступом на уровне объектов (строк) и фильтрации видимых объектов в Django REST Framework.


Django REST Framework — популярный расширяемый пакет конструирования HTTP API на основе проектов Django.


Django-Access — гибкий пакет динамического управления правами на уровне объектов (строк).

Total votes 3: ↑3 and ↓0 +3
Views 3.6K
Comments 0

Применение JAAS в Web-приложениях на glassfish v2

Java *
На этот раз хочется написать про применение JAAS (Java Authentification and Authorization Service) для веб-приложений. Для начала рассмотрим простой контроль доступа к веб-ресурсам и авторизацию. Я попытаюсь раскрыть основную идею, а также дам подсказку по способу развёртывания (позже из текста станет понятно в чём проблема).

Читать дальше →
Total votes 6: ↑5 and ↓1 +4
Views 17K
Comments 11

Symfony2\SecurityBundle

Symfony *
Translation
Аутентификация и Авторизация Автор рассказывает об устройстве бандла Security (на мой взгляд, самого трудного в понимании для symfony-новичков) и разбирает пример его применения. Статья будет особенно полезна для тех, кто желает знать, как работает их инструмент: Symfony2 Security в общем и FOSUserBundle в частности — однако не подходит для первого знакомства с фреймворком, поскольку требует знания некоторых из его компонент.
Статья была опубликована 21 марта 2011 года, когда ещё не вышла финальная версия symfony2.0, однако принципы работы бандла не изменились.

Оригинальная статья — «Symfony2 Blog Application Tutorial Part V: Intro to Security» — часть цикла обучающих статей на примере создания блога.
Есть прямое продолжение/дополнение статьи — «Symfony2 Blog Application Tutorial Part V-2: Testing Secure Pages», где даётся пример тестирования «закрытых» частей приложения.


Читать дальше →
Total votes 64: ↑53.5 and ↓10.5 +43
Views 41K
Comments 18

Настройка Cisco ACS 5.3 в связке с Active Directory

Cisco *Network technologies *
Tutorial
Cisco ACS (Access Control Server) — система для централизованной аутентификации, авторизации и аккаутинга пользователей на всякого рода оборудовании, в частности на активном сетевом оборудовании различных производителей.

Имея достаточно небольшой опыт работы системным администратором в крупной компании enterprise сегмента пришёл к выводу, что каждый системный администратор в идеале должен иметь одну учётную запись для авторизации на всех необходимых ему ресурсах: сетевое оборудование, серверы, рабочие станции и т. д. Это связано как с удобством администрирования, так и с безопасностью. В случае увольнения человека можно залочить всего одну учёту в одном хранилище и пропадёт доступ абсолютно ко всему. Но идеальных случаев, как известно, не бывает. В статье мы попробуем приблизиться к идеалу и настроим авторизацию пользователей на активном сетевом оборудовании с использованием учётной записи Active Directory.
Читать дальше →
Total votes 4: ↑4 and ↓0 +4
Views 43K
Comments 7

Двухфакторная sms-авторизация в Redmine

Southbridge corporate blog
image
Как мой коллега и обещал в одной из предыдущих статей, делимся опытом по настройке двухфакторной sms-авторизации для использования в Redmine в рамках работы.

Идея о добавлении второго шага авторизации обоснована все тем же усилением безопасности данных при использовании системы тикетов.
Вначале была опробована система OTP на основе Google Authenticator.
Не всем оказалось удобно этим пользоваться, потому решили добавить по просьбам трудящихся другой вариант авторизации — по sms.

Читать дальше →
Total votes 18: ↑18 and ↓0 +18
Views 8.3K
Comments 7

Cisco Identity Services Engine

Cisco corporate blog Information Security *
Recovery mode
Практическая ценность системы контроля доступа к корпоративной сети на базе Cisco Identity Services Engine.


Если следующие слова для Вас не абстрактные понятия, а актуальные задачи — эта статья для Вас:
● политика (сетевой) безопасности;
● снижение рисков реализации угроз информационной безопасности;
● контроль доступа к корпоративной сети;
● автоматизация задач ИТ-подразделений;
● внедрение ИТ-решений, повышающих динамику бизнеса (BYOD, Mobility).

Контроль доступа — ключевая мера информационной безопасности. Внедрение системы контроля доступа к сети предприятия позволит не только значительно снизить риски реализации угроз информационной безопасности, но и добиться экономической выгоды от внедрения такого рода систем.

Cisco Identity Services Engine (Cisco ISE) — многофункциональное решение, закрывающее полный спектр вопросов контроля доступа к корпоративной сети [КД]. Централизация политик доступа к сети и автоматизация множества рутинных задач — основные преимущества решения Cisco ISE.

Читать далее
Total votes 22: ↑12 and ↓10 +2
Views 50K
Comments 2

Аутентификация и авторизация в ASP.NET Web API

Website development *.NET *API *
Translation
Tutorial
Вы создали WebAPI и теперь хотите контролировать доступ к нему? В этой серии статей мы рассмотрим несколько вариантов защиты WebAPI от неавторизрованых пользователей. Серия будет охватывать обе стороны, и аутентификацию и авторизацию пользователей.

  • Аутентификация — позволяет однозначно идентифицировать пользователя. Например, Алиса входит в систему со своим логином и паролем, и сервер использует эти данные для аутентификации Алисы.
  • Авторизация решает может ли пользователь выполнить те или иные действия. Например, Алиса может иметь право на чтение ресурса, но не может создать новый ресурс.


Первая серия статей дает общий обзор аутентификации и авторизации в ASP.NET Web API. Другие статьи описывают общие сценарии аутентификации для WebAPI.
Раскрыть тему
Total votes 23: ↑19 and ↓4 +15
Views 73K
Comments 17

Authomatic: python библиотека для аутентификации и авторизации

TheOnlyPage corporate blog Python *API *
imageПрактически любое веб-приложение предоставляет возможность авторизации пользователя с использованием учетной записи пользователя, в каком либо из известных социальных сервисов.

Магия авторизации происходит строго по протоколу OAuth 1.0а и OAuth 2.0 и значительно упрощает жизнь и владельцу веб-приложения и самому пользователю.

Остается сущая мелочь, реализовать нужный протокол применительно к конкретному веб-приложению. Регистрация и вход в веб сервис TheOnlyPage с использованием учетных записей Facebook, Google, LinkedIn и Microsoft Live работают благодаря python библиотеке Authomatic.

Согласно документации Authomatic обладает следующими замечательными особенностями:
Читать дальше →
Total votes 34: ↑31 and ↓3 +28
Views 35K
Comments 6

Web scraping на Node.js и защита от ботов

JavaScript *Programming *Data Mining *Node.JS *

Это третья статья в цикле про создание и использование скриптов для веб-скрейпинга при помощи Node.js:


  1. Web scraping при помощи Node.js
  2. Web scraping на Node.js и проблемные сайты
  3. Web scraping на Node.js и защита от ботов
  4. Web scraping обновляющихся данных при помощи Node.js

В первой статье разбирались базовые аспекты веб-скрейпинга, такие как получение и парсинг страниц, рекурсивный проход по ссылкам и организация очереди запросов. Во второй статье разбирались анализ сайта, работающего через Ajax, тонкая настройка очереди запросов и обработка некоторых серверных ошибок.


Также во второй статье затрагивалась тема инициализации сессий, но, там речь шла о предельно простом случае, когда достаточно выполнить один дополнительный запрос и сохранить куки.


В этой статье разбирается более сложный случай – инициализация сессий с авторизацией по логину и паролю и с преодолением довольно изощрённой защиты от ботов. Как обычно, на примере реальной (и весьма популярной среди скрейперов) задачи.


Важное примечание

В большинстве случаев защита от ботов на сайте направлена не против скрейперов, а против таких вещей, как мошенничество, накрутки или спам в комментариях. Однако это всегда лишний повод задуматься о легальности и этичности скрейпинга именно этого сайта. В этой статье для примера выбран сайт, про который хорошо известно, что его владельцы нормально относятся к скрейпингу (хотя и предпочитают, чтобы он выполнялся через специальный API). Простые правила: если у сайта есть открытый API, значит его владельцы рады скрейперам, а если сайт большой и ультрапосещаемый, нагрузка от скрейпинга в обход API его особо не побеспокоит.


В прошлых статьях целью было показать весь процесс создания и использования скрипта от постановки задачи и до получения конечного результата. В этой статье большая часть аспектов веб-скрейпинга обходится стороной, а вместо этого показывается многообразие подходов к решению одной, довольно узкой задачи. Различные методы и инструменты, их плюсы и минусы, субъективные оценки, примеры кода, вот это вот всё.

Читать дальше →
Total votes 17: ↑17 and ↓0 +17
Views 34K
Comments 15

Авторизация в ASP.NET Core MVC

Website development *.NET *C# *

Logo designed by Pablo Iglesias.


В статье описаны паттерны и приемы авторизации в ASP.NET Core MVC. Подчеркну, что рассматривается только авторизация (проверка прав пользователя) а не аутентификация, поэтому в статье не будет использования ASP.NET Identity, протоколов аутентификации и т.п. Будет много примеров серверного кода, небольшой экскурс вглубь исходников Core MVC, и тестовый проект (ссылка в конце статьи). Приглашаю интересующихся под кат.


Содержание:



Читать дальше →
Total votes 28: ↑28 and ↓0 +28
Views 68K
Comments 5

Аутентификация OAuth2 в приложении посредством Google Sign-In. Непрерывный доступ к API Google

Development of mobile applications *Development for Android *Google API *
Sandbox
«С 20 апреля 2017 года отправка запросов на авторизацию из встроенных браузеров будет блокироваться».
Такое сообщение с 1 марта можно увидеть в некоторых приложениях, где необходима авторизация. Об этом Google написали в своём блоге еще в августе 2016, и это значит, что скоро во многих приложениях придется переписывать реализацию регистрации. Приятного мало, однако выход есть – использовать рекомендуемый способ авторизации Google Sign-in.

Об этом способе и будет идти речь в уроке, а также как получить токены, необходимые для работы с API Google.
Читать дальше →
Total votes 24: ↑24 and ↓0 +24
Views 94K
Comments 4

CASL. Авторизация для JavaScript приложения

JavaScript *Node.JS *

CASL JavaScript В наше время почти каждое приложение имеет понятие прав доступа и предоставляет различные функции для разных групп пользователей (например, admin, member, subscriber и т.д.). Эти группы обычно называются "роли".


По своему опыту скажу, что логика прав доступа большинства приложений построена вокруг ролей (проверка звучит так: если пользователь имеет эту роль, то он может что-то сделать) и в конечном итоге имеем массивную систему, с множеством сложных проверок, которую трудно поддерживать. Эту проблему можно решить при помощи CASL.

Читать дальше →
Total votes 3: ↑3 and ↓0 +3
Views 7.5K
Comments 0

Имплементация OpenId Connect в ASP.NET Core при помощи IdentityServer4 и oidc-client

Information Security *JavaScript *.NET *C# *
Sandbox


Недавно мне потребовалось разобраться, как делается аутентификация на OpenId Connect на ASP.NET Core. Начал с примеров, быстро стало понятно, что чтения спецификации не избежать, затем пришлось уже перейти к чтению исходников и статей разработчиков. В результате возникло желание собрать в одном месте всё, что необходимо для того, чтобы понять, как сделать рабочую реализацию OpenId Connect Implicit Flow на платформе ASP.NET Core, при этом понимая, что Вы делаете.

Читать дальше →
Total votes 13: ↑11 and ↓2 +9
Views 45K
Comments 39

Гибкая система управления доступом на уровне объектов-записей

Programming *Django *

Привет всем!


В проектах, основанных на Джанго, часто хочется использовать гибкое управление доступом на уровне записей (объектов), когда разные пользователи имеют, или наоборот, не имеют доступ к отдельным объектам в рамках одной и той же модели.


Я хочу рассказать, какая именно политика доступа к данным требовалась в нашем проекте, почему не нашлось подходящей готовой системы и как появилась новая система управления доступом на уровне записей.


Для наиболее дотошных, далее приведены детали устройства системы, ее внутренней логики и порядка обращения с ней.

Читать дальше →
Total votes 5: ↑5 and ↓0 +5
Views 11K
Comments 15

Angular: авторизация, рефрешим токен и HttpInterceptor

Website development *Programming *Angular *TypeScript *
Tutorial
Доброго времени суток.

Опишу процесс авторизации с использованием некоторого сервера авторизации и интерфейса HttpInterceptor, который стал доступен с версии Angular 4.3+. С помощью HttpInterceptor`a будем добавлять наш токен в Header запроса перед отправкой каждого запроса. Так же, по истечению срока действия токена, получая 401ую ошибку, будем восстанавливать токен и повторять запросы, которые не прошли авторизацию пока ждали рефреша.

Начнем с конфигурации Interceptor`ов:


Проводить конфигурацию предпочитаю с основного модуля приложения. Или если ваше приложение уже достаточно большое, советую вынести конфигурации в CoreModule.
В статье буду использовать CoreModule, но можно сделать это и в корневом (AppModule обычно) модуле приложения, отличия незначительны.

Пока писал статью ресурс на angular.io по CoreModule исчез
Коротко говоря, это такой модуль, который должен содержать глобальные сервисы. Преимущество в том, что этот модуль импортируется в модуле приложение (AppModule). Все экспортированные Core модулем сервисы гарантированно будут иметь только один инстанс на все приложение, включая lazy loaded модули.
Читать дальше →
Total votes 11: ↑11 and ↓0 +11
Views 40K
Comments 9

Вам действительно нужны entrust или laravel-permission для реализации вашей авторизации?

PHP *Laravel *
Translation
«Так… мне нужна простая авторизация. Какая-нибудь админская роль, и может роль редактора/модератора. Сейчас погуглим. О! Для laravel уже есть готовые пакеты! zizaco/entrust, spatie/laravel-permission и другие! Давай выберем какой-нибудь!»

Примерно так все и происходит. Потом миграция пакета добавляет в базу 5 табличек для хранения ролей, пермишенов и их отношений. Все правила авторизации, такие как роли 'admin' и 'editor' могут делать 'edit posts', хранятся в этих таблицах. Обычно в проекте много копий базы данных. Копии разработчиков, тестовая база(ы) и продакшен. В итоге все эти правила авторизации вынуждены синхронизироваться между базами данных.

Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Views 13K
Comments 12

OTRS: LDAP аутентификация, авторизация и синхронизация (FreeIPA, AD)

Configuring Linux *System administration *IT Infrastructure *Server Administration *Service Desk *
Tutorial
image

OTRS — система обработки заявок с открытым кодом (Open-source Ticket Request System), написанная на Perl.

Существует в двух вариантах:


Перечислю немного из того фукционала, который поддерживает эта система:

  • модуль ITSM (Service Level Management, Change Management, Configuration Management, CMDB)
  • адаптивный веб-интерфейс
  • API
  • SLA и сервисы
  • мультитенантность
  • эскалации
  • аутентификация: DB, LDAP, HTTPBasicAuth, Radius
  • поддержка MySQL, MariaDB, PostgreSQL, Oracle

И если искать в ней недостатки — так это непривычность интерфейса и сложность в настройке. Под катом — об основах авторизации (группы, RBAC, поддержка нескольких компаний-клиентов), аутентификации и синхронизации метаданных (ФИО, телефона и прочего), используя различные каталоги LDAP
Читать дальше →
Total votes 9: ↑9 and ↓0 +9
Views 16K
Comments 3

Рецепты Nginx: basic авторизация с капчей

Nginx *
Tutorial
Для приготовления авторизации с капчей нам понадобится сам nginx и его плагины encrypted-session, form-input, ctpp2, echo, headers-more, auth_request, auth_basic, set-misc. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальные репозитории. Можно также воспользоваться готовым образом.)
Читать дальше →
Total votes 7: ↑5 and ↓2 +3
Views 4.9K
Comments 5

Рецепты Nginx: LDAP авторизация с капчей

Nginx *
Tutorial
Для приготовления авторизации с капчей нам понадобится сам nginx и его плагины encrypted-session, form-input, ctpp2, echo, ldap, headers-more, auth_request, set-misc. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальные репозитории. Можно также воспользоваться готовым образом.)
Читать дальше →
Total votes 14: ↑12 and ↓2 +10
Views 4.7K
Comments 0

Рецепты Nginx: CAS (сервис центральной авторизации)

Nginx *
Tutorial
Для приготовления сервиса центральной авторизации нам понадобится сам nginx и его плагины encrypted-session, echo, headers-more, auth_request, eval, set-misc. (Я дал ссылки на свои форки, т.к. делал некоторые изменения, которые пока не удалось пропихнуть в оригинальные репозитории. Можно также воспользоваться готовым образом.)
Читать дальше →
Total votes 13: ↑13 and ↓0 +13
Views 2.9K
Comments 0
1