import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * This data source provides the list of Security Assessment Finding Analytics in Oracle Cloud Infrastructure Data Safe service. * * Gets a list of findings aggregated details in the specified compartment. This provides information about the overall state * of security assessment findings. You can use groupBy to get the count of findings under a certain risk level and with a certain findingKey, * and as well as get the list of the targets that match the condition. * This data is especially useful content for the statistic chart or to support analytics. * * When you perform the ListFindingAnalytics operation, if the parameter compartmentIdInSubtree is set to "true," and if the * parameter accessLevel is set to ACCESSIBLE, then the operation returns statistics from the compartments in which the requestor has INSPECT * permissions on at least one resource, directly or indirectly (in subcompartments). If the operation is performed at the * root compartment and the requestor does not have access to at least one subcompartment of the compartment specified by * compartmentId, then "Not Authorized" is returned. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testSecurityAssessmentFindingAnalytics = oci.datasafe.getSecurityAssessmentFindingAnalytics({ * compartmentId: compartmentId, * accessLevel: securityAssessmentFindingAnalyticAccessLevel, * compartmentIdInSubtree: securityAssessmentFindingAnalyticCompartmentIdInSubtree === "true", * findingKey: securityAssessmentFindingAnalyticFindingKey, * groupBy: securityAssessmentFindingAnalyticGroupBy, * isTopFinding: securityAssessmentFindingAnalyticIsTopFinding === "true", * severity: securityAssessmentFindingAnalyticSeverity, * topFindingStatus: securityAssessmentFindingAnalyticTopFindingStatus, * }); * ``` */ export declare function getSecurityAssessmentFindingAnalytics(args: GetSecurityAssessmentFindingAnalyticsArgs, opts?: pulumi.InvokeOptions): Promise; /** * A collection of arguments for invoking getSecurityAssessmentFindingAnalytics. */ export interface GetSecurityAssessmentFindingAnalyticsArgs { /** * Valid values are RESTRICTED and ACCESSIBLE. Default is RESTRICTED. Setting this to ACCESSIBLE returns only those compartments for which the user has INSPECT permissions directly or indirectly (permissions can be on a resource in a subcompartment). When set to RESTRICTED permissions are checked and no partial results are displayed. */ accessLevel?: string; /** * A filter to return only resources that match the specified compartment OCID. */ compartmentId: string; /** * Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned. Depends on the 'accessLevel' setting. */ compartmentIdInSubtree?: boolean; filters?: inputs.DataSafe.GetSecurityAssessmentFindingAnalyticsFilter[]; /** * The unique key that identifies the finding. It is a string and unique within a security assessment. */ findingKey?: string; /** * Attribute by which the finding analytics data should be grouped. */ groupBy?: string; /** * A filter to return only the findings that are marked as top findings. */ isTopFinding?: boolean; /** * The scimQuery query parameter accepts filter expressions that use the syntax described in Section 3.2.2.2 of the System for Cross-Domain Identity Management (SCIM) specification, which is available at [RFC3339](https://tools.ietf.org/html/draft-ietf-scim-api-12). In SCIM filtering expressions, text, date, and time values must be enclosed in quotation marks, with date and time values using ISO-8601 format. (Numeric and boolean values should not be quoted.) * **Example:** | scimQuery=(severity eq 'high') and (targetId eq 'target_1') scimQuery=(category eq "Users") and (targetId eq "target1") scimQuery=(reference eq 'CIS') and (targetId eq 'target_1') * Supported fields: severity reference title category targetId targetName */ scimQuery?: string; /** * A filter to return only findings of a particular risk level. */ severity?: string; /** * An optional filter to return only the top finding that match the specified status. */ topFindingStatus?: string; } /** * A collection of values returned by getSecurityAssessmentFindingAnalytics. */ export interface GetSecurityAssessmentFindingAnalyticsResult { readonly accessLevel?: string; readonly compartmentId: string; readonly compartmentIdInSubtree?: boolean; readonly filters?: outputs.DataSafe.GetSecurityAssessmentFindingAnalyticsFilter[]; /** * The list of finding_analytics_collection. */ readonly findingAnalyticsCollections: outputs.DataSafe.GetSecurityAssessmentFindingAnalyticsFindingAnalyticsCollection[]; readonly findingKey?: string; readonly groupBy?: string; /** * The provider-assigned unique ID for this managed resource. */ readonly id: string; readonly isTopFinding?: boolean; readonly scimQuery?: string; /** * The severity (risk level) of the finding. */ readonly severity?: string; /** * The status of the top finding. All findings will have "severity" to indicate the risk level, but only top findings will have "status". Possible status: Pass / Risk (Low, Medium, High)/ Evaluate / Advisory / Deferred Instead of having "Low, Medium, High" in severity, "Risk" will include these three situations in status. */ readonly topFindingStatus?: string; } /** * This data source provides the list of Security Assessment Finding Analytics in Oracle Cloud Infrastructure Data Safe service. * * Gets a list of findings aggregated details in the specified compartment. This provides information about the overall state * of security assessment findings. You can use groupBy to get the count of findings under a certain risk level and with a certain findingKey, * and as well as get the list of the targets that match the condition. * This data is especially useful content for the statistic chart or to support analytics. * * When you perform the ListFindingAnalytics operation, if the parameter compartmentIdInSubtree is set to "true," and if the * parameter accessLevel is set to ACCESSIBLE, then the operation returns statistics from the compartments in which the requestor has INSPECT * permissions on at least one resource, directly or indirectly (in subcompartments). If the operation is performed at the * root compartment and the requestor does not have access to at least one subcompartment of the compartment specified by * compartmentId, then "Not Authorized" is returned. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as oci from "@pulumi/oci"; * * const testSecurityAssessmentFindingAnalytics = oci.datasafe.getSecurityAssessmentFindingAnalytics({ * compartmentId: compartmentId, * accessLevel: securityAssessmentFindingAnalyticAccessLevel, * compartmentIdInSubtree: securityAssessmentFindingAnalyticCompartmentIdInSubtree === "true", * findingKey: securityAssessmentFindingAnalyticFindingKey, * groupBy: securityAssessmentFindingAnalyticGroupBy, * isTopFinding: securityAssessmentFindingAnalyticIsTopFinding === "true", * severity: securityAssessmentFindingAnalyticSeverity, * topFindingStatus: securityAssessmentFindingAnalyticTopFindingStatus, * }); * ``` */ export declare function getSecurityAssessmentFindingAnalyticsOutput(args: GetSecurityAssessmentFindingAnalyticsOutputArgs, opts?: pulumi.InvokeOutputOptions): pulumi.Output; /** * A collection of arguments for invoking getSecurityAssessmentFindingAnalytics. */ export interface GetSecurityAssessmentFindingAnalyticsOutputArgs { /** * Valid values are RESTRICTED and ACCESSIBLE. Default is RESTRICTED. Setting this to ACCESSIBLE returns only those compartments for which the user has INSPECT permissions directly or indirectly (permissions can be on a resource in a subcompartment). When set to RESTRICTED permissions are checked and no partial results are displayed. */ accessLevel?: pulumi.Input; /** * A filter to return only resources that match the specified compartment OCID. */ compartmentId: pulumi.Input; /** * Default is false. When set to true, the hierarchy of compartments is traversed and all compartments and subcompartments in the tenancy are returned. Depends on the 'accessLevel' setting. */ compartmentIdInSubtree?: pulumi.Input; filters?: pulumi.Input[] | undefined>; /** * The unique key that identifies the finding. It is a string and unique within a security assessment. */ findingKey?: pulumi.Input; /** * Attribute by which the finding analytics data should be grouped. */ groupBy?: pulumi.Input; /** * A filter to return only the findings that are marked as top findings. */ isTopFinding?: pulumi.Input; /** * The scimQuery query parameter accepts filter expressions that use the syntax described in Section 3.2.2.2 of the System for Cross-Domain Identity Management (SCIM) specification, which is available at [RFC3339](https://tools.ietf.org/html/draft-ietf-scim-api-12). In SCIM filtering expressions, text, date, and time values must be enclosed in quotation marks, with date and time values using ISO-8601 format. (Numeric and boolean values should not be quoted.) * **Example:** | scimQuery=(severity eq 'high') and (targetId eq 'target_1') scimQuery=(category eq "Users") and (targetId eq "target1") scimQuery=(reference eq 'CIS') and (targetId eq 'target_1') * Supported fields: severity reference title category targetId targetName */ scimQuery?: pulumi.Input; /** * A filter to return only findings of a particular risk level. */ severity?: pulumi.Input; /** * An optional filter to return only the top finding that match the specified status. */ topFindingStatus?: pulumi.Input; } //# sourceMappingURL=getSecurityAssessmentFindingAnalytics.d.ts.map