SQLServerCentral - www.sqlservercentral.com

A community of more than 1,600,000 database professionals and growing

Featured Contents

The Voice of the DBA

Why Devops? For Better Security

The ideas of DevOps are a mixture of principles, ideas, recommendations, tools, processes, attitudes, and more. There isn't any  one way to implement a DevOps process, and plenty of people have been working in what many would consider a DevOps environment without calling it that. I really like Donovan Brown's definition: "DevOps is the union of people, process, and products to enable continuous delivery of value to our end users."

That sums it up nicely, but what are some of the "value" items that we can deliver to our customers? Today I want to discuss one of these: security.

The historical view of a secure system is one that gets secured, rarely changes, and every change allowed is reviewed to ensure no mistakes are made. That view fits fine in a DevOps software pipeline, well, except the rare part. Does that make a DevOps built application less secure? Let's turn that around. Is a traditional (waterfall, agile, etc.) application more secure because of the limitations?

I'd argue it's not. One of the issues with security is that the issues, holes, and vulnerabilities constantly change. What was secure last week might not be secure this week. In traditional applications we find one of two things. Since deployments are relatively rare, security problems often remain un-patched for long periods of time, or they are patched quickly by changes to production systems that are not well tested or evaluated. There are countless tales of changes made to production applications that end up breaking the system and must be removed. The result, a less secure system. This can be especially problematic when dependent software, for example the OpenSSL issues, is not patched because there are so many dependencies that no one is willing to change the system for fear of causing downtime.

In a mature DevOps environment, the system is better understood because the software is regularly built, testing is automated, and there are regular deployments to various downstream environments. Security patches can be incorporated and deployed quickly, enabling the ability of our automated testing process and intermediate environments to look for potential issues. With a regular branching strategy, we can even quickly suspend current development and focus on producing a patch or changing other code to ensure a successful deployment. Because we practice regular deployments, the need for un-tested, cowboy code changes in production is eliminated.

Certainly a DevOps process doesn't preclude making mistakes. It doesn't ensure developers or administrators won't create vulnerabilities (intentional or accidental). DevOps doesn't prevent mistakes. DevOps does ask us to continually learn and get feedback from our efforts. And it asks that we incorporate that feedback into our process. If we find a problem in how we write code, a test missed, or a problem in deployment, we correct that in our automated process to prevent it happening again. And since every task, every build, every deployment is logged, we can audit everyone's actions. DevOps certainly encourages more security, though not perfect security. The goal is that a DevOps process gets us a little better security every time we learn something.

Steve Jones from SQLServerCentral.com

Join the debate, and respond to today's editorial on the forums


The Voice of the DBA Podcast

Listen to the MP3 Audio ( 5.3MB) podcast or subscribe to the feed at iTunes and Libsyn. feed

The Voice of the DBA podcast features music by Everyday Jones. No relation, but I stumbled on to them and really like the music.

ADVERTISEMENT
SQL Search

Find SQL in your database for free

For example, want to rename one of your table columns but are not sure what stored procedures reference it? Using Redgate’s free SSMS add-in, SQL Search, you can search for the column name and find all the stored procedures that use it. Find out more and download now.

Featured Contents

 

Fix Commvault Backup Failures After an Upgrade

Ganapathi varma Chekuri from SQLServerCentral.com

In this article, you will learn how to troubleshoot backup failures in SQL Server 2016 when you run using commvault backup tool More »


 

How Incorrect SQL Server Table Statistic Estimates Can Cause Slow Query Execution

Additional Articles from MSSQLTips.com

Ben Snaidero explains that if you are updating your SQL Server table statistics nightly, but still seeing occasional poor performance with some of the queries being executed against my database, statistics could be the issue. More »


 

From the SQLServerCentral Blogs - Monitoring SLAs with SQL Monitor Reporting

Anthony Nocentino from SQLServerCentral Blogs

Proactive Reporting for SQL Server If you’re a return reader of this blog you know I write often about monitoring and... More »


 

From the SQLServerCentral Blogs - SQL: Different ways to generate sequence

Prashanth Jayaram from SQLServerCentral Blogs

There was a question from the op regarding adding a new column to a query output by generating the cyclic... More »

Question of the Day

Today's Question (by Aaron Nelson):

When using the Get-SqlDatabase cmdlet, if you want it to exclude system databases when it returns, how do you filter that down?

 Get-SqlDatabase -ServerInstance localhost

Think you know the answer? Click here, and find out if you are right.


We keep track of your score to give you bragging rights against your peers.
This question is worth 1 point in this category: PowerShell.

We'd love to give you credit for your own question and answer.
To submit a QOTD, simply log in to the Contribution Center.

ADVERTISEMENT

Professional Microsoft SQL Server 2016 Reporting Services and Mobile Reports

Professional Microsoft SQL Server 2016 Reporting Services and Mobile Dashboards provides a comprehensive lesson in business intelligence (BI), operational reporting and Reporting Services architecture using a clear, concise tutorial approach. You'll learn effective report solution design based upon many years of experience with successful report solutions. Improve your own reports with advanced, best-practice design, usability, query design, and filtering. Get your copy from Amazon today.

