Class ServerDevOpsAuditSettingsProperties

java.lang.Object
com.azure.resourcemanager.sql.fluent.models.ServerDevOpsAuditSettingsProperties

public final class ServerDevOpsAuditSettingsProperties extends Object
Properties of a server DevOps audit settings.
  • Constructor Details

    • ServerDevOpsAuditSettingsProperties

      public ServerDevOpsAuditSettingsProperties()
      Creates an instance of ServerDevOpsAuditSettingsProperties class.
  • Method Details

    • isAzureMonitorTargetEnabled

      public Boolean isAzureMonitorTargetEnabled()
      Get the isAzureMonitorTargetEnabled property: Specifies whether DevOps audit events are sent to Azure Monitor. In order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.

      When using REST API to configure DevOps audit, Diagnostic Settings with 'DevOpsOperationsAudit' diagnostic logs category on the master database should be also created.

      Diagnostic Settings URI format: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

      For more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207) or [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043).

      Returns:
      the isAzureMonitorTargetEnabled value.
    • withIsAzureMonitorTargetEnabled

      public ServerDevOpsAuditSettingsProperties withIsAzureMonitorTargetEnabled(Boolean isAzureMonitorTargetEnabled)
      Set the isAzureMonitorTargetEnabled property: Specifies whether DevOps audit events are sent to Azure Monitor. In order to send the events to Azure Monitor, specify 'State' as 'Enabled' and 'IsAzureMonitorTargetEnabled' as true.

      When using REST API to configure DevOps audit, Diagnostic Settings with 'DevOpsOperationsAudit' diagnostic logs category on the master database should be also created.

      Diagnostic Settings URI format: PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Sql/servers/{serverName}/databases/master/providers/microsoft.insights/diagnosticSettings/{settingsName}?api-version=2017-05-01-preview

      For more information, see [Diagnostic Settings REST API](https://go.microsoft.com/fwlink/?linkid=2033207) or [Diagnostic Settings PowerShell](https://go.microsoft.com/fwlink/?linkid=2033043).

      Parameters:
      isAzureMonitorTargetEnabled - the isAzureMonitorTargetEnabled value to set.
      Returns:
      the ServerDevOpsAuditSettingsProperties object itself.
    • state

      public BlobAuditingPolicyState state()
      Get the state property: Specifies the state of the audit. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.
      Returns:
      the state value.
    • withState

      Set the state property: Specifies the state of the audit. If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled are required.
      Parameters:
      state - the state value to set.
      Returns:
      the ServerDevOpsAuditSettingsProperties object itself.
    • storageEndpoint

      public String storageEndpoint()
      Get the storageEndpoint property: Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.
      Returns:
      the storageEndpoint value.
    • withStorageEndpoint

      public ServerDevOpsAuditSettingsProperties withStorageEndpoint(String storageEndpoint)
      Set the storageEndpoint property: Specifies the blob storage endpoint (e.g. https://MyAccount.blob.core.windows.net). If state is Enabled, storageEndpoint or isAzureMonitorTargetEnabled is required.
      Parameters:
      storageEndpoint - the storageEndpoint value to set.
      Returns:
      the ServerDevOpsAuditSettingsProperties object itself.
    • storageAccountAccessKey

      public String storageAccountAccessKey()
      Get the storageAccountAccessKey property: Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage. Prerequisites for using managed identity authentication: 1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD). 2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity. For more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355).
      Returns:
      the storageAccountAccessKey value.
    • withStorageAccountAccessKey

      public ServerDevOpsAuditSettingsProperties withStorageAccountAccessKey(String storageAccountAccessKey)
      Set the storageAccountAccessKey property: Specifies the identifier key of the auditing storage account. If state is Enabled and storageEndpoint is specified, not specifying the storageAccountAccessKey will use SQL server system-assigned managed identity to access the storage. Prerequisites for using managed identity authentication: 1. Assign SQL Server a system-assigned managed identity in Azure Active Directory (AAD). 2. Grant SQL Server identity access to the storage account by adding 'Storage Blob Data Contributor' RBAC role to the server identity. For more information, see [Auditing to storage using Managed Identity authentication](https://go.microsoft.com/fwlink/?linkid=2114355).
      Parameters:
      storageAccountAccessKey - the storageAccountAccessKey value to set.
      Returns:
      the ServerDevOpsAuditSettingsProperties object itself.
    • storageAccountSubscriptionId

      public UUID storageAccountSubscriptionId()
      Get the storageAccountSubscriptionId property: Specifies the blob storage subscription Id.
      Returns:
      the storageAccountSubscriptionId value.
    • withStorageAccountSubscriptionId

      public ServerDevOpsAuditSettingsProperties withStorageAccountSubscriptionId(UUID storageAccountSubscriptionId)
      Set the storageAccountSubscriptionId property: Specifies the blob storage subscription Id.
      Parameters:
      storageAccountSubscriptionId - the storageAccountSubscriptionId value to set.
      Returns:
      the ServerDevOpsAuditSettingsProperties object itself.
    • validate

      public void validate()
      Validates the instance.
      Throws:
      IllegalArgumentException - thrown if the instance is not valid.