• Делимся опытом по интеграции SSO средствами SAML 2.0

      1. Предыстория

      Не смотря на то, что функция централизованного входа (Single Sign On, SSO) существует, обсуждается и применяется уже давно, на практике ее внедрение зачастую сопровождается преодолением самых различных проблем. Целью данной статьи будет показать, как реализовать простейший собственный Service Provider 1 (SP) для SAML 2.0 identity provider (idP) и с его помощью осуществить интеграции SSO в Java Web приложение.

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

      1. Liferay version 6.1.20-ee-ga2.
      2. Простое java web-приложение.
      3. Google apps.

      Со стороны заказчика были выдвинуты основные требования построения SSO:
      1. Для построения SSO должен использоваться протокол SAML 2.0.
      2. Требуется интеграция с Jasig CAS для поддержания работы уже существующих систем.
      3. LDAP используется для проверки аутентификации пользователей.

      В качестве idP решили использовать Shibboleth (http://shibboleth.net/about/index.html) как open source-систему, реализующую в полном объеме протоколы SAML 1.0 && SAML 2.0.

      Сложные моменты, с которыми мы столкнулись при решении данной задачи:

      1. Отсутствие экспертизы по работе с протоколом SAML 2.0 и продуктом Shibboleth.
      2. Сырая и еще не достаточно хорошо структурированная документация по Shibboleth от производителя.
      3. Отсутствие качественных примеров по реализации Service Provider’а для интеграции SSO в свое Java Web-приложение.

      Преодоление этих барьеров и стало мотивацией для публикации данной статьи. Мы хотим поделиться приобретенными знаниями, помочь разработчикам решать подобные задачи, а также облегчить знакомство с протоколом SAML 2.0.

      2. Для кого предназначена статья?

      Данная статья ориентирована на следующую аудиторию:
      1. Разработчики, интегрирующие функцию SSO в своих проектах средствами SAML 2.0.
      2. Java-Разработчики, которым нужен практический пример интеграции в свое приложение функции SSO средствами SAML 2.0.
      3. Java-Разработчики, которые хотят опробовать в качестве SSO Identity Provider’а (idP) компонент Shibboleth.

      Для понимания статьи рекомендуется иметь минимальные знания по протоколу SAML 2.0.

      Читать дальше →
    • Научиться программировать сложнее, чем кажется

      • Translation

      Просто «El clasico»

      «Много букв», «не осилил»: как показывает опыт, программирование требует наличия определенных способностей, которыми обладает лишь небольшой процент населения земли. Современная мода на экспресс-курсы в этой области порождает все больше спекуляций на тему, что отнюдь не способствует росту количества квалифицированных программистов.

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

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

      «Согласно данным Научного Совета, к 2030 году количество специалистов в сфере информационно-коммуникационных технологий вырастет на 39%, а в отчете О2 за 2013 год отмечалось, что для удовлетворения спроса на такого рода специалистов в период до 2017 года потребуется порядка 745 000 новых сотрудников.

      Кроме того, по результатам исследований, проведенных в прошлом году City & Guilds, три четверти работодателей из сферы IT, компьютерных и информационных услуг отметили явную нехватку квалифицированных кадров, в то время как 47% опрошенных заявили о неспособности действующей системы образования подготовить хороших специалистов».
      Читать дальше →