SAMLWriter Class
Properties Methods Events Configuration Settings Errors
The SAMLWriter class offers SAML message generation functions.
Syntax
class secureblackbox.SAMLWriter
Remarks
SAMLWriter provides means of serialization of SAML entities into valid SAML protocol messages. Together with SAMLReader, this class provides fine-grained access to the composition of SAML requests, responses, assertions, and statements. You can use it as part of your SAML client or SAML server implementation for creating individual SAML entities.
SAMLReader and SAMLWriter are independent of SAML server controls that are also included in SecureBlackbox, and are aimed at scenarios that require lower-level access to SAML functionality than that provided by the server controls.
SAMLWriter can create the following kinds of SAML messages:
- AssertionIDRequest
- SubjectQuery
- AuthnQuery
- AttributeQuery
- AuthzDecisionQuery
- AuthnRequest
- ManageNameIDRequest
- LogoutRequest
- NameIDMappingRequest
- ArtifactResolve
- Response
Please find below a quick-and-dirty example of the use of SAMLWriter class for creating a signed AuthnRequest message:
Samlwriter writer = new Samlwriter(); // configuring general message properties writer.Destination = "http://destination-url.com"; writer.IssueInstant = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); writer.Issuer = "Value=https://issuer-url.com;Format=urn:oasis:names:tc:SAML:2.0:nameid-format:entity;IDType=Issuer"; // configuring general AuthnRequest properties writer.AuthnRequest.IsPassive = false; writer.AuthnRequest.UseIsPassive = true; writer.AuthnRequest.ForceAuthn = true; writer.AuthnRequest.ProtocolBinding = "urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST"; writer.AuthnRequest.AssertionConsumerServiceURL = "https://assertion-consumer-url.com"; writer.AuthnRequest.AttributeConsumingServiceIndex = 1; writer.AuthnRequest.NameIDPolicyAllowCreate = false; writer.AuthnRequest.NameIDPolicyFormat = "urn:oasis:names:tc:SAML:2.0:nameid-format:persistent"; writer.AuthnRequest.ConditionsNotBefore = DateTime.UtcNow.ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); writer.AuthnRequest.ConditionsNotOnOrAfter = DateTime.UtcNow.AddMinutes(30).ToString("yyyy-MM-ddTHH:mm:ss.fffZ"); // adjusting request conditions if required SAMLAssertionCondition cond = new SAMLAssertionCondition(); cond.ConditionType = SAMLConditionTypes.csctOneTimeUse; writer.AuthnRequestConditions.Add(cond); // configuring signing properties Certificate certificate = new Certificate("C:\\Certs\\samlCert.pfx", "password"); writer.Sign = true; writer.SigningCertificate = certificate; // creating the SAML entity of the required type writer.CreateNew((int)SamlwriterOutputTypes.cstyAuthnRequest); // adjusting low-level signature parameters writer.Config("SigDigestMethod=http://www.w3.org/2001/04/xmlenc#sha256"); writer.Config("SigMethod=http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"); // signing the request and serializing it to XML string request = writer.Save();The above code produces the following AuthnRequest:
<samlp:AuthnRequest xmlns:saml="urn:oasis:names:tc:SAML:2.0:assertion" ID="53GhrzQ5f89fu214ANAR" Version="2.0" IssueInstant="2021-12-15T10:39:31Z" Destination="http://destination-url.com" IsPassive="false" ProtocolBinding="urn:oasis:names:tc:SAML:2.0:bindings:HTTP-POST" AssertionConsumerServiceURL="https://assertion-consumer-url.com" AttributeConsumingServiceIndex="1" xmlns:samlp="urn:oasis:names:tc:SAML:2.0:protocol"> <saml:Issuer Format="urn:oasis:names:tc:SAML:2.0:nameid-format:entity">https://issuer-url.com</saml:Issuer> <ds:Signature xmlns:ds="http://www.w3.org/2000/09/xmldsig#"> <ds:SignedInfo> <ds:CanonicalizationMethod Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> <ds:SignatureMethod Algorithm="http://www.w3.org/2001/04/xmldsig-more#rsa-sha256"/> <ds:Reference URI="#53GhrzQ5f89fu214ANAR"> <ds:Transforms> <ds:Transform Algorithm="http://www.w3.org/2000/09/xmldsig#enveloped-signature"/> <ds:Transform Algorithm="http://www.w3.org/2001/10/xml-exc-c14n#"/> </ds:Transforms> <ds:DigestMethod Algorithm="http://www.w3.org/2001/04/xmlenc#sha256"/><ds:DigestValue>+xhhgXtwYN0/r9h7WAwg=</ds:DigestValue> </ds:Reference> </ds:SignedInfo> <ds:SignatureValue> jfYeIq/z8D1tJZYbVqDMoqKpdrfGMj8/zI7gbUsJbECAr00cN34md2QG0mo4cOx7pny+5 Tht7tUzqENHqcZdmlOcZc2JcJqokVxIcLEluFiWKlNjpexkXFQKzOC1peRfTZm8SQTqtP Cz8IknLUc6Scfml29PHmks1PxjJDteGb/+FggsZRTGZC3a05nvH3ayvHukPeHuHssx5dX nj0quT8salR6fdx6lAJo/AnDHzcfBNyxAMn+ebk5VOOgVD1L3PayvXib/maj8aVI2I5UT o4vmfybTWKzeS8DX9We7UV+4Xowwe647t1A912xLVub/e23A18Yf1V0PXC87kttTkA== </ds:SignatureValue> <ds:KeyInfo> <ds:X509Data><ds:X509Certificate> MIIEKDCCAxCgAwIBAgIFYA3A3gIwDQYJKoZIhvcNAQELBQAwfjELMAkGA1UEBhMCVVMxC zAJBgNVBAgTAk5DMRQwEgYDVQQHEwtDaGFwZWwgSGlsbDEiMCAGCSqGSIb3DQEJARMTc2 FsZXNAbnNvZnR3YXJlLmNvbTEoMCYGA1UEAxMfU2VjdXJlQmxhY2tib3ggRGVtbyBDZXJ 0aWZpY2F0ZTAeFw0xNzA5MDEwMDAwMDBaFw0yMjA5MDEwMDAwMDBaMH4xCzAJBgNVBAYT AlVTMQswCQYDVQQIEwJOQzEUMBIGA1UEBxMLQ2hhcGVsIEhpbGwxIjAgBgkqhkiG9w0BC QETE3NhbGVzQG5zb2Z0d2FyZS5jb20xKDAmBgNVBAMTH1NlY3VyZUJsYWNrYm94IERlbW 8gQ2VydGlmaWNhdGUwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCfAVIcq9o eoIbw56LsPjxWsX3YGkqasBQzgQymhfcDZeSvFKFis8iqArGLTUUWOaImO5t2UmjIa+4n YP39hb9Z1r0CMy53p83oYbbZZ7qMeji0pMAufJHqKCN8t2HNWf2HE8S9UOU7R/UHdrSAN JitBKV9lSG9f450yWoGNwt35ZCsOp0zqtCgvkEvteGsz01R5DDjOccs3QNu25K/Sf27KP CYabS6A1ehYNY/G32qoKNJhu3DN4bWje57gBWi9WSfQ3tZUOV5q2ozaNJA78Wl4fXC6RB CaBh0GOwXeyZoH13LJdn+lqlCSMz024ImG4yFQEENbWvE9Elku8RYTn73AgMBAAGjgaww gakwHwYDVR0jBBgwFoAUmt/L7GI1SH36Sp8EUBxTwuzSgqMwHQYDVR0OBBYEFJrfy+xiN Uh9+kqfBFAcU8Ls0oKjMA8GA1UdEwEB/wQFMAMBAf8wDwYDVR0PAQH/BAUDAwDuADBFBg NVHSUEPjA8BggrBgEFBQcDAQYIKwYBBQUHAwIGCCsGAQUFBwMDBggrBgEFBQcDBAYIKwY BBQUHAwgGCCsGAQUFBwMJMA0GCSqGSIb3DQEBCwUAA4IBAQBovHBbMsW/k/5iuLQQqsYS ng5X2iy1W+5BRb1hz0MGnHGLqJWy1ty5+bTo6g/zvT65dXIPIexLkInEenYSy75Lthr6a ewUcvwfl1TYXjWlMD5Nm5pM9As71+XsGSdYGXoKohbEzbT6RDByjwR+yxtatqko7e1Eg6 InNJRTRt7al/63FSPEgSCqOX6asDVDNZ83db0dOcoeaPEiDz3liE3+tYHtKXj5/qwTtYd aqBZxdJfuCKZveEFe1DO3/ayDvIvG9Eme+rEjntErF+Cw9a8ukesvDuT49cRE9oTs3O7f 6LUbhCv5zJN+dTFr75NSdWdp4yvn3nK3i2udeMnTWK0U </ds:X509Certificate></ds:X509Data> </ds:KeyInfo> </ds:Signature> <samlp:NameIDPolicy Format="urn:oasis:names:tc:SAML:2.0:nameid-format:persistent"/> <saml:Conditions NotBefore="2021-12-15T10:39:31Z" NotOnOrAfter="2021-12-15T11:09:31Z"><saml:OneTimeUse/></saml:Conditions> </samlp:AuthnRequest>
Property List
The following is the full list of the properties of the class with short descriptions. Click on the links for further details.
add_xml_header | Controls the inclusion of an XML header in the message. |
artifact_endpoint_index | An accessor to the EndpointIndex entry of the artifact. |
artifact_message_handle | An accessor to the MessageHandle property of the artifact. |
artifact_remaining_artifact | Returns the contents of the artifact. |
artifact_source_id | An accessor to the SourceID property of the artifact. |
artifact_type_code | The TypeCode property of the artifact. |
artifact_uri | An accessor to the URI property of the artifact. |
artifact_resolve_query | Contains the artifact resolve query. |
assertion_attr_count | The number of records in the AssertionAttr arrays. |
assertion_attr_friendly_name | Specifies the friendly name of the attribute Use this property to access or set the friendly name of a SAML attribute (e. |
assertion_attr_name | Specifies the name of the attribute. |
assertion_attr_name_format | Indicates the format used to reference the attribute. |
assertion_attr_statement_index | Contains the index of the statement the attribute corresponds to. |
assertion_attr_values | Contains a list of attribute values. |
assertion_condition_count | The number of records in the AssertionCondition arrays. |
assertion_condition_audience_list | An accessor to the Audience list parameter of an audience restriction condition. |
assertion_condition_condition_type | Specifies a type of the condition object. |
assertion_condition_proxy_restriction_count | An accessor to the proxy restriction count element of the condition. |
assertion_count | Returns the number of assertions in the message. |
assertion_id_request_references | Contains the References entry of the SAML assertion ID request. |
assertion_info_advice_assertion_count | Contains the number of advice assertions. |
assertion_info_assertion_type | Specifies the type of the assertion. |
assertion_info_chain_validation_details | The details of a certificate chain validation outcome. |
assertion_info_chain_validation_result | The outcome of a certificate chain validation routine. |
assertion_info_conditions_not_before | Represents the Conditions. |
assertion_info_conditions_not_on_or_after | Represents the Conditions. |
assertion_info_encrypted_content | Represents the encrypted assertion content. |
assertion_info_id | Represents the ID of the assertion. |
assertion_info_id_ref | Represents an ID reference value. |
assertion_info_issue_instant | Contains the assertion issuance time stamp. |
assertion_info_signature_validation_result | The outcome of the cryptographic signature validation. |
assertion_info_signed | Specifies whether the assertion is signed. |
assertion_info_uri_ref | Represents an URI reference value. |
assertion_info_validation_log | Contains the signing certificate's chain validation log. |
assertion_info_version | Specifies the SAML protocol version used. |
assertion_issuer | Specifies the assertion issuer. |
assertion_statement_count | The number of records in the AssertionStatement arrays. |
assertion_statement_attributes | Contains a list of statement attribute names. |
assertion_statement_authn_context_authenticating_authorities | Contains the list of authenticating authorities. |
assertion_statement_authn_context_choice | Specifies the authentication context choice variant. |
assertion_statement_authn_context_class_ref | Indicates the authentication contexts class reference. |
assertion_statement_authn_context_decl | Specifies the authentication contexts declaration. |
assertion_statement_authn_context_decl_ref | Specifies the authentication contexts declaration reference. |
assertion_statement_authn_instant | Specifies the authentication event timestamp. |
assertion_statement_authn_session_index | Contains the authentication session index. |
assertion_statement_authn_session_not_on_or_after | Maps to the SessionNotOnOrAfter parameter of the authentication statement. |
assertion_statement_authn_subject_locality_address | Specifies the authentication subjects address. |
assertion_statement_authn_subject_locality_dns_name | Maps to the authentication subjects DNS name parameter. |
assertion_statement_authz_actions | Provides access to the list of actions of the authorization statement. |
assertion_statement_authz_decision | Specifies the authorization decision. |
assertion_statement_authz_decision_evidence | Manages the authorization decision statement evidence parameter. |
assertion_statement_authz_decision_resource | Specifies the authorization decision statement resource parameter. |
assertion_statement_statement_type | Specifies the assertion statement type. |
assertion_subject_confirmation_count | The number of records in the AssertionSubjectConfirmation arrays. |
assertion_subject_confirmation_data_address | Contains the address enabled for presenting assertions. |
assertion_subject_confirmation_data_in_response_to | The ID of the SAML message in response to which the assertion is issued. |
assertion_subject_confirmation_data_not_before | Time moment before which the subject cannot be confirmed. |
assertion_subject_confirmation_data_not_on_or_after | Limits the time until which the subject can be confirmed. |
assertion_subject_confirmation_data_recipient | The URI of the entity or the location of the resource to which the assertion should be presented. |
assertion_subject_confirmation_data_type | The type of data contained in the confirmation. |
assertion_subject_confirmation_id | The identifier of the entity which can satisfy the subject confirmation requirements. |
assertion_subject_confirmation_method | Specifies the mechanism to be used to confirm the subject. |
assertion_subject_id | Specifies the assertion subject ID. |
attr_query_attr_count | The number of records in the AttrQueryAttr arrays. |
attr_query_attr_friendly_name | Specifies the friendly name of the attribute Use this property to access or set the friendly name of a SAML attribute (e. |
attr_query_attr_name | Specifies the name of the attribute. |
attr_query_attr_name_format | Indicates the format used to reference the attribute. |
attr_query_attr_statement_index | Contains the index of the statement the attribute corresponds to. |
attr_query_attr_values | Contains a list of attribute values. |
authn_query_comparison | Specifies the authentication context comparison method. |
authn_query_context_class_refs | Specifies the context class reference. |
authn_query_ref_type | Specifies the context reference type. |
authn_query_session_index | Specifies the index of the session to the authentication entity. |
authn_request_assertion_consumer_service_index | Specifies the assertion consumer service index. |
authn_request_assertion_consumer_service_url | Specifies the assertion consumer service URL. |
authn_request_attribute_consuming_service_index | Specifies the attribute consuming service index. |
authn_request_conditions_not_before | Specifies the NotBefore condition of the request. |
authn_request_conditions_not_on_or_after | Provides access to the NotOnOrAfter condition of the request. |
authn_request_context_class_refs | Provides access to the authentication context class references. |
authn_request_context_comparison | Specifies the AuthnContext comparison method. |
authn_request_context_ref_type | Specifies the context reference type. |
authn_request_force_authn | Corresponds to the ForceAuthn parameter of the request. |
authn_request_is_passive | Maps to the IsPassive parameter of the request. |
authn_request_name_id_policy_allow_create | Matches the AllowCreate attribute of NameIDPolicy element of the request. |
authn_request_name_id_policy_format | Matches to the Format attribute of the NameIDPolicy element of the request. |
authn_request_name_id_policy_sp_name_qualifier | Matches to the SP name qualifier attribute of the request. |
authn_request_name_id_policy_use_allow_create | Controls inclusion of AllowCreate attribute in the request. |
authn_request_protocol_binding | Specifies the protocol binding to be requested in the authentication request. |
authn_request_provider_name | Specifies the name of the requestor. |
authn_request_scoping_idp_list_get_complete | Matches the GetComplete element of the IDPList entry of the Scoping object. |
authn_request_scoping_proxy_count | The maximum number of proxies on the way between the requestor and the provider. |
authn_request_scoping_requester_i_ds | A collection of requestor IDs on whose behalf the request is being sent. |
authn_request_use_force_authn | Controls inclusion of ForceAuthn attribute in the request. |
authn_request_use_is_passive | Controls inclusion of IsPassive attribute in the request. |
authn_request_condition_count | The number of records in the AuthnRequestCondition arrays. |
authn_request_condition_audience_list | An accessor to the Audience list parameter of an audience restriction condition. |
authn_request_condition_condition_type | Specifies a type of the condition object. |
authn_request_condition_proxy_restriction_count | An accessor to the proxy restriction count element of the condition. |
authn_request_scoping_idp_count | The number of records in the AuthnRequestScopingIDP arrays. |
authn_request_scoping_idp_loc | Contains the value of the Loc attribute. |
authn_request_scoping_idp_name | Contains the name of the IdP provider. |
authn_request_scoping_idp_provider_id | Contains the provider ID. |
authz_decision_query_actions | Specifies the list of actions included in the query. |
authz_decision_query_resource | Matches the Resource element of the query. |
binding | Specifies the type of the binding to use. |
consent | Contains the Consent parameter of the request. |
destination | Contains the Destination parameter of the SAML object. |
encryption_cert_bytes | Returns raw certificate data in DER format. |
encryption_cert_handle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
id | The ID of the request. |
in_response_to | Contains the InResponseTo property of the SAML request. |
issue_instant | Contains request issuance timestamp. |
issuer | Sets the issuer of the message. |
logout_request_name_id | Contains the value of the NameID parameter. |
logout_request_not_on_or_after | Contains the value of the NotOnOrAfter parameter. |
logout_request_reason | Contains the value of the Reason parameter. |
logout_request_session_indexes | Contains the list of session indices. |
manage_name_id_request_name_id | Contains the value of the NameID parameter of the request. |
manage_name_id_request_new_encrypted_id | Contains the value of the NewEncryptedID parameter of the request. |
manage_name_id_request_new_id | Contains the value of the NewID parameter. |
manage_name_id_request_terminate | Contains the value of the Terminate parameter of the request. |
name_id_mapping_request_name_id | An accessor to the NameID parameter of the request. |
name_id_mapping_request_name_id_policy_allow_create | Contains the value of AllowCreate parameter of the NameIDPolicy object. |
name_id_mapping_request_name_id_policy_format | Specifies the format of the NameIDPolicy element. |
name_id_mapping_request_name_id_policy_sp_name_qualifier | Contains the SPNameQualifier parameter of the NameIDPolicy element. |
name_id_mapping_request_name_id_policy_use_allow_create | Controls inclusion of UseAllow modifier in the NameIDPolicy object. |
output_type | Returns the SAML type of message being created. |
post_binding_body | Contains the form body. |
post_binding_form_template | Contains the XHTML form template returned by the service provider. |
post_binding_mode | Specifies whether binding is applied on a server, or on a client side. |
post_binding_relay_state | Contains the value of the RelayState parameter of POST binding mechanism. |
post_binding_url | Contains the URL of POST binding mechanism. |
profile | Specifies a pre-defined profile to apply when creating the signature. |
redirect_binding_encoding | Specifies the message encoding. |
redirect_binding_force_sign | Enforces a signature over all outgoing messages. |
redirect_binding_relay_state | Contains the RelayState parameter of the binding. |
redirect_binding_sign | Specifies whether to sign generated messages. |
redirect_binding_signature_algorithm | Contains the signature algorithm. |
redirect_binding_url | Contains the URL of the request query. |
redirect_binding_verify_signatures | Instructs the class whether to verify incoming signatures. |
redirect_binding_cert_bytes | Returns raw certificate data in DER format. |
redirect_binding_cert_handle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
response_name_id | Contains the NameID parameter of a NameIDMapping response. |
response_optional_element | An optional message element to be returned with the response. |
response_response_type | Contains the type of the response. |
response_status_code_sub_value | The value of the nested StatusCode. |
response_status_code_value | Contains the status code value. |
response_status_detail | Contains additional information on the status of the request. |
response_status_message | Contains a status message (optional). |
sign | Specifies whether the created SAML message should be signed. |
signing_cert_bytes | Returns raw certificate data in DER format. |
signing_cert_handle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
signing_chain_count | The number of records in the SigningChain arrays. |
signing_chain_bytes | Returns raw certificate data in DER format. |
signing_chain_handle | Allows to get or set a 'handle', a unique identifier of the underlying property object. |
subject_confirmation_count | The number of records in the SubjectConfirmation arrays. |
subject_confirmation_data_address | Contains the address enabled for presenting assertions. |
subject_confirmation_data_in_response_to | The ID of the SAML message in response to which the assertion is issued. |
subject_confirmation_data_not_before | Time moment before which the subject cannot be confirmed. |
subject_confirmation_data_not_on_or_after | Limits the time until which the subject can be confirmed. |
subject_confirmation_data_recipient | The URI of the entity or the location of the resource to which the assertion should be presented. |
subject_confirmation_data_type | The type of data contained in the confirmation. |
subject_confirmation_id | The identifier of the entity which can satisfy the subject confirmation requirements. |
subject_confirmation_method | Specifies the mechanism to be used to confirm the subject. |
subject_id | Sets the subject of the message. |
version | Specifies the protocol version of the SAML message. |
Method List
The following is the full list of the methods of the class with short descriptions. Click on the links for further details.
add_advice_assertion | Adds an advice assertion to the message. |
add_assertion | Adds assertion to a SAML message. |
clear_assertion | Resets the contents of all assertion-related properties. |
compare_i_ds | Compares two SAML IDs. |
config | Sets or retrieves a configuration setting. |
create_new | Creates a new SAML message with the given type. |
get_id_prop | Returns an element of the SAML ID. |
remove_advice | Removes an advice from an assertion. |
remove_advice_assertion | Removes an advice from an assertion. |
remove_all_assertions | Removes all assertions currently configured in the message. |
remove_assertion | Removes an assertion from the message. |
save | Saves the configured message to a string. |
save_bytes | Saves the configured message to a byte array. |
save_file | Saves the configured message to a file. |
Event List
The following is the full list of the events fired by the class with short descriptions. Click on the links for further details.
on_error | Fires to report an error condition. |
on_notification | This event notifies the application about an underlying control flow event. |
Configuration Settings
The following is a list of configuration settings for the class with short descriptions. Click on the links for further details.
IgnoreSystemTrust | Whether trusted Windows Certificate Stores should be treated as trusted. |
SigAfterIssuer | Specifies whether to insert the signature after the issuer tag in the SAML document. |
SigCanonicalizationMethod | The canonicalization method to use in the signature. |
SigDigestMethod | The digest method to use. |
SigMethod | The signature method to use. |
TolerateMinorChainIssues | Whether to tolerate minor chain issues. |
UseMicrosoftCTL | Enables or disables automatic use of Microsoft online certificate trust list. |
UseSystemCertificates | Enables or disables the use of the system certificates. |
CheckKeyIntegrityBeforeUse | Enables or disable private key integrity check before use. |
CookieCaching | Specifies whether a cookie cache should be used for HTTP(S) transports. |
Cookies | Gets or sets local cookies for the class (supported for HTTPClient, RESTClient and SOAPClient only). |
DefDeriveKeyIterations | Specifies the default key derivation algorithm iteration count. |
EnableClientSideSSLFFDHE | Enables or disables finite field DHE key exchange support in TLS clients. |
GlobalCookies | Gets or sets global cookies for all the HTTP transports. |
HttpUserAgent | Specifies the user agent name to be used by all HTTP clients. |
LogDestination | Specifies the debug log destination. |
LogDetails | Specifies the debug log details to dump. |
LogFile | Specifies the debug log filename. |
LogFilters | Specifies the debug log filters. |
LogFlushMode | Specifies the log flush mode. |
LogLevel | Specifies the debug log level. |
LogMaxEventCount | Specifies the maximum number of events to cache before further action is taken. |
LogRotationMode | Specifies the log rotation mode. |
MaxASN1BufferLength | Specifies the maximal allowed length for ASN.1 primitive tag data. |
MaxASN1TreeDepth | Specifies the maximal depth for processed ASN.1 trees. |
OCSPHashAlgorithm | Specifies the hash algorithm to be used to identify certificates in OCSP requests. |
UseOwnDNSResolver | Specifies whether the client classes should use own DNS resolver. |
UseSharedSystemStorages | Specifies whether the validation engine should use a global per-process copy of the system certificate stores. |
UseSystemOAEPAndPSS | Enforces or disables the use of system-driven RSA OAEP and PSS computations. |
UseSystemRandom | Enables or disables the use of the OS PRNG. |