- defaultTab: nodes description: 'Update or create Azure firewall whitelist rule for IP to access the database' executionEnabled: true id: c1354a3d-c0f9-4b56-a30c-ddac083d99ec loglevel: INFO name: Azure IP whitelist nodeFilterEditable: false options: - label: IP address name: IP regex: ^((25[0-5]|(2[0-4]|1\d|[1-9]|)\d)\.?\b){4}$ required: true - description: Rule name enforced: true label: firewallRuleName name: firewallRuleName required: true values: - aaa - bbb - cccc valuesListDelimiter: ',' plugins: ExecutionLifecycle: null scheduleEnabled: true sequence: commands: - configuration: authentication: None body: client_id=xxxxxxxxxxxxxx&scope=https%3A%2F%2Fmanagement.azure.com%2F.default&client_secret=xxxxxxxxxxxxx&grant_type=client_credentials checkResponseCode: 'true' headers: | Content-Type: application/x-www-form-urlencoded" method: POST printResponse: 'true' printResponseToFile: 'false' proxySettings: 'false' remoteUrl: https://login.microsoftonline.com/xxxxxxxxxxxxxxx/oauth2/v2.0/token responseCode: '200' sslVerify: 'true' timeout: '30000' nodeStep: true type: edu.ohio.ais.rundeck.HttpWorkflowNodeStepPlugin - configuration: authentication: None body: |- { "properties": { "startIpAddress": "${option.IP}", "endIpAddress": "${option.IP}" } }' checkResponseCode: 'false' headers: |- Authorization: Bearer ${data.access_token} Content-Type: application/json method: PUT printResponse: 'true' printResponseToFile: 'false' proxySettings: 'false' remoteUrl: https://management.azure.com/subscriptions/xxxxxxxxxxxxxxx/resourceGroups/Default-SQL-WestEurope/providers/Microsoft.Sql/servers/xxxxxxxxxxx/firewallRules/${option.firewallRuleName}?api-version=2021-02-01-preview sslVerify: 'true' timeout: '30000' nodeStep: true type: edu.ohio.ais.rundeck.HttpWorkflowNodeStepPlugin keepgoing: true pluginConfig: LogFilter: - config: filter: .access_token logData: 'false' prefix: access_token type: json-mapper strategy: node-first uuid: c1354a3d-c0f9-4b56-a30c-ddac083d99ec