Published on

May 17, 2019

Улучшение сред разработки SQL Server

Как разработчик SQL Server, вы, возможно, сталкивались с проблемами при настройке вашей среды разработки. Одной из распространенных проблем является отсутствие разрешений sysadmin на экземпляры SQL Server, даже в средах разработки. Эта политика, установленная администраторами баз данных в IT, может затруднить вашу возможность эффективно создавать и развертывать базы данных с использованием инструментов, таких как Redgate.

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

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

Хотя эти опасения обоснованы, отказ от предоставления разработчикам прав sysadmin не является решением. Вместо этого это закрепляет вас за ручное управление отклонением среды, что может быть затратным по времени и неэффективным. Так как можно улучшить среду разработки SQL Server без ущерба для безопасности и качества кода?

Создание отдельных сред разработки

Один из подходов – предоставить каждому разработчику отдельную среду разработки. Это устраняет необходимость в общей среде разработки базы данных, которая часто может стать беспорядочной и сложной для управления. С отдельной средой разработчики имеют свободу экспериментировать и автоматизировать без влияния на других разработчиков.

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

Когда код готов к объединению, автоматизированные процессы могут собрать код, обеспечивая его правильную компиляцию и выполнение всех зависимостей. Наличие прав sysadmin для процесса сборки позволяет гибкость и автоматизацию, такие как создание заданий SQL Agent, если они не существуют.

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

Решение проблем с разрешениями и доверием

Еще одна проблема, которая часто возникает, – это опасение, что разработчикам нельзя доверять следовать принципу наименьших привилегий. Предоставление им прав sysadmin может привести к злоупотреблению и потенциальным уязвимостям безопасности. Однако сосредоточение только на разрешениях разработчика в среде разработки не является решением.

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

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

Преимущества автоматизации

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

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

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

Click to rate this post!
[Total: 0 Average: 0]

Let's work together

Send us a message or book free introductory meeting with us using button below.