> Tech > Listing 1 : Code qui montre l’importance des SID

Listing 1 : Code qui montre l’importance des SID

Tech - Par Renaud ROSSET - Publié le 24 juin 2010

--Add logins for database ownership.
USE master
GO
EXEC sp_addlogin 'DatabaseOwner1'
EXEC sp_addlogin 'DatabaseOwner2'
GO

--Initialize Database1.
CREATE DATABASE Database1
GO
USE Database1
EXEC sp_changedbowner 'DatabaseOwner1'
EXEC sp_grantdbaccess guest
GO
CREATE TABLE [dbo].[MyTable] ([Column1] [int])
GO

--Initialize Database2.
CREATE DATABASE Database2
GO
USE Database2
EXEC sp_changedbowner 'DatabaseOwner2'
EXEC

sp_grantdbaccess guest
GO
CREATE VIEW [dbo].[MyView] AS
SELECT [Column1] FROM [Database1].[dbo].[MyTable]
GO
GRANT SELECT ON [Database2].[dbo].[MyView] TO PUBLIC
GO

–Illustrate behavior with different database owners.
PRINT ‘** Note different logins/SIDs for dbo users so the select
fails **’
EXEC Database1..sp_helpuser ‘dbo’
EXEC Database2..sp_helpuser ‘dbo’
SETUSER ‘guest’

–Select permission denied because of broken ownership chain.
SELECT * FROM [Database2].[dbo].[MyView]
SETUSER
GO

–Change Database2 ownership to match Database1.
EXEC sp_changedbowner ‘DatabaseOwner1’
GO

–Illustrate behavior with same database owner.
PRINT ‘** Note same login/SID for dbo users so the select now succeeds
**’
EXEC Database1..sp_helpuser ‘dbo’
EXEC Database2..sp_helpuser ‘dbo’
SETUSER ‘guest’

–Select succeeds because ownership chain is unbroken.
SELECT * FROM [Database2].[dbo].[MyView]
SETUSER
GO

–Clean up.
USE master
GO
DROP DATABASE Database1
DROP DATABASE Database2
EXEC sp_droplogin ‘DatabaseOwner1’
EXEC sp_droplogin ‘DatabaseOwner2’
GO

Téléchargez cette ressource

Sécuriser Microsoft 365 avec une approche Zero-Trust

Sécuriser Microsoft 365 avec une approche Zero-Trust

Découvrez comment renforcer la cyber-résilience de Microsoft 365 grâce à une approche Zero-Trust, une administration granulaire et une automatisation avancée. La technologie Virtual Tenant de CoreView permet de sécuriser et simplifier la gestion des environnements complexes, tout en complétant vos stratégies IAM, y compris dans les secteurs réglementés.

Les plus consultés sur iTPro.fr

A lire aussi sur le site

À la une de la chaîne Tech