Author: way0utwest

  • A Limited User for SQL Data Catalog

    One of the things I’ve pushed for at Redgate is to document the minimum permissions needed for our products inside a database. Often this isn’t possible as some of our products require sysadmin, but some don’t. I was resetting Data Catalog up on a new machine and decided to limit things.

    Installation

    The installation does create a database, which you can do separately, but if you don’t do this, you need to grant dbcreator for the service account, at least for the install. If you create it, this page shows the more granular permissions if you want to do that.

    The permissions needed are:

    1. ALTER ROLE [db_ddladmin] ADD MEMBER
    2. ALTER ROLE [db_datareader] ADD MEMBER
    3. ALTER ROLE [db_datawriter] ADD MEMBER
    4. GRANT CONNECT SQL

    These permissions allow the service to write data to the various objects in the database.

    Classifying Databases

    Classifying databases is different. For this task, the account used to connect, which doesn’t need to be the service account, will read information about the tables, but does not read data. We just need to capture the column name and some metadata.

    Again, this page gives a script, but essentially, we need these permissions.

      1. GRANT CONNECT SQL
      2. GRANT CONNECT ANY DATABASE (2012+)
      3. GRANT VIEW SERVER STATE
      4. GRANT VIEW ANY DEFINITION
      5. GRANT VIEW ANY SENSITIVITY CLASSIFICATION (2019+)

    Once those permissions are granted to an account, you use the account to add the instance to SQL Data Catalog.

    I’m glad that we’re documenting and limiting permissions where possible. We do understand data privacy and protection are important, and the advocates at Redgate try to push developers to use as limited permissions as possible when building products.

  • How Important is a Conference?

    The PASS Virtual Summit is coming up next month, and Andy has a few thoughts on how to get your employer to send you to the virtual conference. As someone that has been through this many times, Andy has good advice, and his thoughts are the types of things I’ve done in the past at various jobs I’ve had. Having a good reason why was important before I started speaking.

    Once I started speaking, I often made a deal with my boss that I’d cover some parts of the event and they’d cover others. We both made a shared investment in my career, which made sense to me. I often used Andy’s line, which is what I was thinking about today.

    This is important to me.

    That’s a good phrase to use. Usually I do a good amount of self learning, I ask lots of questions, scan message boards, and I teach myself various things. However, a conference is a chance to help me think. I get to consider new technologies, I get to talk with others about how they solve problems, or more often, what problems new technologies can cause me. I get the chance to grow in a wider way than I can in the office.

    That’s important to me, and it’s been valuable to my employers. I think that’s the case for some conference attendees, but I do think that some drive and desire are important if you get more out of a conference than a couple days off. Let your boss know you have that drive, and show it off. Remind them of the things you do to invest in yourself.

    Can you put into words why a conference is important to you? Why it’s valuable for you personally, what you get, and does the chance to go to an event make you more likely to value your current position? If so, then maybe ask to go. There are some valuable packages to help you learn. If not, that’s fine, but maybe ask yourself why not. What don’t you get out of the Summit, or any other conference.

    Maybe the main thing to think about today is what is important to you when it comes to benefits and requests of your employer?

    Listen to the podcast at Libsyn, Stitcher or iTunes.

  • Daily Coping 12 Oct 2020

    I started to add a daily coping tip to the SQLServerCentral newsletter and to the Community Circle, 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 look for reasons to be hopeful even in difficult times.

    This has been a difficult year, in many ways. Large ones with the pandemic, the struggles with racism, the difficulty so many people have in even relating to each other. In small ways, with my kids struggling with school, the inability to travel, losing half my coaching season. None of these are really big problems in the grand scheme of life, but they do affect mental health and attitude.

    However, there is a lot to look forward to. I am hopeful that testing and vaccines will come at some point. I am not in favor of rushing things, but I do believe lots of smart people are working on the problems and we slowly see progress.

    I also see lots of smiles and kindness from local people in my area when I get out to see them. It’s gratifying to remember there are many people that make my community enjoyable.

    Slowly I see the world improving in small ways, as we cope with the issues, attitudes change and improve, and we adapt.

    I believe we will come back stronger in many ways from this difficult time.

  • The API Battle

    I think Oracle is a fine database platform, maybe too expensive, but it works. However, I’m not a fan of the company, and I find myself less enamored with them when I read about this case. This the Oracle v Google case, where Google is accused of violating copyright of Java APIs when it build Android.

    Essentially Oracle claims that the Java API, the packages, classes, methods, etc. are copyrighted and cannot be used in any other product. I assume this means that if I implemented the Java.SQL class, writing the code in C#, I’d be infringing on Oracle’s work.

    Even if I offered my software for free, this could be legal violation and I’d owe Oracle money. Or I’d need to license the API from Oracle. Any guesses on whether that would be inexpensive or prohibitive?

    In one sense, I do think that copyright and patent protection should exist. On the other hand, I think some of the applications of the original laws and ideas to the digital world don’t translate well. I certainly think that APIs shouldn’t be protected. These are essentially function names, and while I appreciate the need to copyright words, I don’t think it should go this far.

    I am hopeful that the Supreme Court will hear this case, and rule that this isn’t a violation. As someone that works for a software company, and has written software designed to inter-operate with other products, I think this would cause lots of chaos in our industry. I also think we have enough silly licensing and limiting practices in software, and I’d prefer to see less, not more.

    Steve Jones