-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Home
Want to know about the latest news and features? Follow us on Twitter!
The Azure Naming Tool was created to help administrators define and manage their naming conventions, while providing a simple interface for users to generate compliant Azure resource names. The tool was developed using a naming pattern based on Microsoft's best practices. Once an administrator has defined the organizational components, users can use the tool to generate names for their desired Azure resources.
NEW IN VERSION 5.0.0
- Azure Tenant Name Validation - Validate generated names against your Azure tenant to prevent conflicts
- SQLite Database Support - Enhanced performance and reliability with built-in migration from file-based storage
- .NET 10 Framework - Latest .NET version with improved performance and security
- Modern Dashboard - Redesigned UI with intuitive drag-and-drop configuration
- API V2 - Versioned endpoints with bulk operations and extended capabilities
Want a deep dive into the tool?
Check out Bryan Soltis' blog here: Deep Diving into the Azure Naming Tool
Dean Cefola with Azure Academy made a great overview video. Click the image below to view the video on installing and configuring the tool as a container.
The Azure Naming Tool is a .NET 10 Blazor application with a comprehensive RESTful API. The UI provides an intuitive interface for configuring and generating Azure resource names, with support for drag-and-drop configuration management. The API provides both V1 and V2 endpoints for programmatic access. The application supports SQLite database storage for enhanced performance and reliability, while maintaining backward compatibility with file-based JSON storage. Additionally, the application includes Docker support for deployment as a stand-alone application or container.
- Modern Blazor UI with drag-and-drop configuration
- RESTful API (V1 and V2)
- SQLite database support with JSON file backup
- Azure tenant name validation
- Docker containerization support
Choosing an Installation Option
The following are important notes about the Azure Naming Tool:
-
The application is designed to run as a stand-alone solution with no required internet or Azure connection
-
Azure tenant name validation is optional and requires Azure credentials when enabled
-
The application can be run as a .NET 10 site or as a Docker container
-
The site can be hosted in any environment, including on-premises or in public/private cloud
-
The application supports both SQLite database and JSON file storage for configuration
-
SQLite is recommended for improved performance and is required for Azure tenant name validation
-
The application requires persistent storage for configuration files
-
When running as a container, a volume is required to persist data
-
The application contains a repository folder with default component configuration files
-
On deployment, configuration files are copied from the repository folder to the settings folder
-
The Admin interface allows configurations to be reset if needed
-
The API requires an API Key for all requests. A default API Key (GUID) is generated on first launch
-
The API Key can be updated in the Admin section
-
On first launch, the application prompts for the Admin password to be set

The Home Page provides an overview of the tool and the components.

The Configuration Page shows the current Name Generation configuration. This page also provides an Admin section for updating the configuration.

The Reference Page provides examples for each type of Azure resource. The example values do not include any excluded naming components. Optional components are always displayed and are identified below the example. Since unique names are only required at specific scopes, the examples provided are only generated for the scopes above the resource scope: resource group, resource group & region, region, global, subscription, and tenant.

The Generate Page provides a dropdown menu to select an Azure resource. Once a resource is selected, naming component options are provided. Read-only components, like the value for a resource type or organization, cannot be changed. Optional components, if left blank, will be null and not shown in the output. Required components do not allow a null value, and the first value in the array is set as the default.

