This Policy Template scans all IP addresses in the given account and identifies any unused IP addresses. An IP address is considered unused if it has been detached for a user-specified number of days. If any are found, an incident report will show the IP addresses, and related information, and an email will be sent to the user-specified email address. If the user approves that the IP addresses should be deleted, the policy will delete the IP addresses. Optionally, the user can filter results by resource tag, subscription ID/name, or region.
The policy includes the estimated monthly savings. The estimated monthly savings is recognized if the resource is deleted.
- The
Estimated Monthly Savings
is calculated by multiplying the amortized cost of the resource for 1 day, as found within Flexera CCO, by 30.44, which is the average number of days in a month. - Since the costs of individual resources are obtained from Flexera CCO, they will take into account any Flexera adjustment rules or cloud provider discounts present in the Flexera platform.
- If the resource cannot be found in Flexera CCO, the
Estimated Monthly Savings
is 0. - The incident message detail includes the sum of each resource
Estimated Monthly Savings
asPotential Monthly Savings
. - Both
Estimated Monthly Savings
andPotential Monthly Savings
will be reported in the currency of the Flexera organization the policy is applied in.
This policy has the following input parameters required when launching the policy.
- Email Addresses - Email addresses of the recipients you wish to notify.
- Azure Endpoint - Select the API endpoint to use for Azure. Use default value of management.azure.com unless using Azure China.
- Minimum Savings Threshold - Minimum potential savings required to generate a recommendation.
- Days Unattached - The number of days an IP address needs to be detached to be considered unused. This value cannot be set above 90 due to Azure only storing 90 days of log data. If this value is set to 0, all unattached IP addresses will be considered unused.
- Allocation Type - Whether to include only Dynamic IPs in the results, only Static IPs, or both.
- Allow/Deny Subscriptions - Whether to treat Allow/Deny Subscriptions List parameter as allow or deny list. Has no effect if Allow/Deny Subscriptions List is left empty.
- Allow/Deny Subscriptions List - Filter results by subscription ID/name, either only allowing this list or denying it depending on how the above parameter is set. Leave blank to consider all the subscriptions.
- Allow/Deny Regions - Whether to treat Allow/Deny Regions List parameter as allow or deny list. Has no effect if Allow/Deny Regions List is left empty.
- Allow/Deny Regions List - Filter results by region, either only allowing this list or denying it depending on how the above parameter is set. Leave blank to consider all the regions.
- Exclusion Tags - The policy will filter resources containing the specified tags from the results. The following formats are supported:
Key
- Filter all resources with the specified tag key.Key==Value
- Filter all resources with the specified tag key:value pair.Key!=Value
- Filter all resources missing the specified tag key:value pair. This will also filter all resources missing the specified tag key.Key=~/Regex/
- Filter all resources where the value for the specified key matches the specified regex string.Key!~/Regex/
- Filter all resources where the value for the specified key does not match the specified regex string. This will also filter all resources missing the specified tag key.
- Exclusion Tags: Any / All - Whether to filter instances containing any of the specified tags or only those that contain all of them. Only applicable if more than one value is entered in the
Exclusion Tags
field. - Automatic Actions - When this value is set, this policy will automatically take the selected action(s).
Please note that the "Automatic Actions" parameter contains a list of action(s) that can be performed on the resources. When it is selected, the policy will automatically execute the corresponding action on the data that failed the checks, post incident generation. Please leave it blank for manual action. For example, if a user selects the "Delete IP Addresses" action while applying the policy, all unused IP addresses will be deleted.
The following policy actions are taken on any resources found to be out of compliance.
- Send an email report
- Delete unused IP addresses after approval
This Policy Template uses Credentials for authenticating to datasources -- in order to apply this policy you must have a Credential registered in the system that is compatible with this policy. If there are no Credentials listed when you apply the policy, please contact your Flexera Org Admin and ask them to register a Credential that is compatible with this policy. The information below should be consulted when creating the credential(s).
-
Azure Resource Manager Credential (provider=azure_rm) which has the following permissions:
Microsoft.Network/publicIPAddresses/read
Microsoft.Network/publicIPAddresses/delete
*Microsoft.Insights/eventtypes/values/read
* Only required for taking action; the policy will still function in a read-only capacity without these permissions.
-
Flexera Credential (provider=flexera) which has the following roles:
billing_center_viewer
The Provider-Specific Credentials page in the docs has detailed instructions for setting up Credentials for the most common providers.
- Azure
This policy template does not incur any cloud costs.