Picket.Security API
Generated from XML documentation for Picket.Security.
- CrashDiagnosticWriter - Writes bounded crash diagnostics without exposing exception messages or stack traces.
- EndpointGuard - Validates outbound provider endpoints before live verification or analysis can contact them.
- EndpointGuardBlockReason - Describes why an outbound endpoint was blocked.
- EndpointGuardHttpHandlerFactory - Creates HTTP handlers that enforce endpoint guard checks against the address used for each socket connection.
- EndpointGuardHttpHandlerOptions - Configures a guarded HTTP handler created by the endpoint guard HTTP handler factory.
- EndpointGuardOptions - Configures outbound endpoint safety checks.
- EndpointGuardResult - Represents an outbound endpoint safety decision.
CrashDiagnosticWriter
Section titled “CrashDiagnosticWriter”Picket.Security.CrashDiagnosticWriter
Writes bounded crash diagnostics without exposing exception messages or stack traces.
Methods
Section titled “Methods”Write(TextWriter writer, Exception exception)- Writes a non-secret diagnostic for an unexpected exception.
EndpointGuard
Section titled “EndpointGuard”Picket.Security.EndpointGuard
Validates outbound provider endpoints before live verification or analysis can contact them.
Methods
Section titled “Methods”Evaluate(Uri endpoint, EndpointGuardOptions options)- Evaluates an endpoint by resolving its host with the platform DNS resolver.Evaluate(Uri endpoint, IReadOnlyList<IPAddress> resolvedAddresses, EndpointGuardOptions options)- Evaluates an endpoint with caller-supplied resolved addresses.IsNonPublicAddress(IPAddress address)- Returns a value indicating whether an IP address is non-public for outbound verification purposes.
EndpointGuardBlockReason
Section titled “EndpointGuardBlockReason”Picket.Security.EndpointGuardBlockReason
Describes why an outbound endpoint was blocked.
Fields
Section titled “Fields”DnsFailure- The endpoint host could not be resolved.MetadataHost- The endpoint host is a known metadata service host.NonHttpsScheme- The endpoint uses a non-HTTPS scheme while HTTPS is required.NonPublicAddress- The endpoint resolved to a loopback, private, link-local, reserved, or otherwise non-public address.None- The endpoint is allowed.RelativeUri- The endpoint URI is not absolute.
EndpointGuardHttpHandlerFactory
Section titled “EndpointGuardHttpHandlerFactory”Picket.Security.EndpointGuardHttpHandlerFactory
Creates HTTP handlers that enforce endpoint guard checks against the address used for each socket connection.
Methods
Section titled “Methods”Create(EndpointGuardHttpHandlerOptions options)- Creates a sockets-based HTTP handler with redirects disabled and connect-time endpoint checks enabled.
EndpointGuardHttpHandlerOptions
Section titled “EndpointGuardHttpHandlerOptions”Picket.Security.EndpointGuardHttpHandlerOptions
Configures a guarded HTTP handler created by the endpoint guard HTTP handler factory.
Properties
Section titled “Properties”AddressResolver- Gets or sets the optional address resolver used before connecting a socket.EnabledSslProtocols- Gets or sets the TLS protocols enabled for HTTPS connections.EndpointGuardOptions- Gets or sets the endpoint guard options applied to the actual connected address.Proxy- Gets or sets the optional proxy used by the handler.
EndpointGuardOptions
Section titled “EndpointGuardOptions”Picket.Security.EndpointGuardOptions
Configures outbound endpoint safety checks.
Methods
Section titled “Methods”CreateDefault()- Creates default endpoint guard options for live verification.
Properties
Section titled “Properties”AllowNonPublicAddresses- Gets or sets a value indicating whether loopback, private, link-local, reserved, and other non-public addresses are allowed.RequireHttps- Gets or sets a value indicating whether HTTPS is required.
EndpointGuardResult
Section titled “EndpointGuardResult”Picket.Security.EndpointGuardResult
Represents an outbound endpoint safety decision.
Methods
Section titled “Methods”Allow()- Creates an allowed endpoint decision.Block(EndpointGuardBlockReason reason, string message)- Creates a blocked endpoint decision.
Properties
Section titled “Properties”BlockReason- Gets the reason the endpoint was blocked.IsAllowed- Gets a value indicating whether the endpoint is allowed.Message- Gets a non-secret diagnostic message.