AssessmentMetadataInSubscriptionArgs

data class AssessmentMetadataInSubscriptionArgs(val assessmentMetadataName: Output<String>? = null, val assessmentType: Output<Either<String, AssessmentType>>? = null, val categories: Output<List<Either<String, Categories>>>? = null, val description: Output<String>? = null, val displayName: Output<String>? = null, val implementationEffort: Output<Either<String, ImplementationEffort>>? = null, val partnerData: Output<SecurityAssessmentMetadataPartnerDataArgs>? = null, val plannedDeprecationDate: Output<String>? = null, val preview: Output<Boolean>? = null, val publishDates: Output<SecurityAssessmentMetadataPropertiesResponsePublishDatesArgs>? = null, val remediationDescription: Output<String>? = null, val severity: Output<Either<String, Severity>>? = null, val tactics: Output<List<Either<String, Tactics>>>? = null, val techniques: Output<List<Either<String, Techniques>>>? = null, val threats: Output<List<Either<String, Threats>>>? = null, val userImpact: Output<Either<String, UserImpact>>? = null) : ConvertibleToJava<AssessmentMetadataInSubscriptionArgs>

Security assessment metadata response Uses Azure REST API version 2021-06-01. In version 1.x of the Azure Native provider, it used API version 2020-01-01.

Example Usage

Create security assessment metadata for subscription

using System.Collections.Generic;
using System.Linq;
using Pulumi;
using AzureNative = Pulumi.AzureNative;
return await Deployment.RunAsync(() =>
{
var assessmentMetadataInSubscription = new AzureNative.Security.AssessmentMetadataInSubscription("assessmentMetadataInSubscription", new()
{
AssessmentMetadataName = "ca039e75-a276-4175-aebc-bcd41e4b14b7",
AssessmentType = AzureNative.Security.AssessmentType.CustomerManaged,
Categories = new[]
{
AzureNative.Security.Categories.Compute,
},
Description = "Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.",
DisplayName = "Install endpoint protection solution on virtual machine scale sets",
ImplementationEffort = AzureNative.Security.ImplementationEffort.Low,
RemediationDescription = "To install an endpoint protection solution: 1. <a href=\"https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-faq#how-do-i-turn-on-antimalware-in-my-virtual-machine-scale-set\">Follow the instructions in How do I turn on antimalware in my virtual machine scale set</a>",
Severity = AzureNative.Security.Severity.Medium,
Threats = new[]
{
AzureNative.Security.Threats.DataExfiltration,
AzureNative.Security.Threats.DataSpillage,
AzureNative.Security.Threats.MaliciousInsider,
},
UserImpact = AzureNative.Security.UserImpact.Low,
});
});
package main
import (
security "github.com/pulumi/pulumi-azure-native-sdk/security/v2"
"github.com/pulumi/pulumi/sdk/v3/go/pulumi"
)
func main() {
pulumi.Run(func(ctx *pulumi.Context) error {
_, err := security.NewAssessmentMetadataInSubscription(ctx, "assessmentMetadataInSubscription", &security.AssessmentMetadataInSubscriptionArgs{
AssessmentMetadataName: pulumi.String("ca039e75-a276-4175-aebc-bcd41e4b14b7"),
AssessmentType: pulumi.String(security.AssessmentTypeCustomerManaged),
Categories: pulumi.StringArray{
pulumi.String(security.CategoriesCompute),
},
Description: pulumi.String("Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities."),
DisplayName: pulumi.String("Install endpoint protection solution on virtual machine scale sets"),
ImplementationEffort: pulumi.String(security.ImplementationEffortLow),
RemediationDescription: pulumi.String("To install an endpoint protection solution: 1. <a href=\"https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-faq#how-do-i-turn-on-antimalware-in-my-virtual-machine-scale-set\">Follow the instructions in How do I turn on antimalware in my virtual machine scale set</a>"),
Severity: pulumi.String(security.SeverityMedium),
Threats: pulumi.StringArray{
pulumi.String(security.ThreatsDataExfiltration),
pulumi.String(security.ThreatsDataSpillage),
pulumi.String(security.ThreatsMaliciousInsider),
},
UserImpact: pulumi.String(security.UserImpactLow),
})
if err != nil {
return err
}
return nil
})
}
package generated_program;
import com.pulumi.Context;
import com.pulumi.Pulumi;
import com.pulumi.core.Output;
import com.pulumi.azurenative.security.AssessmentMetadataInSubscription;
import com.pulumi.azurenative.security.AssessmentMetadataInSubscriptionArgs;
import java.util.List;
import java.util.ArrayList;
import java.util.Map;
import java.io.File;
import java.nio.file.Files;
import java.nio.file.Paths;
public class App {
public static void main(String[] args) {
Pulumi.run(App::stack);
}
public static void stack(Context ctx) {
var assessmentMetadataInSubscription = new AssessmentMetadataInSubscription("assessmentMetadataInSubscription", AssessmentMetadataInSubscriptionArgs.builder()
.assessmentMetadataName("ca039e75-a276-4175-aebc-bcd41e4b14b7")
.assessmentType("CustomerManaged")
.categories("Compute")
.description("Install an endpoint protection solution on your virtual machines scale sets, to protect them from threats and vulnerabilities.")
.displayName("Install endpoint protection solution on virtual machine scale sets")
.implementationEffort("Low")
.remediationDescription("To install an endpoint protection solution: 1. <a href=\"https://docs.microsoft.com/azure/virtual-machine-scale-sets/virtual-machine-scale-sets-faq#how-do-i-turn-on-antimalware-in-my-virtual-machine-scale-set\">Follow the instructions in How do I turn on antimalware in my virtual machine scale set</a>")
.severity("Medium")
.threats(
"dataExfiltration",
"dataSpillage",
"maliciousInsider")
.userImpact("Low")
.build());
}
}

