Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Van toepassing op:SQL Server
Gebruik de clr enabled optie om op te geven of SQL Server gebruikersassembly's kan uitvoeren. De clr enabled optie biedt de volgende waarden:
| Waarde | Description |
|---|---|
0 |
Assembly-uitvoering is niet toegestaan op SQL Server. |
1 |
Assembly-uitvoering is toegestaan op SQL Server. |
Alleen voor WOW64: start WOW64-servers opnieuw op om deze wijzigingen toe te passen. Er is geen herstart vereist voor andere servertypen.
Wanneer u uitvoert RECONFIGUREen de uitvoeringswaarde van de clr enabled optie wordt gewijzigd van 1 in 0, worden alle toepassingsdomeinen met gebruikersassembly's onmiddellijk verwijderd.
Beperkingen
Clr-uitvoering (Common Language Runtime) wordt niet ondersteund onder lichtgewicht pooling
Schakel een van de twee opties uit: clr enabled of lightweight pooling. Functies die afhankelijk zijn van CLR en die niet goed werken in de glasvezelmodus, zijn het gegevenstype hierarchyid , de FORMAT functie, replicatie en op beleid gebaseerd beheer. Zie Serverconfiguratie: lichtgewicht pooling voor meer informatie.
Hoewel de clr enabled configuratieoptie is ingeschakeld in Azure SQL Database, worden het ontwikkelen van CLR-gebruikersfuncties niet ondersteund in Azure SQL Database.
Beveiliging van codetoegang wordt niet meer ondersteund
CLR maakt gebruik van CAS (Code Access Security) in .NET Framework, dat niet meer wordt ondersteund als een beveiligingsgrens. Een CLR-assembly die is gemaakt met PERMISSION_SET = SAFE kan mogelijk toegang krijgen tot externe systeembronnen, onbeheerde code aanroepen en sysadmin-bevoegdheden verkrijgen. In SQL Server 2017 (14.x) en latere versies verbetert de sp_configure optie, strikte beveiliging, de beveiliging van CLR-assembly's.
clr strict security is standaard ingeschakeld en behandelt SAFE en EXTERNAL_ACCESS assembly's alsof ze zijn gemarkeerd als UNSAFE. De optie clr strict security kan worden uitgeschakeld voor achterwaartse compatibiliteit, maar wordt niet aanbevolen.
We raden aan alle assembly's te ondertekenen met een certificaat of asymmetrische sleutel, waarbij een bijbehorende login UNSAFE ASSEMBLY machtigingen heeft in de master-database. SQL Server-beheerders kunnen ook assembly's toevoegen aan een lijst met assembly's, die de Database Engine moet vertrouwen. Zie sys.sp_add_trusted_assemblyvoor meer informatie.
Voorbeelden
In het volgende voorbeeld wordt eerst de huidige instelling van de clr enabled optie weergegeven en wordt vervolgens de optie ingeschakeld door de optiewaarde in te stellen op 1. Als u de optie wilt uitschakelen, stelt u de waarde in op 0.
EXECUTE sp_configure 'clr enabled';
EXECUTE sp_configure 'clr enabled', '1';
RECONFIGURE;