Таким образом, проблема заключается в том, чтобы создать безопасный сервис, который не передает персональную идентифицирующую информацию (personal identification information; PII) неуполномоченным лицам. Также нужно обеспечить способ поиска подобной информации, соответствующей спискам пожеланий пользователей. Основной недостаток API заключается в наличии четко заданного набора политик доступа, связанных с сущностями. Если сущность не прошла процедуры аутентификации и авторизации, она не может получить доступ к PII даже при наличии идентификатора пользователя. В идеале идентификаторы пользователя следует выбирать так, чтобы затруднить их угадывание. В случае с уязвимостью в приложении компании Target все выглядит так, что при наличии какой-либо информации о человеке она может быть истолкована как разрешение на получение полного набора сведений, относящихся к этому человеку.
В процессе преобразования должны принимать участие все компоненты организации. Если в организации накопились культурные и технические задолженности, их влияние будет ощущаться до тех пор, пока в организации будут существовать бункеры.
Чтобы достичь поставленных целей, в компании Target использовался соответствующий набор инструментов. В число этих инструментов входят платформа облачных вычислений OpenStack, средство непрерывной интеграции и доставки Jenkins, средство автоматизации инфраструктуры либо управления конфигурацией Chef, средство контроля исходного кода GitHub. Благодаря использованию подобного набора инструментов обеспечивался более прозрачный процесс разработки кода. Ранее разработчики имели свои собственные автономные обзоры кода, теперь же они используют запросы на включение кода GitHub. Подобный подход очень нравится сотрудникам из эксплуатационного отдела, поскольку они получают возможность отслеживания изменений и могут легко стать участниками процесса разработки программ.
Для общения внутри организации весьма полезно приложение Hipchat, а приложение chatops стало неотъемлемой частью процесса разработки. Благодаря Hipchat обеспечивается общение не только внутри одной команды, но и между командами. Благодаря использованию chatops для потоковой передачи оповещений и событий в соответствующих каналах можно в режиме реального времени получить представление об экосистеме разработки программ. Это позволяет реагировать на инциденты гораздо быстрее, чем при использовании классических подходов.
В компании Target успех инициатив по внедрению новых инструментов частично оценивался пропорционально количеству соответствующих API. С октября 2014 года по февраль 2015 года этот показатель вырос от 30 до 45. Важность API обусловлена их использованием для интеграции и совместной работы команд и сервисов. До появления API они находились в бункерах и работали раздельно. Несмотря на возросшее число внутренних и внешних запросов API, сайт оставался стабильным, а ежемесячное количество инцидентов было весьма небольшим. Благодаря подбору корректной комбинации инструментов, обеспечивших улучшенное сотрудничество, были устранены некоторые болевые точки, что способствовало достижению успеха.
Не забудьте сформулировать критерии успешного использования инструмента в организации. Сконцентрируйтесь на результатах, которые вы хотите получить, выясните болевые точки, а затем подыщите инструменты для решения идентифицированных проблем.
Обмен знаниями внутри компании
После достижения успеха в ограниченных командах Микман и Клэнтон начали формировать послание для более широкой аудитории в Target. Один из механизмов, позволяющих внедрить изменения в организации, – проведение ежеквартальных внутренних конференций devopsdays. На этих конференциях выступали докладчики из других организаций, в частности Роб Каммингс из компании Nordstrom и Майкл Даки из компании Chef. Как уже упоминалось, это способствовало привлечению новых идей и возбуждению интереса к собственным devops-инициативам и прогрессу.
Вторая стратегия, адаптированная в Target, заключалась в обеспечении согласованности при обмене сообщениями в организации. Росс и Хизер имели представление о том, каким образом эксперты в области бережливой разработки программ, гибкой разработки ПО и devops могут помочь тренеру либо наставнику, обучающему отдельных сотрудников либо команды, в обучении и обмене информацией. Они обнаружили, что сведение этих тем в одну и воспитание тренеров, специализирующихся в смежных областях, облегчит формирование более последовательной внутренней народной модели. В результате все больше людей будут владеть информацией, относящейся к разным devops-концепциям.
Читать дальше
Конец ознакомительного отрывка
Купить книгу