Yesterday's Question of the Day

Yesterday's Question (by Junior Galvão - MVP):

When running a DBCC SHRINKFILE, which file types have their sizes changed using the TruncateOnly option?

Answer: Only data files

Explanation:

The correct answer is: In both types of files.

TRUNCATEONLY is applicable only to data files. This option is not supported for FILESTREAM filegroup containers. This option releases all free space at the end of the file to the operating system but does not perform any page movement inside the file. The data file is shrunk only to the last allocated extent.

Even if you run the DBCC ShrinkFile command using the TruncateOnly option for a log file, the command will run but will not be performed no operation of release of space occupied by the file physically.

References: https://msdn.microsoft.com/en-us/library/ms189493.aspx


» Discuss this question and answer on the forums

Database Pros Who Need Your Help

Here's a few of the new posts today on the forums. To see more, visit the forums.

SQL Server 2016 : SQL Server 2016 - Administration

Hardening SQL Server - Hello everyone! Does anyone here hardening project of sql server? What major parts of this project and what is your recommendation? If you...


SQL Server 2016 : SQL Server 2016 - Development and T-SQL

Connection problem from SQL Server 2016 to SQL Server 2008 R2 using SSIS - I have a SQL Server 2016 SSIS project that works just fine against SQL Server 2008, 2012, 2014, and 2016...

Interview Question - Hi. Recently I have attended a couple of interviews. I have faced a similar question about stored procedures. What are...


SQL Server 2014 : Administration - SQL Server 2014

I found a huge SQL server profiler tuning trace on a production server, can I do anything usefull with it? - A fellow employee quit the job a week ago and I have been assigned to watch over a (small) production...

Very large Indexes (~3TB) and need to rebuild fast - Hi, Hi, We have a 40 TB DB, and have some big tables and few indexes which are too big now to...

Best way to determine to Clustered index keys - Hello, I have a project tro determine the best columns for clustered index. I have a very large table with over...

TDE after restoring to a Different Instance - Hi Experts, I have a TDE enabled database and i successfully restored it to another instance of SQL after restoring the...

Problem with Failback of FCI node that's part of an Availability Group - Hi, I was wondering if anyone was able to help with a problem I am experiencing with the failback of SQL...


SQL Server 2014 : Development - SQL Server 2014

View With Joins vs Table - I find myself in a situation where I have a table in which I need all the fields but it...

Possible to share a very large database between servers? - OK, I know this sounds a bit wonky, but I have a client that has a very large database (about...

trouble wit a poor performing query - I've got a poor performing query and not sure the best approach to fixing it.  Here's the statement: UPDATE @t  SET...


SQL Server 2012 : SQL 2012 - General

Every day count of Inventory - Hi, we have an Inventory Transactional Fact Table, which provides count of inventory according to particular product. like 

Rounding off in SQL - Here is the SQL query SELECT ROUND (300 /(CONVERT(decimal(4,2),54)),2) AS Below is my result: Total 5.560000 But I want result like this, Total 5.56 Thanks in...

Too many workers? - Hi, I think have a problem with one of my SQL 2012 SP3 CU4 servers. Twice now, our two principal servers...

How to write a string to a file in SQL. - Hello All, I want to write a varchar(max) string to a file. The file should be UTF-8 (and not in a multi...


SQL Server 2008 : SQL Server 2008 - General

Rank records including datediff between records - I need to find records based on this identifier, IDXMRN, that have a NoteName='PCCP' with subsequent NoteNames='Care Coordination Note'. I need...

SQL2008R2 unable to drop linked server - OK, so I screwed up a script and created a push subscription with a mis-typed server name. SQL created the...

High Memory Usage - In our production server , memory usage is around 95% even tho it has been capped (8 GB ) . Total memory 12...


Reporting Services : Reporting Services

Using IN in a Where statement with and option of all - I'm trying to use a Where TS.Skill IN (@TS) and it works fine. :) The user can select one or any number of options...


Data Warehousing : Integration Services

connection manager time of day configuration - Microsoft Visual Studio Premium 2012 Version 11.0.61219.00 Update 5 Microsoft .NET Framework Version 4.6.01055 Microsoft SQL Server Integration Services Designer Version 11.0.3369.0 Microsoft...

This email has been sent to newsletter@newslettercollector.com. To be removed from this list, please click here.
If you have any problems leaving the list, please contact the webmaster@sqlservercentral.com.
This newsletter was sent to you because you signed up at SQLServerCentral.com.
Feel free to forward this to any colleagues that you think might be interested.
If you have received this email from a colleague, you can register to receive it here.
This transmission is ©2015 Redgate Software Ltd, Newnham House, Cambridge Business Park, Cambridge, CB4 0WZ, United Kingdom. All rights reserved.
Contact: webmaster@sqlservercentral.com