Import

An existing resource can be imported using its type token, name, and identifier, e.g.

$ pulumi import azure-native:security:AssessmentMetadataInSubscription ca039e75-a276-4175-aebc-bcd41e4b14b7 /subscriptions/{subscriptionId}/providers/Microsoft.Security/assessmentMetadata/{assessmentMetadataName}

Constructors

Link copied to clipboard
constructor(assessmentMetadataName: Output<String>? = null, assessmentType: Output<Either<String, AssessmentType>>? = null, categories: Output<List<Either<String, Categories>>>? = null, description: Output<String>? = null, displayName: Output<String>? = null, implementationEffort: Output<Either<String, ImplementationEffort>>? = null, partnerData: Output<SecurityAssessmentMetadataPartnerDataArgs>? = null, plannedDeprecationDate: Output<String>? = null, preview: Output<Boolean>? = null, publishDates: Output<SecurityAssessmentMetadataPropertiesResponsePublishDatesArgs>? = null, remediationDescription: Output<String>? = null, severity: Output<Either<String, Severity>>? = null, tactics: Output<List<Either<String, Tactics>>>? = null, techniques: Output<List<Either<String, Techniques>>>? = null, threats: Output<List<Either<String, Threats>>>? = null, userImpact: Output<Either<String, UserImpact>>? = null)

Properties

Link copied to clipboard
val assessmentMetadataName: Output<String>? = null

The Assessment Key - Unique key for the assessment type

Link copied to clipboard
val assessmentType: Output<Either<String, AssessmentType>>? = null

BuiltIn if the assessment based on built-in Azure Policy definition, Custom if the assessment based on custom Azure Policy definition

Link copied to clipboard
val categories: Output<List<Either<String, Categories>>>? = null
Link copied to clipboard
val description: Output<String>? = null

Human readable description of the assessment

Link copied to clipboard
val displayName: Output<String>? = null

User friendly display name of the assessment

Link copied to clipboard
val implementationEffort: Output<Either<String, ImplementationEffort>>? = null

The implementation effort required to remediate this assessment

Link copied to clipboard

Describes the partner that created the assessment

Link copied to clipboard
val plannedDeprecationDate: Output<String>? = null
Link copied to clipboard
val preview: Output<Boolean>? = null

True if this assessment is in preview release status

Link copied to clipboard
val remediationDescription: Output<String>? = null

Human readable description of what you should do to mitigate this security issue

Link copied to clipboard
val severity: Output<Either<String, Severity>>? = null

The severity level of the assessment

Link copied to clipboard
val tactics: Output<List<Either<String, Tactics>>>? = null
Link copied to clipboard
val techniques: Output<List<Either<String, Techniques>>>? = null
Link copied to clipboard
val threats: Output<List<Either<String, Threats>>>? = null
Link copied to clipboard
val userImpact: Output<Either<String, UserImpact>>? = null

The user impact of the assessment

Functions

Link copied to clipboard
open override fun toJava(): AssessmentMetadataInSubscriptionArgs