Custom Recommendations - Create Or Update
Erstellt oder aktualisiert eine benutzerdefinierte Empfehlung über einen bestimmten Bereich
PUT https://management.azure.com/{scope}/providers/Microsoft.Security/customRecommendations/{customRecommendationName}?api-version=2024-08-01
URI-Parameter
Name | In | Erforderlich | Typ | Beschreibung |
---|---|---|---|---|
custom
|
path | True |
string |
Name der benutzerdefinierten Empfehlung. RegEx-Muster: |
scope
|
path | True |
string |
Der Umfang der benutzerdefinierten Empfehlung. Gültige Bereiche sind: Verwaltungsgruppe (Format: 'Providers/Microsoft.Management/managementGroups/{managementGroup}'), Abonnement (Format: 'subscriptions/{subscriptionId}') oder Security Connector (Format: 'subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Security/securityConnectors/{securityConnectorName})' |
api-version
|
query | True |
string |
Die API-Version, die für diesen Vorgang verwendet werden soll. |
Anforderungstext
Name | Typ | Beschreibung |
---|---|---|
properties.cloudProviders |
Liste aller standardmäßig unterstützten Clouds. |
|
properties.description |
string |
Die Beschreibung, die sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
properties.displayName |
string |
Der Anzeigename der von dieser Empfehlung generierten Bewertungen. |
properties.query |
string |
KQL-Abfrage, die die erforderlichen Empfehlungsergebnisse darstellt. |
properties.remediationDescription |
string |
Die Beschreibung der Korrektur, die sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
properties.securityIssue |
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
|
properties.severity |
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
Antworten
Name | Typ | Beschreibung |
---|---|---|
200 OK |
OK – Aktualisiert |
|
201 Created |
Erstellt |
|
Other Status Codes |
Fehlerantwort, die beschreibt, warum der Vorgang fehlgeschlagen ist |
Sicherheit
azure_auth
Azure Active Directory OAuth2-Fluss
Typ:
oauth2
Ablauf:
implicit
Autorisierungs-URL:
https://login.microsoftonline.com/common/oauth2/authorize
Bereiche
Name | Beschreibung |
---|---|
user_impersonation | Identitätswechsel ihres Benutzerkontos |
Beispiele
Create or update custom recommendation over management group scope |
Create or update custom recommendation over security connector scope |
Create or update custom recommendation over subscription scope |
Create or update custom recommendation over management group scope
Beispielanforderung
PUT https://management.azure.com/providers/Microsoft.Management/managementGroups/contoso/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771?api-version=2024-08-01
{
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"securityIssue": "Vulnerability"
}
}
Beispiel für eine Antwort
{
"id": "/providers/Microsoft.Management/managementGroups/contoso/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771",
"name": "33e7cc6e-a139-4723-a0e5-76993aee0771",
"type": "Microsoft.Security/customRecommendations",
"systemData": {
"createdBy": "user@contoso.com",
"createdByType": "User",
"createdAt": "2021-08-31T13:47:50.328Z",
"lastModifiedBy": "user@contoso.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2021-08-31T13:47:50.328Z"
},
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"assessmentKey": "d5f442f7-7e77-4bcf-a450-a9c1b9a94eeb",
"securityIssue": "Vulnerability"
}
}
{
"id": "/providers/Microsoft.Management/managementGroups/contoso/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771",
"name": "33e7cc6e-a139-4723-a0e5-76993aee0771",
"type": "Microsoft.Security/customRecommendations",
"systemData": {
"createdBy": "user@contoso.com",
"createdByType": "User",
"createdAt": "2021-08-31T13:47:50.328Z",
"lastModifiedBy": "user@contoso.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2021-08-31T13:47:50.328Z"
},
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"assessmentKey": "d5f442f7-7e77-4bcf-a450-a9c1b9a94eeb",
"securityIssue": "Vulnerability"
}
}
Create or update custom recommendation over security connector scope
Beispielanforderung
PUT https://management.azure.com/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771?api-version=2024-08-01
{
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"securityIssue": "Vulnerability"
}
}
Beispiel für eine Antwort
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771",
"name": "33e7cc6e-a139-4723-a0e5-76993aee0771",
"type": "Microsoft.Security/customRecommendations",
"systemData": {
"createdBy": "user@contoso.com",
"createdByType": "User",
"createdAt": "2021-08-31T13:47:50.328Z",
"lastModifiedBy": "user@contoso.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2021-08-31T13:47:50.328Z"
},
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"assessmentKey": "d5f442f7-7e77-4bcf-a450-a9c1b9a94eeb",
"securityIssue": "Vulnerability"
}
}
{
"id": "/subscriptions/20ff7fc3-e762-44dd-bd96-b71116dcdc23/resourceGroups/gcpResourceGroup/providers/Microsoft.Security/securityConnectors/gcpconnector/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771",
"name": "33e7cc6e-a139-4723-a0e5-76993aee0771",
"type": "Microsoft.Security/customRecommendations",
"systemData": {
"createdBy": "user@contoso.com",
"createdByType": "User",
"createdAt": "2021-08-31T13:47:50.328Z",
"lastModifiedBy": "user@contoso.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2021-08-31T13:47:50.328Z"
},
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"assessmentKey": "d5f442f7-7e77-4bcf-a450-a9c1b9a94eeb",
"securityIssue": "Vulnerability"
}
}
Create or update custom recommendation over subscription scope
Beispielanforderung
PUT https://management.azure.com/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771?api-version=2024-08-01
{
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"securityIssue": "Vulnerability"
}
}
Beispiel für eine Antwort
{
"id": "/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771",
"name": "33e7cc6e-a139-4723-a0e5-76993aee0771",
"type": "Microsoft.Security/customRecommendations",
"systemData": {
"createdBy": "user@contoso.com",
"createdByType": "User",
"createdAt": "2021-08-31T13:47:50.328Z",
"lastModifiedBy": "user@contoso.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2021-08-31T13:47:50.328Z"
},
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"assessmentKey": "d5f442f7-7e77-4bcf-a450-a9c1b9a94eeb",
"securityIssue": "Vulnerability"
}
}
{
"id": "/subscriptions/e5d1b86c-3051-44d5-8802-aa65d45a279b/providers/Microsoft.Security/customRecommendations/33e7cc6e-a139-4723-a0e5-76993aee0771",
"name": "33e7cc6e-a139-4723-a0e5-76993aee0771",
"type": "Microsoft.Security/customRecommendations",
"systemData": {
"createdBy": "user@contoso.com",
"createdByType": "User",
"createdAt": "2021-08-31T13:47:50.328Z",
"lastModifiedBy": "user@contoso.com",
"lastModifiedByType": "User",
"lastModifiedAt": "2021-08-31T13:47:50.328Z"
},
"properties": {
"query": "RawEntityMetadata | where Environment == 'GCP' and Identifiers.Type == 'compute.firewalls' | extend IslogConfigEnabled = tobool(Record.logConfig.enable) | extend HealthStatus = iff(IslogConfigEnabled, 'HEALTHY', 'UNHEALTHY')",
"cloudProviders": [
"AWS"
],
"severity": "Medium",
"displayName": "Password Policy",
"description": "organization passwords policy",
"remediationDescription": "Change password policy to...",
"assessmentKey": "d5f442f7-7e77-4bcf-a450-a9c1b9a94eeb",
"securityIssue": "Vulnerability"
}
}
Definitionen
Name | Beschreibung |
---|---|
created |
Der Identitätstyp, der die Ressource erstellt hat. |
Custom |
Benutzerdefinierte Empfehlung |
Error |
Der Ressourcenverwaltungsfehler zusätzliche Informationen. |
Error |
Das Fehlerdetails. |
Error |
Fehlerantwort |
Recommendation |
Liste aller standardmäßig unterstützten Clouds. |
security |
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
severity |
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
system |
Metadaten zur Erstellung und letzten Änderung der Ressource. |
createdByType
Der Identitätstyp, der die Ressource erstellt hat.
Name | Typ | Beschreibung |
---|---|---|
Application |
string |
|
Key |
string |
|
ManagedIdentity |
string |
|
User |
string |
CustomRecommendation
Benutzerdefinierte Empfehlung
Name | Typ | Beschreibung |
---|---|---|
id |
string |
Ressourcen-ID |
name |
string |
Ressourcenname |
properties.assessmentKey |
string |
Der Beim Generieren einer Bewertung für diese Empfehlung verwendete Metadatenschlüssel. |
properties.cloudProviders |
Liste aller standardmäßig unterstützten Clouds. |
|
properties.description |
string |
Die Beschreibung, die sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
properties.displayName |
string |
Der Anzeigename der von dieser Empfehlung generierten Bewertungen. |
properties.query |
string |
KQL-Abfrage, die die erforderlichen Empfehlungsergebnisse darstellt. |
properties.remediationDescription |
string |
Die Beschreibung der Korrektur, die sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
properties.securityIssue |
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
|
properties.severity |
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht. |
|
systemData |
Azure Resource Manager-Metadaten, die createdBy- und modifiedBy-Informationen enthalten. |
|
type |
string |
Ressourcentyp |
ErrorAdditionalInfo
Der Ressourcenverwaltungsfehler zusätzliche Informationen.
Name | Typ | Beschreibung |
---|---|---|
info |
object |
Die zusätzlichen Informationen. |
type |
string |
Der zusätzliche Informationstyp. |
ErrorDetail
Das Fehlerdetails.
Name | Typ | Beschreibung |
---|---|---|
additionalInfo |
Die zusätzlichen Informationen des Fehlers. |
|
code |
string |
Der Fehlercode. |
details |
Die Fehlerdetails. |
|
message |
string |
Die Fehlermeldung. |
target |
string |
Das Fehlerziel. |
ErrorResponse
Fehlerantwort
Name | Typ | Beschreibung |
---|---|---|
error |
Das Fehlerobjekt. |
RecommendationSupportedClouds
Liste aller standardmäßig unterstützten Clouds.
Name | Typ | Beschreibung |
---|---|---|
AWS |
string |
|
Azure |
string |
|
GCP |
string |
securityIssue
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht.
Name | Typ | Beschreibung |
---|---|---|
AnonymousAccess |
string |
|
BestPractices |
string |
|
ExcessivePermissions |
string |
|
NetworkExposure |
string |
|
TrafficEncryption |
string |
|
Vulnerability |
string |
severityEnum
Der Schweregrad, der sich auf die von dieser Empfehlung generierten Bewertungen bezieht.
Name | Typ | Beschreibung |
---|---|---|
High |
string |
|
Low |
string |
|
Medium |
string |
systemData
Metadaten zur Erstellung und letzten Änderung der Ressource.
Name | Typ | Beschreibung |
---|---|---|
createdAt |
string |
Der Zeitstempel der Ressourcenerstellung (UTC). |
createdBy |
string |
Die Identität, die die Ressource erstellt hat. |
createdByType |
Der Identitätstyp, der die Ressource erstellt hat. |
|
lastModifiedAt |
string |
Der Zeitstempel der letzten Änderung der Ressource (UTC) |
lastModifiedBy |
string |
Die Identität, die die Ressource zuletzt geändert hat. |
lastModifiedByType |
Der Identitätstyp, der die Ressource zuletzt geändert hat. |