Dela via


DTSSignatureStatus Enumeration

Describes the status of the digital signature.

Namespace:  Microsoft.SqlServer.Dts.Runtime
Assembly:  Microsoft.SqlServer.ManagedDTS (in Microsoft.SqlServer.ManagedDTS.dll)

Syntax

'Declaration
Public Enumeration DTSSignatureStatus
'Usage
Dim instance As DTSSignatureStatus
public enum DTSSignatureStatus
public enum class DTSSignatureStatus
type DTSSignatureStatus
public enum DTSSignatureStatus

Members

Member name Description
Invalid The signature is not valid.
NotPresent The signature is not present.
Good The signature is valid.
Untrusted The signature is from an untrusted source.

Remarks

A package can be signed with a digital signature. By using a digital signature, you can help ensure that only packages from trusted sources are opened and run. However, to ensure that Integration Services checks the digital signature when it loads a package, you must also do at least one of the following steps:

  • Set the value of a registry entry.

  • Set a command prompt option for the dtexec utility (dtexec.exe).

  • Set a property in BI Development Studio. 

  • Set a property in your code when you load or run packages programmatically. For example, the CheckSignatureOnLoad property of the Application class determines whether the signature is checked.

For more information, see Using Digital Signatures with Packages.

Important

When configured to check the signature of the package, Integration Services only checks whether the digital signature is present, is valid, and is from a trusted source. Integration Services does not check whether the package has been changed.

Examples

The following code example specifies through the Application class that the package will have its signature checked on load.

Application app = new Application();
app.CheckSignatureOnLoad = CheckSignatureOnLoad;
pkg = app.LoadPackage(mysavedPackagePath, null);
DTSSignatureStatus expectedStatus = DTSSignatureStatus.Good;

DTSSignatureStatus dss = pkg.CheckSignature();
if (dss != expectedStatus)
{
    Console.WriteLine("Status not valid: found " + dss + ", expected " + expectedStatus);
}
Dim app As Application =  New Application() 
app.CheckSignatureOnLoad = CheckSignatureOnLoad
pkg = app.LoadPackage(mysavedPackagePath, Nothing)
Dim expectedStatus As DTSSignatureStatus =  DTSSignatureStatus.Good 
 
Dim dss As DTSSignatureStatus =  pkg.CheckSignature() 
If dss <> expectedStatus Then
    Console.WriteLine("Status not valid: found " + dss + ", expected " + expectedStatus)
End If