Включение параметров аудита в базе данных SQL Azure через шаблон ARM - PullRequest
0 голосов
/ 04 октября 2018

Я работал над шаблоном для развертывания обнаружения инъекций SQL / XSS.Все хорошо, кроме включения настроек аудита. В документах я вижу следующее:

{
  "name": "default",
  "type": "Microsoft.Sql/servers/databases/auditingSettings",
  "apiVersion": "2017-03-01-preview",
  "properties": {
    "state": "string",
    "storageEndpoint": "string",
    "storageAccountAccessKey": "string",
    "retentionDays": "integer",
    "auditActionsAndGroups": [
      "string"
    ],
    "storageAccountSubscriptionId": "string",
    "isStorageSecondaryKeyInUse": boolean
  }
}

Мне кажется, я следовал этой структуре.Смотрите мой полный код здесь или фрагмент здесь:

  - apiVersion: 2017-03-01-preview
    type: Microsoft.Sql/servers/auditingSettings
    name: "[concat(parameters('sqlServerName'), '/auditing-default')]"
    dependsOn:
      - "[resourceId('Microsoft.Sql/servers', parameters('sqlServerName'))]"
    properties:
      state: Enabled
      storageEndpoint: "[reference(resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName')),
        '2018-03-01-preview').PrimaryEndpoints.Blob]"
      storageAccountAccessKey: "[listKeys(resourceId('Microsoft.Storage/storageAccounts',
        parameters('storageAccountName')), '2018-03-01-preview').keys[0].value]"
      retentionDays: 0
      storageAccountSubscriptionId: "[subscription().subscriptionId]"
      isStorageSecondaryKeyInUse: false'

Я вижу, что существует несоответствие между серверами / базами данных и просто / серверами для типа, но я фактически позаимствовалэтот код из быстрых запусков Azure и определенный файл здесь , где код выглядит следующим образом:

{
        "apiVersion": "2017-03-01-preview",
        "type": "Microsoft.Sql/servers/auditingSettings",
        "name": "[concat(parameters('sqlServerName'), '/', 'default')]",
        "properties": {
          "state": "Enabled",
          "storageEndpoint": "[reference(resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2018-03-01-preview').PrimaryEndpoints.Blob]",
          "storageAccountAccessKey": "[listKeys(resourceId('Microsoft.Storage/storageAccounts', parameters('storageAccountName')), '2018-03-01-preview').keys[0].value]",
          "retentionDays": 0,
          "auditActionsAndGroups": null,
          "storageAccountSubscriptionId": "[subscription().subscriptionId]",
          "isStorageSecondaryKeyInUse": false
        }
      }

Официальные документы, по-видимому, не содержат информации о добавлении AuditingSettings вуровень сервера, но здесь тип находится непосредственно под сервером, поэтому я немного растерялся.Я еще не изучал схему, но любая помощь / руководство относительно того, что здесь может происходить, будет высоко ценится!

1 Ответ

0 голосов
/ 18 декабря 2018

Недавно мы опубликовали шаблон, в котором показано, как развернуть Azure SQL Server с включенным аудитом сервера.

Полный пример здесь: https://github.com/Azure/azure-quickstart-templates/tree/master/201-sql-auditing-server-policy-to-blob-storage

...