Cria ou atualiza a avaliação de vulnerabilidade da instância gerenciada. Saiba mais sobre como definir a avaliação de vulnerabilidade do SQL com a identidade gerenciada – 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
Parâmetros de URI
| Nome |
Em |
Obrigatório |
Tipo |
Description |
|
managedInstanceName
|
path |
True
|
string
|
O nome da instância gerenciada.
|
|
resourceGroupName
|
path |
True
|
string
minLength: 1 maxLength: 90
|
O nome do grupo de recursos. O nome não diferencia maiúsculas de minúsculas.
|
|
subscriptionId
|
path |
True
|
string
(uuid)
|
A ID da assinatura de destino. O valor deve ser uma UUID.
|
|
vulnerabilityAssessmentName
|
path |
True
|
VulnerabilityAssessmentName
|
O nome da avaliação de vulnerabilidade.
|
|
api-version
|
query |
True
|
string
minLength: 1
|
A versão da API a ser usada para esta operação.
|
Corpo da solicitação
| Nome |
Obrigatório |
Tipo |
Description |
|
properties.storageContainerPath
|
True
|
string
|
Um caminho de contêiner de armazenamento de blobs para manter os resultados da verificação (por exemplo, https://myStorage.blob.core.windows.net/VaScans/).
|
|
properties.recurringScans
|
|
VulnerabilityAssessmentRecurringScansProperties
|
As configurações de verificações recorrentes
|
|
properties.storageAccountAccessKey
|
|
string
|
Especifica a chave do identificador da conta de armazenamento para resultados da verificação de avaliação de vulnerabilidade. Se 'StorageContainerSasKey' não for especificado, storageAccountAccessKey será necessário. Aplica-se somente se a conta de armazenamento não estiver por trás de uma Vnet ou um firewall
|
|
properties.storageContainerSasKey
|
|
string
|
Uma assinatura de acesso compartilhado (Chave SAS) que tem acesso de gravação ao contêiner de blob especificado no parâmetro 'storageContainerPath'. Se 'storageAccountAccessKey' não for especificado, StorageContainerSasKey será necessário. Aplica-se somente se a conta de armazenamento não estiver por trás de uma Vnet ou um firewall
|
Respostas
Segurança
azure_auth
Fluxo do OAuth2 do Azure Active Directory.
Tipo:
oauth2
Flow:
implicit
URL de Autorização:
https://login.microsoftonline.com/common/oauth2/authorize
Escopos
| Nome |
Description |
|
user_impersonation
|
representar sua conta de usuário
|
Exemplos
Create a managed instance's vulnerability assessment with all parameters
Solicitação de exemplo
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
Resposta de exemplo
{
"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
Solicitação de exemplo
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
Resposta de exemplo
{
"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
Solicitação de exemplo
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
Resposta de exemplo
{
"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
}
}
}
Definições
createdByType
Enumeração
O tipo de identidade que criou o recurso.
| Valor |
Description |
|
User
|
|
|
Application
|
|
|
ManagedIdentity
|
|
|
Key
|
|
ErrorAdditionalInfo
Objeto
As informações adicionais do erro de gerenciamento de recursos.
| Nome |
Tipo |
Description |
|
info
|
object
|
As informações adicionais.
|
|
type
|
string
|
O tipo de informação adicional.
|
ErrorDetail
Objeto
O detalhe do erro.
| Nome |
Tipo |
Description |
|
additionalInfo
|
ErrorAdditionalInfo[]
|
As informações adicionais do erro.
|
|
code
|
string
|
O código de erro.
|
|
details
|
ErrorDetail[]
|
Os detalhes do erro.
|
|
message
|
string
|
A mensagem de erro.
|
|
target
|
string
|
O destino do erro.
|
ErrorResponse
Objeto
Resposta de erro
| Nome |
Tipo |
Description |
|
error
|
ErrorDetail
|
O objeto de erro.
|
ManagedInstanceVulnerabilityAssessment
Objeto
Uma avaliação de vulnerabilidade de instância gerenciada.
| Nome |
Tipo |
Description |
|
id
|
string
(arm-id)
|
ID de recurso totalmente qualificada para o recurso. Por exemplo, "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/{resourceProviderNamespace}/{resourceType}/{resourceName}"
|
|
name
|
string
|
O nome do recurso
|
|
properties.recurringScans
|
VulnerabilityAssessmentRecurringScansProperties
|
As configurações de verificações recorrentes
|
|
properties.storageAccountAccessKey
|
string
|
Especifica a chave do identificador da conta de armazenamento para resultados da verificação de avaliação de vulnerabilidade. Se 'StorageContainerSasKey' não for especificado, storageAccountAccessKey será necessário. Aplica-se somente se a conta de armazenamento não estiver por trás de uma Vnet ou um firewall
|
|
properties.storageContainerPath
|
string
|
Um caminho de contêiner de armazenamento de blobs para manter os resultados da verificação (por exemplo, https://myStorage.blob.core.windows.net/VaScans/).
|
|
properties.storageContainerSasKey
|
string
|
Uma assinatura de acesso compartilhado (Chave SAS) que tem acesso de gravação ao contêiner de blob especificado no parâmetro 'storageContainerPath'. Se 'storageAccountAccessKey' não for especificado, StorageContainerSasKey será necessário. Aplica-se somente se a conta de armazenamento não estiver por trás de uma Vnet ou um firewall
|
|
systemData
|
systemData
|
Metadados do Azure Resource Manager contendo informações createdBy e modifiedBy.
|
|
type
|
string
|
O tipo do recurso. Por exemplo, "Microsoft. Compute/virtualMachines" ou "Microsoft. ContasArmazenamento/Armazenamento"
|
systemData
Objeto
Metadados relativos à criação e última modificação do recurso.
| Nome |
Tipo |
Description |
|
createdAt
|
string
(date-time)
|
O carimbo de data/hora da criação de recursos (UTC).
|
|
createdBy
|
string
|
A identidade que criou o recurso.
|
|
createdByType
|
createdByType
|
O tipo de identidade que criou o recurso.
|
|
lastModifiedAt
|
string
(date-time)
|
O carimbo de data/hora da última modificação do recurso (UTC)
|
|
lastModifiedBy
|
string
|
A identidade que modificou o recurso pela última vez.
|
|
lastModifiedByType
|
createdByType
|
O tipo de identidade que modificou o recurso pela última vez.
|
VulnerabilityAssessmentName
Enumeração
O nome da avaliação de vulnerabilidade.
| Valor |
Description |
|
default
|
padrão
|
VulnerabilityAssessmentRecurringScansProperties
Objeto
Propriedades de uma avaliação de vulnerabilidade de verificações recorrentes.
| Nome |
Tipo |
Valor padrão |
Description |
|
emailSubscriptionAdmins
|
boolean
|
True
|
Especifica que a notificação de verificação de agendamento será enviada aos administradores da assinatura.
|
|
emails
|
string[]
|
|
Especifica uma matriz de endereços de email para os quais a notificação de verificação é enviada.
|
|
isEnabled
|
boolean
|
|
Estado de verificações recorrentes.
|