Author: way0utwest

  • Encryption Libraries

    One of the ways we work to implement better security is through the use of encryption. I remember the early days of PGP, VPNs adding end to end encryption, IPSec becoming available, and more. I was excited to see column level encryption come in SQL Server 2005, but it was a bit complex to implement and had issues. The evolution over time with TDE and Always Encrypted were welcome additions, but we can do better.

    Handling encryption in the database can provide some protection, but really, we’d like to see an end to end solution, that ensures data is protected on the wire as well as in the db. Microsoft does a lot of research, and released a Simple Encrypted Arithmetic Library (SEAL) as open source code. This is a C++ library that developers can use to protect their communications. Last year they also released a .NET wrapper to make it easier for a wide variety of developers to use.

    There is a lot more to deal with when handling encrypted at scale. Indexing and search operations are difficult and complex, and can require lots of resources. I think that the Always Encrypted in SQL Server 2019 with Secure Enclaves is a good evolution, but it’s complex to set up, tooling is poor, and maybe more disconcerting, there are potential vulnerabilities with secure enclaves on Intel chips.

    Certainly a combination of developers being able to use something like SEAL and a linkage with a secure enclave on the server for set-based operations might be something we can look forward to in the future. I hope so, as security continues to be a challenge for many of us.

    I’d also like to see more software that is built to ensure users can’t access huge amounts of data, and perhaps easier ways to control the export of large amounts of data. We do need this capability, but we also want very few people, or no people and only a process, with rights to do so.

    Steve Jones

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • Daily Coping 7 Apr 2020

    I’ve started to add a daily coping tip to the SQLServerCentral newsletter, which is helping me deal with the issues in the world. I’m adding my responses for each day here.

    Today’s tip is to rediscover your favourite music that really lifts your spirits.

    I love music. It’s one reason I resisted the change from iOS to Android. The music experience is just better on iOS. If they had kept the headphone jack, I’d likely still use an iPhone today.

    I grew up listening to lots of music and playing some on guitar. I attended lots of concerts before I was 25. My first was Andy Gibb. My second was Kiss. I had varied interests.

    Over the years, I get into moods, and will listen to lots of one genre for a period before I change. My wife didn’t love the rap phase, dealt with a Pop phase well, and doesn’t quite love my retro 70s guitar phase now.

    When I’ve traveled often for work, I will usually pick an artist and download a few albums to play on the plane. No real plan, but I try to discover, or rediscover, music from someone. I’ve had trips where all I listened to was Stevie Wonder, Elton John, Bob Dylan, Journey, Common, Kanye, Prince, the Beatles, and others. I sometimes realize I never real heard something in the past and sometimes rediscover a new thing I like.

    Spotify is my preferred platform, and I decided to pick something I really liked in the past. For me, there was a year of high school where I really liked Duran Duran. I grabbed a few albums (old and new) and created a playlist. I put this on random and let it play. Alternately tapping my feet, singing along, and really enjoying old tunes, and discovering new ones.

    It was a welcome break from current life.

  • T-SQL Tuesday Live–7 Apr 2020

    Last week went a little crazy, and I learned something: don’t post a Zoom link on Twitter. My apologies to anyone that wanted to join and had things go sideways. It took me about five minutes to mute everyone and kick people off.

    We ended up having a great call with just 4 of us, and it was good to touch base and talk through some of the changes in the world.

    This week I’m going to continue with the call. We had very little technical discussion, and I’m going to skip a technical theme this week and stick with a general touch base, health check, and community connection focus. We’re going to try and keep things civil and interesting.

    To try and prevent any craziness, I’m going to put a password on the meeting. Those of you that are data professionals should be able to answer this question for the password: what is the name of the type of index that isn’t stored in a row store? Enter just the first part, lower case (Hint: ______store index).

    The meeting isn’t hotlinked on purpose, as it’s not a complete URL. Zoom security is a thing.

    Call Details:

  • Getting Your dbatools Version–#SQLNewBlogger

    Another post for me that is simple and hopefully serves as an example for people trying to get blogging as #SQLNewBloggers.

    I was trying to test something recently and it didn’t work. One would think that I would remember to check versions, but I didn’t before posting on Twitter. I did get a response from @dbatools, and one of the questions was which version did I have.

    I wasn’t sure, and wasn’t sure how to check, so I had to do some Googling around. This post notes what I found and how I got the version.

    I have known that I can get the PowerShell version from $psversiontable. I can run that and see info about PowerShell..

    2020-03-30 09_42_37-cmd - powershell

    This doesn’t get me a view of modules I’ve installed. I tried Get-Help, but it wasn’t what I wanted.

    2020-03-30 09_44_06-cmd - powershell

    I then tried a search and stumbled upon Get-InstalledModule, which worked well, but it has a lot of info. When I run this, I get lots of data.

    2020-03-30 09_46_20-cmd - powershell

    Fortunately, it’s alphabetical and I don’t have a lot of modules that are named with something after “d”, so I could easily find the data.

    2020-03-30 09_46_39-cmd - powershell

    I know there’s an Update-Module and Install-Module, so I tried Get-Module. That actually works. I thought about this later, after I’d actually gone through the searching and posting results.

    As with anything, there are a couple methods here, but certainly it’s good to be able to solve a simple problem like this one.

    SQLNewBlogger

    This was something I figured out in about 2 minutes. Writing this post took longer, but I bet I now remember this. It also might be something I get asked in an interview.

    Try it yourself today. Start a blog and start documenting what you learn.