Crée ou met à jour l’évaluation des vulnérabilités de l’instance managée. En savoir plus sur la définition de l’évaluation des vulnérabilités SQL avec l’identité managée - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage
PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Sql/managedInstances/{managedInstanceName}/vulnerabilityAssessments/default?api-version=2025-01-01
Paramètres URI
| Nom |
Dans |
Obligatoire |
Type |
Description |
|
managedInstanceName
|
path |
True
|
string
|
Nom de l’instance managée.
|
|
resourceGroupName
|
path |
True
|
string
minLength: 1 maxLength: 90
|
Nom du groupe de ressources. Le nom ne respecte pas la casse.
|
|
subscriptionId
|
path |
True
|
string
(uuid)
|
ID de l’abonnement cible. La valeur doit être un UUID.
|
|
vulnerabilityAssessmentName
|
path |
True
|
VulnerabilityAssessmentName
|
Nom de l’évaluation des vulnérabilités.
|
|
api-version
|
query |
True
|
string
minLength: 1
|
Version de l’API à utiliser pour cette opération.
|
Corps de la demande
| Nom |
Obligatoire |
Type |
Description |
|
properties.storageContainerPath
|
True
|
string
|
Chemin d’accès du conteneur de stockage d’objets blob pour contenir les résultats de l’analyse (par exemple, https://myStorage.blob.core.windows.net/VaScans/).
|
|
properties.recurringScans
|
|
VulnerabilityAssessmentRecurringScansProperties
|
Paramètres d’analyse périodiques
|
|
properties.storageAccountAccessKey
|
|
string
|
Spécifie la clé d’identificateur du compte de stockage pour les résultats de l’analyse d’évaluation des vulnérabilités. Si « StorageContainerSasKey » n’est pas spécifié, storageAccountAccessKey est requis. S’applique uniquement si le compte de stockage n’est pas derrière un réseau virtuel ou un pare-feu
|
|
properties.storageContainerSasKey
|
|
string
|
Signature d’accès partagé (clé SAS) qui a un accès en écriture au conteneur d’objets blob spécifié dans le paramètre « storageContainerPath ». Si « storageAccountAccessKey » n’est pas spécifié, StorageContainerSasKey est requis. S’applique uniquement si le compte de stockage n’est pas derrière un réseau virtuel ou un pare-feu
|
Réponses
Sécurité
azure_auth
Flux OAuth2 d’Azure Active Directory.
Type:
oauth2
Flux:
implicit
URL d’autorisation:
https://login.microsoftonline.com/common/oauth2/authorize
Étendues
| Nom |
Description |
|
user_impersonation
|
emprunter l’identité de votre compte d’utilisateur
|
Exemples
Create a managed instance's vulnerability assessment with all parameters
Exemple de requête
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default?api-version=2025-01-01
{
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": true,
"emails": [
"email1@mail.com",
"email2@mail.com"
],
"isEnabled": true
},
"storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
"storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}
}
import com.azure.resourcemanager.sql.fluent.models.ManagedInstanceVulnerabilityAssessmentInner;
import com.azure.resourcemanager.sql.models.VulnerabilityAssessmentName;
import com.azure.resourcemanager.sql.models.VulnerabilityAssessmentRecurringScansProperties;
import java.util.Arrays;
/**
* Samples for ManagedInstanceVulnerabilityAssessments CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateMax.json
*/
/**
* Sample code: Create a managed instance's vulnerability assessment with all parameters.
*
* @param manager Entry point to SqlServerManager.
*/
public static void createAManagedInstanceSVulnerabilityAssessmentWithAllParameters(
com.azure.resourcemanager.sql.SqlServerManager manager) {
manager.serviceClient().getManagedInstanceVulnerabilityAssessments().createOrUpdateWithResponse(
"vulnerabilityaseessmenttest-4799", "vulnerabilityaseessmenttest-6440", VulnerabilityAssessmentName.DEFAULT,
new ManagedInstanceVulnerabilityAssessmentInner()
.withStorageContainerPath("https://myStorage.blob.core.windows.net/vulnerability-assessment/")
.withStorageContainerSasKey("fakeTokenPlaceholder").withStorageAccountAccessKey("fakeTokenPlaceholder")
.withRecurringScans(new VulnerabilityAssessmentRecurringScansProperties().withIsEnabled(true)
.withEmailSubscriptionAdmins(true).withEmails(Arrays.asList("email1@mail.com", "email2@mail.com"))),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.sql import SqlManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-sql
# USAGE
python managed_instance_vulnerability_assessment_create_max.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = SqlManagementClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.managed_instance_vulnerability_assessments.create_or_update(
resource_group_name="vulnerabilityaseessmenttest-4799",
managed_instance_name="vulnerabilityaseessmenttest-6440",
vulnerability_assessment_name="default",
parameters={
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": True,
"emails": ["email1@mail.com", "email2@mail.com"],
"isEnabled": True,
},
"storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
"storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
}
},
)
print(response)
# x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateMax.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SqlManagementClient } = require("@azure/arm-sql");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to creates or updates the managed instance's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage
*
* @summary creates or updates the managed instance's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage
* x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateMax.json
*/
async function createAManagedInstanceVulnerabilityAssessmentWithAllParameters() {
const credential = new DefaultAzureCredential();
const subscriptionId = "00000000-1111-2222-3333-444444444444";
const client = new SqlManagementClient(credential, subscriptionId);
const result = await client.managedInstanceVulnerabilityAssessments.createOrUpdate(
"vulnerabilityaseessmenttest-4799",
"vulnerabilityaseessmenttest-6440",
"default",
{
recurringScans: {
emailSubscriptionAdmins: true,
emails: ["email1@mail.com", "email2@mail.com"],
isEnabled: true,
},
storageAccountAccessKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
storageContainerPath: "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
storageContainerSasKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Sql.Models;
using Azure.ResourceManager.Sql;
// Generated from example definition: specification/sql/resource-manager/Microsoft.Sql/SQL/stable/2025-01-01/examples/ManagedInstanceVulnerabilityAssessmentCreateMax.json
// this example is just showing the usage of "ManagedInstanceVulnerabilityAssessments_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ManagedInstanceResource created on azure
// for more information of creating ManagedInstanceResource, please refer to the document of ManagedInstanceResource
string subscriptionId = "00000000-1111-2222-3333-444444444444";
string resourceGroupName = "vulnerabilityaseessmenttest-4799";
string managedInstanceName = "vulnerabilityaseessmenttest-6440";
ResourceIdentifier managedInstanceResourceId = ManagedInstanceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, managedInstanceName);
ManagedInstanceResource managedInstance = client.GetManagedInstanceResource(managedInstanceResourceId);
// get the collection of this ManagedInstanceVulnerabilityAssessmentResource
ManagedInstanceVulnerabilityAssessmentCollection collection = managedInstance.GetManagedInstanceVulnerabilityAssessments();
// invoke the operation
VulnerabilityAssessmentName vulnerabilityAssessmentName = VulnerabilityAssessmentName.Default;
ManagedInstanceVulnerabilityAssessmentData data = new ManagedInstanceVulnerabilityAssessmentData
{
StorageContainerPath = "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
StorageContainerSasKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
StorageAccountAccessKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
RecurringScans = new VulnerabilityAssessmentRecurringScansProperties
{
IsEnabled = true,
EmailSubscriptionAdmins = true,
Emails = { "email1@mail.com", "email2@mail.com" },
},
};
ArmOperation<ManagedInstanceVulnerabilityAssessmentResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, vulnerabilityAssessmentName, data);
ManagedInstanceVulnerabilityAssessmentResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ManagedInstanceVulnerabilityAssessmentData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Exemple de réponse
{
"name": "default",
"type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default",
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": true,
"emails": [
"email1@mail.com",
"email2@mail.com"
],
"isEnabled": true
}
}
}
{
"name": "default",
"type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default",
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": true,
"emails": [
"email1@mail.com",
"email2@mail.com"
],
"isEnabled": true
}
}
}
Create a managed instance's vulnerability assessment with minimal parameters, when storageAccountAccessKey is specified
Exemple de requête
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default?api-version=2025-01-01
{
"properties": {
"storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/"
}
}
import com.azure.resourcemanager.sql.fluent.models.ManagedInstanceVulnerabilityAssessmentInner;
import com.azure.resourcemanager.sql.models.VulnerabilityAssessmentName;
/**
* Samples for ManagedInstanceVulnerabilityAssessments CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json
*/
/**
* Sample code: Create a managed instance's vulnerability assessment with minimal parameters, when
* storageAccountAccessKey is specified.
*
* @param manager Entry point to SqlServerManager.
*/
public static void
createAManagedInstanceSVulnerabilityAssessmentWithMinimalParametersWhenStorageAccountAccessKeyIsSpecified(
com.azure.resourcemanager.sql.SqlServerManager manager) {
manager.serviceClient().getManagedInstanceVulnerabilityAssessments().createOrUpdateWithResponse(
"vulnerabilityaseessmenttest-4799", "vulnerabilityaseessmenttest-6440", VulnerabilityAssessmentName.DEFAULT,
new ManagedInstanceVulnerabilityAssessmentInner()
.withStorageContainerPath("https://myStorage.blob.core.windows.net/vulnerability-assessment/")
.withStorageAccountAccessKey("fakeTokenPlaceholder"),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.sql import SqlManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-sql
# USAGE
python managed_instance_vulnerability_assessment_create_storage_access_key_min.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = SqlManagementClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.managed_instance_vulnerability_assessments.create_or_update(
resource_group_name="vulnerabilityaseessmenttest-4799",
managed_instance_name="vulnerabilityaseessmenttest-6440",
vulnerability_assessment_name="default",
parameters={
"properties": {
"storageAccountAccessKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
}
},
)
print(response)
# x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SqlManagementClient } = require("@azure/arm-sql");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to creates or updates the managed instance's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage
*
* @summary creates or updates the managed instance's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage
* x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json
*/
async function createAManagedInstanceVulnerabilityAssessmentWithMinimalParametersWhenStorageAccountAccessKeyIsSpecified() {
const credential = new DefaultAzureCredential();
const subscriptionId = "00000000-1111-2222-3333-444444444444";
const client = new SqlManagementClient(credential, subscriptionId);
const result = await client.managedInstanceVulnerabilityAssessments.createOrUpdate(
"vulnerabilityaseessmenttest-4799",
"vulnerabilityaseessmenttest-6440",
"default",
{
storageAccountAccessKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
storageContainerPath: "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Sql.Models;
using Azure.ResourceManager.Sql;
// Generated from example definition: specification/sql/resource-manager/Microsoft.Sql/SQL/stable/2025-01-01/examples/ManagedInstanceVulnerabilityAssessmentCreateStorageAccessKeyMin.json
// this example is just showing the usage of "ManagedInstanceVulnerabilityAssessments_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ManagedInstanceResource created on azure
// for more information of creating ManagedInstanceResource, please refer to the document of ManagedInstanceResource
string subscriptionId = "00000000-1111-2222-3333-444444444444";
string resourceGroupName = "vulnerabilityaseessmenttest-4799";
string managedInstanceName = "vulnerabilityaseessmenttest-6440";
ResourceIdentifier managedInstanceResourceId = ManagedInstanceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, managedInstanceName);
ManagedInstanceResource managedInstance = client.GetManagedInstanceResource(managedInstanceResourceId);
// get the collection of this ManagedInstanceVulnerabilityAssessmentResource
ManagedInstanceVulnerabilityAssessmentCollection collection = managedInstance.GetManagedInstanceVulnerabilityAssessments();
// invoke the operation
VulnerabilityAssessmentName vulnerabilityAssessmentName = VulnerabilityAssessmentName.Default;
ManagedInstanceVulnerabilityAssessmentData data = new ManagedInstanceVulnerabilityAssessmentData
{
StorageContainerPath = "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
StorageAccountAccessKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
};
ArmOperation<ManagedInstanceVulnerabilityAssessmentResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, vulnerabilityAssessmentName, data);
ManagedInstanceVulnerabilityAssessmentResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ManagedInstanceVulnerabilityAssessmentData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Exemple de réponse
{
"name": "default",
"type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default",
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": false,
"emails": [],
"isEnabled": true
}
}
}
{
"name": "default",
"type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default",
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": false,
"emails": [],
"isEnabled": true
}
}
}
Create a managed instance's vulnerability assessment with minimal parameters, when storageContainerSasKey is specified
Exemple de requête
PUT https://management.azure.com/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default?api-version=2025-01-01
{
"properties": {
"storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
"storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
}
}
import com.azure.resourcemanager.sql.fluent.models.ManagedInstanceVulnerabilityAssessmentInner;
import com.azure.resourcemanager.sql.models.VulnerabilityAssessmentName;
/**
* Samples for ManagedInstanceVulnerabilityAssessments CreateOrUpdate.
*/
public final class Main {
/*
* x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json
*/
/**
* Sample code: Create a managed instance's vulnerability assessment with minimal parameters, when
* storageContainerSasKey is specified.
*
* @param manager Entry point to SqlServerManager.
*/
public static void
createAManagedInstanceSVulnerabilityAssessmentWithMinimalParametersWhenStorageContainerSasKeyIsSpecified(
com.azure.resourcemanager.sql.SqlServerManager manager) {
manager.serviceClient().getManagedInstanceVulnerabilityAssessments().createOrUpdateWithResponse(
"vulnerabilityaseessmenttest-4799", "vulnerabilityaseessmenttest-6440", VulnerabilityAssessmentName.DEFAULT,
new ManagedInstanceVulnerabilityAssessmentInner()
.withStorageContainerPath("https://myStorage.blob.core.windows.net/vulnerability-assessment/")
.withStorageContainerSasKey("fakeTokenPlaceholder"),
com.azure.core.util.Context.NONE);
}
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
from azure.identity import DefaultAzureCredential
from azure.mgmt.sql import SqlManagementClient
"""
# PREREQUISITES
pip install azure-identity
pip install azure-mgmt-sql
# USAGE
python managed_instance_vulnerability_assessment_create_container_sas_key_min.py
Before run the sample, please set the values of the client ID, tenant ID and client secret
of the AAD application as environment variables: AZURE_CLIENT_ID, AZURE_TENANT_ID,
AZURE_CLIENT_SECRET. For more info about how to get the value, please see:
https://docs.microsoft.com/azure/active-directory/develop/howto-create-service-principal-portal
"""
def main():
client = SqlManagementClient(
credential=DefaultAzureCredential(),
subscription_id="SUBSCRIPTION_ID",
)
response = client.managed_instance_vulnerability_assessments.create_or_update(
resource_group_name="vulnerabilityaseessmenttest-4799",
managed_instance_name="vulnerabilityaseessmenttest-6440",
vulnerability_assessment_name="default",
parameters={
"properties": {
"storageContainerPath": "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
"storageContainerSasKey": "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
}
},
)
print(response)
# x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json
if __name__ == "__main__":
main()
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
const { SqlManagementClient } = require("@azure/arm-sql");
const { DefaultAzureCredential } = require("@azure/identity");
/**
* This sample demonstrates how to creates or updates the managed instance's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage
*
* @summary creates or updates the managed instance's vulnerability assessment. Learn more about setting SQL vulnerability assessment with managed identity - https://docs.microsoft.com/azure/azure-sql/database/sql-database-vulnerability-assessment-storage
* x-ms-original-file: 2025-01-01/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json
*/
async function createAManagedInstanceVulnerabilityAssessmentWithMinimalParametersWhenStorageContainerSasKeyIsSpecified() {
const credential = new DefaultAzureCredential();
const subscriptionId = "00000000-1111-2222-3333-444444444444";
const client = new SqlManagementClient(credential, subscriptionId);
const result = await client.managedInstanceVulnerabilityAssessments.createOrUpdate(
"vulnerabilityaseessmenttest-4799",
"vulnerabilityaseessmenttest-6440",
"default",
{
storageContainerPath: "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
storageContainerSasKey: "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
},
);
console.log(result);
}
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
using Azure;
using Azure.ResourceManager;
using System;
using System.Threading.Tasks;
using Azure.Core;
using Azure.Identity;
using Azure.ResourceManager.Sql.Models;
using Azure.ResourceManager.Sql;
// Generated from example definition: specification/sql/resource-manager/Microsoft.Sql/SQL/stable/2025-01-01/examples/ManagedInstanceVulnerabilityAssessmentCreateContainerSasKeyMin.json
// this example is just showing the usage of "ManagedInstanceVulnerabilityAssessments_CreateOrUpdate" operation, for the dependent resources, they will have to be created separately.
// get your azure access token, for more details of how Azure SDK get your access token, please refer to https://learn.microsoft.com/en-us/dotnet/azure/sdk/authentication?tabs=command-line
TokenCredential cred = new DefaultAzureCredential();
// authenticate your client
ArmClient client = new ArmClient(cred);
// this example assumes you already have this ManagedInstanceResource created on azure
// for more information of creating ManagedInstanceResource, please refer to the document of ManagedInstanceResource
string subscriptionId = "00000000-1111-2222-3333-444444444444";
string resourceGroupName = "vulnerabilityaseessmenttest-4799";
string managedInstanceName = "vulnerabilityaseessmenttest-6440";
ResourceIdentifier managedInstanceResourceId = ManagedInstanceResource.CreateResourceIdentifier(subscriptionId, resourceGroupName, managedInstanceName);
ManagedInstanceResource managedInstance = client.GetManagedInstanceResource(managedInstanceResourceId);
// get the collection of this ManagedInstanceVulnerabilityAssessmentResource
ManagedInstanceVulnerabilityAssessmentCollection collection = managedInstance.GetManagedInstanceVulnerabilityAssessments();
// invoke the operation
VulnerabilityAssessmentName vulnerabilityAssessmentName = VulnerabilityAssessmentName.Default;
ManagedInstanceVulnerabilityAssessmentData data = new ManagedInstanceVulnerabilityAssessmentData
{
StorageContainerPath = "https://myStorage.blob.core.windows.net/vulnerability-assessment/",
StorageContainerSasKey = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
};
ArmOperation<ManagedInstanceVulnerabilityAssessmentResource> lro = await collection.CreateOrUpdateAsync(WaitUntil.Completed, vulnerabilityAssessmentName, data);
ManagedInstanceVulnerabilityAssessmentResource result = lro.Value;
// the variable result is a resource, you could call other operations on this instance as well
// but just for demo, we get its data from this resource instance
ManagedInstanceVulnerabilityAssessmentData resourceData = result.Data;
// for demo we just print out the id
Console.WriteLine($"Succeeded on id: {resourceData.Id}");
To use the Azure SDK library in your project, see this documentation. To provide feedback on this code sample, open a GitHub issue
Exemple de réponse
{
"name": "default",
"type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default",
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": false,
"emails": [],
"isEnabled": true
}
}
}
{
"name": "default",
"type": "Microsoft.Sql/managedInstances/vulnerabilityAssessments",
"id": "/subscriptions/00000000-1111-2222-3333-444444444444/resourceGroups/vulnerabilityaseessmenttest-4799/providers/Microsoft.Sql/managedInstances/vulnerabilityaseessmenttest-6440/vulnerabilityAssessments/default",
"properties": {
"recurringScans": {
"emailSubscriptionAdmins": false,
"emails": [],
"isEnabled": true
}
}
}
Définitions
createdByType
Énumération
Type d’identité qui a créé la ressource.
| Valeur |
Description |
|
User
|
|
|
Application
|
|
|
ManagedIdentity
|
|
|
Key
|
|
ErrorAdditionalInfo
Objet
Informations supplémentaires sur l’erreur de gestion des ressources.
| Nom |
Type |
Description |
|
info
|
object
|
Informations supplémentaires.
|
|
type
|
string
|
Type d’informations supplémentaire.
|
ErrorDetail
Objet
Détail de l’erreur.
| Nom |
Type |
Description |
|
additionalInfo
|
ErrorAdditionalInfo[]
|
Informations supplémentaires sur l’erreur.
|
|
code
|
string
|
Code d’erreur.
|
|
details
|
ErrorDetail[]
|
Détails de l’erreur.
|
|
message
|
string
|
Message d’erreur.
|
|
target
|
string
|
Cible d’erreur.
|
ErrorResponse
Objet
Réponse d’erreur
ManagedInstanceVulnerabilityAssessment
Objet
Évaluation des vulnérabilités d’une instance managée.
| Nom |
Type |
Description |
|
id
|
string
(arm-id)
|
ID de ressource complet pour la ressource. Par exemple, « /subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName} »
|
|
name
|
string
|
Nom de la ressource
|
|
properties.recurringScans
|
VulnerabilityAssessmentRecurringScansProperties
|
Paramètres d’analyse périodiques
|
|
properties.storageAccountAccessKey
|
string
|
Spécifie la clé d’identificateur du compte de stockage pour les résultats de l’analyse d’évaluation des vulnérabilités. Si « StorageContainerSasKey » n’est pas spécifié, storageAccountAccessKey est requis. S’applique uniquement si le compte de stockage n’est pas derrière un réseau virtuel ou un pare-feu
|
|
properties.storageContainerPath
|
string
|
Chemin d’accès du conteneur de stockage d’objets blob pour contenir les résultats de l’analyse (par exemple, https://myStorage.blob.core.windows.net/VaScans/).
|
|
properties.storageContainerSasKey
|
string
|
Signature d’accès partagé (clé SAS) qui a un accès en écriture au conteneur d’objets blob spécifié dans le paramètre « storageContainerPath ». Si « storageAccountAccessKey » n’est pas spécifié, StorageContainerSasKey est requis. S’applique uniquement si le compte de stockage n’est pas derrière un réseau virtuel ou un pare-feu
|
|
systemData
|
systemData
|
Azure Resource Manager : métadonnées contenant des informations createdBy et modifiedBy.
|
|
type
|
string
|
Type de la ressource. Par exemple : « Microsoft. Calcul/virtualMachines » ou « Microsoft. StorageAccounts"
|
systemData
Objet
Métadonnées relatives à la création et à la dernière modification de la ressource.
| Nom |
Type |
Description |
|
createdAt
|
string
(date-time)
|
Horodatage de la création de ressources (UTC).
|
|
createdBy
|
string
|
Identité qui a créé la ressource.
|
|
createdByType
|
createdByType
|
Type d’identité qui a créé la ressource.
|
|
lastModifiedAt
|
string
(date-time)
|
Horodatage de la dernière modification de ressource (UTC)
|
|
lastModifiedBy
|
string
|
Identité qui a modifié la ressource pour la dernière fois.
|
|
lastModifiedByType
|
createdByType
|
Type d’identité qui a modifié la ressource pour la dernière fois.
|
VulnerabilityAssessmentName
Énumération
Nom de l’évaluation des vulnérabilités.
| Valeur |
Description |
|
default
|
default
|
VulnerabilityAssessmentRecurringScansProperties
Objet
Propriétés d’une analyse périodique de l’évaluation des vulnérabilités.
| Nom |
Type |
Valeur par défaut |
Description |
|
emailSubscriptionAdmins
|
boolean
|
True
|
Spécifie que la notification d’analyse de planification est envoyée aux administrateurs d’abonnement.
|
|
emails
|
string[]
|
|
Spécifie un tableau d’adresses de messagerie auxquelles la notification d’analyse est envoyée.
|
|
isEnabled
|
boolean
|
|
État des analyses périodiques.
|