pub struct WebAssessmentRuntimeBuilder { /* private fields */ }Expand description
Builder for one bounded exact-origin assessment.
Implementations§
Source§impl WebAssessmentRuntimeBuilder
impl WebAssessmentRuntimeBuilder
pub fn new(target: Url) -> Self
pub fn limits(self, limits: WebAssessmentLimits) -> Self
pub fn http_policy(self, policy: HttpEvidencePolicy) -> Self
pub fn cancellation_token(self, cancellation: CancellationToken) -> Self
Sourcepub fn enable_defense_enforcement(self) -> Self
pub fn enable_defense_enforcement(self) -> Self
Explicitly enables monotonic defense suppression. Default is observation-only.
Sourcepub fn enable_low_risk_differential_review(self) -> Self
pub fn enable_low_risk_differential_review(self) -> Self
Enables the closed, low-risk matched review catalog after discovery.
The default assessment remains discovery/passive only. Enabling this option cannot widen origin authority or create another request budget; every review leg is composed through the assessment’s shared broker.
Sourcepub fn enable_secret_exposure_review(self) -> Self
pub fn enable_secret_exposure_review(self) -> Self
Enables bounded, value-free inspection of already acquired anonymous ordinary GET response bodies. This option schedules no request of its own and does not widen the assessment target or action plan.
Sourcepub fn enable_tls_observation(self) -> Self
pub fn enable_tls_observation(self) -> Self
Enables passive observation of TLS already negotiated by the existing assessment transport. This schedules no request or handshake of its own.
Sourcepub fn enable_tls_negotiation_review(self) -> Self
pub fn enable_tls_negotiation_review(self) -> Self
Enables the fixed, bounded TLS 1.3/TLS 1.2 negotiation matrix.
This child connects only to the selected HTTPS host/SNI/port, sends no HTTP or application data, and shares the assessment’s parent limits.
Sourcepub fn enable_normalization_resilience(self) -> Self
pub fn enable_normalization_resilience(self) -> Self
Explicitly enables the bounded normalization-resilience child review.
This policy is separate from the stable scan-profile wire contract. It can consume only an already-committed, candidate-specific defensive transition from an enabled structural review and shares that review’s exact-origin broker, cancellation token, and runtime budget.
Sourcepub fn enable_template_evaluation_review(self) -> Self
pub fn enable_template_evaluation_review(self) -> Self
Explicitly enables two independently replayed harmless Jinja-compatible expression pairs inside the established root review.
The four legs reuse the root runtime’s bootstrap, exact-origin broker, parent budget, cancellation token, and evidence commit. They do not identify a template implementation or authorize operating-system interaction.
Sourcepub fn enable_graphql_review(self) -> Self
pub fn enable_graphql_review(self) -> Self
Explicitly enables one bounded, anonymous GraphQL surface review.
The child is separate from the stable scan-profile wire contract. It uses only scanner-owned POST bodies, the existing exact-origin broker, and the assessment’s shared request and active-verification budget.
Sourcepub fn enable_openapi_review(self) -> Self
pub fn enable_openapi_review(self) -> Self
Explicitly enables one exact-origin OpenAPI JSON document/replay review.
Sourcepub fn enable_rest_review(self) -> Self
pub fn enable_rest_review(self) -> Self
Explicitly enables one OpenAPI-constrained anonymous REST GET/replay.
Build rejects this option unless OpenAPI review is enabled for the same assessment. Catalog knowledge constrains selection but grants no independent transport authority.
Sourcepub fn with_ssrf_oast_review(
self,
policy: SsrfOastReviewPolicy,
administrator: SsrfOastAdminToken,
) -> Self
pub fn with_ssrf_oast_review( self, policy: SsrfOastReviewPolicy, administrator: SsrfOastAdminToken, ) -> Self
Enables one explicitly authorized query-only OAST correlation review.
Sourcepub fn with_xml_external_entity_review(
self,
policy: XmlExternalEntityReviewPolicy,
administrator: XmlExternalEntityAdminToken,
) -> Self
pub fn with_xml_external_entity_review( self, policy: XmlExternalEntityReviewPolicy, administrator: XmlExternalEntityAdminToken, ) -> Self
Enables one controlled XML external-entity interaction review.
The move-only administrator credential and strict policy are consumed by this assessment. The child can dispatch only the fixed three-body plan through the parent exact-origin broker and one-shot native provider.
Sourcepub fn with_supplied_session_review<C>(
self,
policy: SuppliedSessionPolicy,
input: C,
) -> Selfwhere
C: Into<SuppliedSessionRuntimeInput>,
pub fn with_supplied_session_review<C>(
self,
policy: SuppliedSessionPolicy,
input: C,
) -> Selfwhere
C: Into<SuppliedSessionRuntimeInput>,
Enables one bounded, explicitly supplied credential session child.
The non-secret policy and move-only credential are consumed by the assessment. Construction still rejects an application mismatch or unprotected non-loopback transport before any credentialed dispatch.
Sourcepub fn with_wordpress_review(self, inputs: WordPressReviewInputs) -> Self
pub fn with_wordpress_review(self, inputs: WordPressReviewInputs) -> Self
Enables transport-free WordPress interpretation over the already observed root response and validated local declarations.
Sourcepub fn with_wordpress_discovery(self) -> Self
pub fn with_wordpress_discovery(self) -> Self
Explicitly enables bounded public WordPress metadata discovery.
Build rejects this selection unless WordPress review is also enabled. Every request uses the assessment’s existing exact-origin broker, cancellation token, deadline, and global request/response accounting.
Sourcepub fn with_wordpress_page_scope(self, scope: WordPressPageScope) -> Self
pub fn with_wordpress_page_scope(self, scope: WordPressPageScope) -> Self
Extends WordPress metadata discovery across a bounded set of eligible first-hop page representations while preserving the entry-only default.
Sourcepub fn with_wordpress_supplied_session(self) -> Self
pub fn with_wordpress_supplied_session(self) -> Self
Allows committed supplied-session HTML resources to nominate WordPress metadata under the immutable entry-selected layout.
This integration remains opt-in and metadata dispatch stays anonymous.
Sourcepub fn with_recon_ct_provider(self, policy: ReconCtProviderPolicy) -> Self
pub fn with_recon_ct_provider(self, policy: ReconCtProviderPolicy) -> Self
Adds one explicit, bounded Cert Spotter provider query child.
The policy grants only the fixed provider operation. Returned names do not enter target planning, and every provider dispatch shares this assessment’s request, byte, deadline, and cancellation authority.
Sourcepub fn with_websocket_review(self, policy: WebSocketReviewPolicy) -> Self
pub fn with_websocket_review(self, policy: WebSocketReviewPolicy) -> Self
Adds one explicitly declared anonymous WebSocket exchange.
The policy remains a narrowing child of the selected application. It owns no credentials, endpoint discovery, retry, reconnect, or second assessment and is re-bound to the exact root again during build and one-shot authority minting.
Sourcepub fn with_websocket_supplied_session(self) -> Self
pub fn with_websocket_supplied_session(self) -> Self
Binds the selected WebSocket handshake to the one supplied V1 Authorization session. Build requires both policies, exactly one protected session resource, and rejects competing WordPress ownership.
Adds one explicitly selected, four-view resource authorization review.
The policy and move-only principals are consumed by this builder. The child remains part of this assessment’s exact-origin authority and cannot create a separately finalized report.
Sourcepub fn with_jwt_target_acceptance_review(
self,
policy: JwtTargetAcceptancePolicy,
runtime_input: JwtTargetAcceptanceRuntimeInput,
) -> Self
pub fn with_jwt_target_acceptance_review( self, policy: JwtTargetAcceptancePolicy, runtime_input: JwtTargetAcceptanceRuntimeInput, ) -> Self
Adds one explicitly selected, bounded valid/anonymous/invalid JWT target-acceptance review.
The policy, optional locally proven token pair, and typed local ineligibility reason are consumed by this assessment. Build rechecks exact application and protected transport before any token can reach the broker.
Adds one anonymous/authorized JSON comparison for the exact origin root.
The context is consumed during build and can neither be cloned nor serialized. Both requests share the assessment’s broker, cancellation, deadline, and global budget.