Stairway to SQL Server Security

Stairway to SQL Server Security Level 6: Execution Context and Code Signing

A fundamental way that SQL Server determines whether a principal has the permissions necessary to execute code is with its execution context rules. It’s all complicated by the possibility that a principal has permission to execute code but doesn’t have permission on the underlying objects accessed by the code, such as the data in a table. This stairway level will explore SQL Server’s execution context, ownership chains, and impersonation, as well as show you how you can control access to data via T-SQL code.

You rated this post out of 5. Change rating

2015-02-04

6,178 reads

Blogs

Tech Conferences and Expanding Your View

By

Tech conferences aren't just for networking and learning how to address a problem you're...

Managing subscribers, creating newsletters

By

When I created the website on WordPress, I was expecting all the features I...

Finding the Last Last Name in SQL: #SQLNewBlogger

By

I wrote a piece on the new SUBSTRING in SQL Server 2025 and got...

Read the latest Blogs

Forums

UNLOGGED Tables in PostgreSQL: When Speed Matters More Than Durability

By Chandan Shukla

Comments posted to this topic are about the item UNLOGGED Tables in PostgreSQL: When...

Email change does not work

By rjkoala1

I changed my email address in Edit Profile page, but it has no effect...

The case for "Understanding our business" training

By David.Poole

Comments posted to this topic are about the item The case for "Understanding our...

Visit the forum

Question of the Day

Specifying the Collation

I am dealing with issues on my SQL Server 2022 instance related to collation. I have an instance collation of Latin1_General_CS_AS_KS_WS, but a database collation of Latin1_General_CI_AS. I want to force a few queries to run with a specified collation by using code like this:

DECLARE @c VARCHAR(20) = 'Latin1_General_CI_AS'

SELECT  p.PersonType,
        p.Title,
        p.LastName,
        c.CustomerID,
        c.AccountNumber
 FROM Person.Person AS p
 INNER JOIN Sales.Customer AS c
 ON c.PersonID = p.BusinessEntityID
 COLLATE @c
Will this solve my problem?

See possible answers