app service
70 TopicsStrategic Solutions for Seamless Integration of Third-Party SaaS
Modern systems must be modular and interoperable by design. Integration is no longer a feature, it’s a requirement. Developers are expected to build architectures that connect easily with third-party platforms, but too often, core systems are designed in isolation. This disconnect creates friction for downstream teams and slows delivery. At Microsoft, SaaS platforms like SAP SuccessFactors and Eightfold support Talent Acquisition by handling functions such as requisition tracking, application workflows, and interview coordination. These tools help reduce costs and free up engineering focus for high-priority areas like Azure and AI. The real challenge is integrating them with internal systems such as Demand Planning, Offer Management, and Employee Central. This blog post outlines a strategy centered around two foundational components: an Integration and Orchestration Layer, and a Messaging Platform. Together, these enable real-time communication, consistent data models, and scalable integration. While Talent Acquisition is the use case here, the architectural patterns apply broadly across domains. Whether you're embedding AI pipelines, managing edge deployments, or building platform services, thoughtful integration needs to be built into the foundation, not bolted on later.Swagger Auto-Generation on MCP Server
Would you like to generate a swagger.json directly on an MCP server on-the-fly? In many use cases, using remote MCP servers is not uncommon. In particular, if you're using Azure API Management (APIM), Azure API Center (APIC) or Copilot Studio in Power Platform, integrating with remote MCP servers is inevitable.Quest 3 - I want to add a simple chat interface to my AI prototype
In this quest, you’ll give your Gen AI prototype a polished chat interface using Vite and Lit. Along the way, you’ll also manage application infrastructure with Bicep and Azure Developer CLI (azd), making your prototype more structured and ready for deployment.Video Tutorial: How to Migrate Your WordPress Site to Azure for Nonprofits
Before you migrate your WordPress site, ensure you have deployed a WordPress site on Azure. If you're unfamiliar with this process, scroll down to the reference section at the bottom of this blog. There is an article that will guide you through creating a WordPress site in Azure, complete with a helpful video. Why Azure for Nonprofits? Azure offers various benefits for nonprofits, including cost savings, scalability, and robust security features. Migrating your WordPress site to Azure can help you leverage these advantages to better serve your community. Step-by-Step Guide Access the WordPress Admin Portal: Go to your personal WordPress site and navigate to the admin portal by adding /wp-admin to your site's URL. Install the WP Migration Plugin: Select Plugins > Add New. Search for "WP Migration" and press enter. Install and activate the "All-in-One WP Migration and Backup" plugin. Export Your Website: Click on the plugin itself where it says "All-in-One WP Migration". Select Export > Export Site to File. Download the exported file. Access the WordPress Site on Azure: Navigate to the admin portal of your WordPress site on Azure by adding /wp-admin to your site's URL. Install the WP Migration Plugin on Azure: Select Plugins > Add New. Search for "WP Migration". Install and activate the plugin. Import Your Website: Click on the plugin and select Import. Choose Import from File and select the file you downloaded earlier. Handling File Size Limits If you encounter a file size limit error (WordPress has a 50 MB limit), you can either purchase the unlimited extension or manually increase the limit: Access Azure Portal: Go to your Azure portal and type in "App Services". Select your app service. Use SSH to Modify File Size Limits: Scroll down to Deployment Tools and click on SSH. Click on Go to access the backend of the app service. Create a file in the home site wwwroot directory named .user.ini. Edit the File: Use the command nano /home/site/wwwroot/.user.ini. Add the following lines to increase the upload and post max size: upload_max_filesize = 1G post_max_size = 1G Save the file by pressing Ctrl + X, then Y, and Enter. Verify and Import: Refresh your WordPress site on Azure. Import the file again, and it should bypass the previous limit. Final Steps Once the migration is complete, you may want to delete the .user.ini file you created earlier. Use the command: rm /home/site/wwwroot/.user.ini References techcommunity.microsoft.com/blog/nonprofittechies/deploying-a-wordpress-site-on-microsoft-azure-a-guide-for-non-profits-with-video/4415254?previewMessage=true Resolving Host Restrictions on File Sizes Exceeding 50 MB in WordPress on Azure for Nonprofits | Microsoft Community Hub157Views0likes0CommentsDeploying a WordPress Site on Microsoft Azure: A Guide for Non-Profits (With Video Tutorial)
This guide is particularly beneficial for non-profits, as a strong online presence is essential for sharing your mission, attracting donors, and engaging with volunteers. Azure offers an affordable, secure, and scalable solution, allowing non-profits to focus on their impact while Azure handles the infrastructure. By the end of this session, you'll understand the key steps for deployment and how Azure can support your non-profit's digital transformation. Getting Started with Azure First, ensure you have an Azure subscription or an Azure account. If you don't have one, you can sign up at portal.azure.com. Step-by-Step Deployment Process Access Azure Marketplace Go to the Azure portal and click on "Create a resource." Search for "WordPress" in the Azure Marketplace. Choose Deployment Method There are various ways to deploy WordPress, but we recommend using Azure App Service. Click on "Create" and select the standard plan. Configure Your WordPress Site Resource Group: Select an existing resource group or create a new one. This is a container for all resources related to your website. Region: Choose the region closest to you for better performance. For example, select "Central US." Site Name: Give your site a name. Select a Hosting Plan Free: Trial version. Basic: Suitable for hobby projects. Standard: Recommended for production sites. Set Up WordPress Credentials Create a username and password for your WordPress admin portal. Review and Create Fill in the required details and click "Review and create." After validation, click "Create" to deploy your site. Additional Features and Considerations Managed Identity: Securely access Azure services without storing secrets. Email with Azure Communication Services: Send bulk emails efficiently. Azure Content Delivery Network (CDN): Distribute content globally for faster load times. Azure Front Door: Optimize website access by directing traffic through the fastest routes. Azure Blob Storage: Store large files like images and videos without slowing down your site. Networking and Virtual Networks: Enhance security by isolating resources. Staging Environment: Test changes before deploying them to your live site. High Availability: Ensure your site remains accessible even if one zone goes down (available with premium plans). Tags: Categorize resources for better management and reporting. Reference Once your site is created, you can access it and start customizing. You may also want to add a custom domain to your WordPress site. For more detailed guides, check out our follow-up articles on deploying your WordPress site. Deploying Your Nonprofit's Website on Azure (Part 2) | Microsoft Community Hub Deploying Your Nonprofit's Website on Azure (Part 3) | Microsoft Community Hub Pricing Calculator | Microsoft Azure110Views0likes0CommentsUnlock the Power of Azure Database for MySQL servers
After deploying your web app, you would want to access and manage your database in Azure. If you are unsure how to deploy a WebApp in Azure, follow this article: Building a Web App and Database in Azure for Nonprofits | Microsoft Community Hub. This guide provides step-by-step instructions for nonprofits to connect to their Azure MySQL Database. Step-by-Step Instructions Log in to Azure Portal: Visit the Azure Portal: https://portal.azure.com/ Use your credentials to log in. Locate Your Database: Navigate to Resource Groups and select the group where your database is hosted. Click on your Azure SQL Database. Select Networking: In the settings, select Networking. In the image above, the MySQL database is situated within a Virtual Network (VNet). This configuration ensures the database is isolated from the internet, allowing communication solely between resources within the VNet. The most efficient method to access the database is via a virtual machine deployed within the same VNet. Additionally, ensure the virtual machine is deployed in the same region as the MySQL database. Step-by-Step Guide to Deploying a VM in Azure Sign in to Azure Portal: Visit the Azure portal and sign in with your Azure account: https://portal.azure.com Create a Virtual Machine: In the search bar, type "Virtual machines" and select it from the services. Click on "Create" and then "Azure virtual machine". Configure Instance Details: Enter a name for your VM (e.g., myVM). Choose the image (Ubuntu Server 24.04) Select the size of the VM based on your requirements. Set Up Administrator Account: Provide a username (e.g., azureuser) and a strong password. Configure Networking: Under "Inbound port rules", select the ports you want to allow. Please allow port ssh (22). Select Networking: Under Vnet, ensure that the virtual machine is still on the same Virtual network as the MySQL database. Review and Create: Click on "Review + create" to validate your settings. Once validation is complete, click "Create". Connect to Your VM: After deployment, go to the resource and select "Connect" > SSH. Connect with ssh using Azure CLI: Select configure + connect Download and install mysql-client tool to connect to the server. For this example the database is a MySQL database sudo apt-get update sudo apt-get install mysql-client Connect to the MySQL database Go back to the MySQL resource Click on reset password if you have forgotten the password. Once the password is changed, select connect and select connect from browser or locally. Copy the code that was displayed. You can see the example from the picture above. Paste the connection code into the virtual machine to establish a connection to the MySQL database. Upon successful connection, a welcome message will be displayed. You can then proceed to use MySQL commands to create and manage your tables. Conclusion By following these steps, nonprofits can securely access and manage their Azure SQL Database. In the next part, we’ll explore how to deploy your web application codes. Additional Resources Connect With Private Access in the Azure Portal - Azure Database for MySQL - Flexible Server | Microsoft Learn Networking Overview - Azure Database for MySQL - Flexible Server | Microsoft Learn90Views0likes0CommentsMake your own private ChatGPT
Introduction Creating your own private ChatGPT allows you to leverage AI capabilities while ensuring data privacy and security. This guide walks you through building a secure, customized chatbot using tools like Azure OpenAI, Cosmos DB and Azure App service. Why Build a Private ChatGPT? With the rise of AI-driven applications, organizations, people often face challenges related to data privacy, customization, and integration. Building a private ChatGPT addresses these concerns by: Maintaining Data Privacy: Keep sensitive information within your infrastructure. Customizing Responses: Tailor the chatbot’s behavior and language to suit your requirements. Ensuring Security: Leverage enterprise-grade security protocols. Avoiding Data Sharing: Prevent your data from being used to train external models. If organizations do not take these measures their data may go into future model training and can leak your sensitive data to public. Eg: Chatgpt collects personal data mentioned in their privacy policy Prerequisites Before you begin, ensure you have: Access to Azure OpenAI Service. A development environment set up with Python. Basic knowledge of FastAPI and MongoDB. An Azure account with necessary permissions. If you do not have Azure subscription, try Azure for students for FREE. Step 1: Set Up Azure OpenAI Log in to the Azure Portal and create an Azure OpenAI resource. Deploy a model, such as GPT-4o (multimodal), and note down the endpoint and API key. Note there is also an option of keyless authentication. Configure permissions to control access. Step 2: Use Chatgpt like app sample You can select any repository to be as base template for your app, in this I will be using the third option AOAIchat. It is developed by me. GitHub - mckaywrigley/chatbot-ui: AI chat for any model. Azure-Samples/azure-search-openai-demo: A sample app for the Retrieval-Augmented Generation pattern running in Azure, using Azure AI Search for retrieval and Azure OpenAI large language models to power ChatGPT-style and Q&A experiences. sourabhkv/AOAIchat: Azure OpenAI chat This architecture diagram represents a typical flow for a private ChatGPT application with the following components: App UX (User Interface): This is the front-end application (mobile, web, or desktop) where users interact with the chatbot. It sends the user's input (prompt) and displays the AI's responses. App Service: Acts as the backend application, handling user requests and coordinating with other services. Functions: Receives user inputs and prepares them for processing by the Azure OpenAI service. Streams AI responses back to the App UX. Reads from and writes to Cosmos DB to manage chat history. Azure OpenAI Service: This is the core AI service, processing the user input and generating responses using models like GPT-4o. The App Service sends the user input (along with context) to this service and receives the AI-generated responses. Cosmos DB: A NoSQL database used to store and manage chat history. Operations: Writes user messages and AI-generated responses for future reference or analysis. Reads chat history to provide context for AI responses, enabling more intelligent and contextual conversations. Data Flow: User inputs are sent from the App UX to the App Service. The App Service forwards the input (with additional context, if needed) to Azure OpenAI. Azure OpenAI generates a response, which is streamed back to the App UX via the App Service. The App Service writes user inputs and AI responses to Cosmos DB for persistence. This architecture ensures scalability, secure data handling, and the ability to provide contextual responses by integrating database and AI services. What can you do with my template? AOAIchat supports personal, enterprise chat enabled by RAG People can enable RAG mode if they want to search within their database, else it behaves like normal ChatGPT. It supports multimodality, (supports image, text input) also depends on model deployed in Azure AI foundry. Step 3: Deploy to Azure Deploy a Cosmos DB account in nearest region Deploy Azure OpenAI model (gpt-4o, gpt-4o-mini recommended) Deploy Azure App service, try using container I would recommend B1plan to your nearest region, select docker registry sourabhkv/aoaichatdb:0.1 startup command uvicorn app:app --host 0.0.0.0 --port 80 After app service starts, put all environment variables The application requires the following environment variables to be set for proper configuration: Environment Variable Description AZURE_OPENAI_ENDPOINT The endpoint for Azure OpenAI API. AZURE_OPENAI_API_KEY API key for accessing Azure OpenAI. DEPLOYMENT_NAME Azure OpenAI deployment name. API_VERSION API version for Azure OpenAI. MAX_TOKENS Maximum tokens for API responses. MONGO_DETAILS MongoDB connection string. AZURE_OPENAI_ENDPOINT=<your_azure_openai_endpoint> AZURE_OPENAI_API_KEY=<your_azure_openai_api_key> DEPLOYMENT_NAME=<your_deployment_name> API_VERSION=<your_api_version> MAX_TOKENS=<max_tokens> MONGO_DETAILS=<your_mongo_connection_string> Optional feature: implement authentication to secure access. Within app service select Authentication and select service providers. I went with Entra based authentication with single tenant. There is option of multi-tenant, personal accounts as well. Restart App service and within 2 minutes your private ChatGPT is ready. Pricing Pricing may depend on the plan you have deployed resources and region. Check Azure calculator for price estimation. My estimate for pricing I deployed all my resources in Sweden central Cosmos DB config - Cosmos DB for MongoDB (RU) serverless config with single write master, 2 GB transactional storage, 2 backup plan (FREE) ~ 0.75$ Azure OpenAI service - plan S0, model gpt-4o-mini global deployment, Input 20000 tokens, Output 10000 tokens ~ 9.00$ App service plan - OS Linux, Tier B1, instance count 1 ~13.14$ Total monthly cost = 22.89$ This price may vary in future, in region I calculated my configuration in Azure calculator Governance Azure OpenAI provides content filters to block any kind of input that violates responsible AI practices. Categories include Hate and Fairness Sexual Violence Self-harm User Prompt Attacks (direct and indirect) The content filtering system detects and takes action on specific categories of potentially harmful content in both input prompts and output completions. Azure OpenAI Service includes default safety settings applied to all models set as medium. Content filters can be modified to different level depending on use case. It supports RAG, I have provided detailed solution for it in my GitHub. Practical implementation GE Aerospace, in partnership with Microsoft and Accenture, has launched a company-wide generative AI platform, leveraging Microsoft Azure and Azure OpenAI Service. This solution aims to transform asset tracking and compliance in aviation, enabling quick access to maintenance records and reducing manual processing time from days to minutes. It supports informed decision-making by providing insights into aircraft leasing, compliance gaps, and asset health. For enterprises implementing private ChatGPT solutions, this illustrates the potential of generative AI for streamlining document-intensive processes while ensuring data security and compliance through cloud-based infrastructure like Azure. GE Aerospace Launches Company-wide Generative AI Platform for Employees | GE Aerospace News Build your own private ChatGPT style app with enterprise-ready architecture - By Microsoft Mechanics How to make private ChatGPT for FREE? It can be FREE if all of the setup is running locally on your hardware. Cosmos DB <-> MongoDB. Azure OpenAI <-> Ollama / LM studio Refer this NOTE : I have used gpt-4o, gpt-4o-mini these values are hardcoded in webpage, if you are using other models, you might have to change them in index.html. App Service <-> Local machine Register for Github models to access API for FREE. Note: GitHub models have rate limit for different models. Useful links sourabhkv/AOAIchat: Azure OpenAI chat What is RAG? Get started with Azure OpenAI API Chat with Azure OpenAI models using your own data13KViews1like1CommentHow to Purchase a Domain in Azure: A Step-by-Step Guide
At the heart of this post is Kairos IMS, an innovative Impact Management System designed to empower human-serving nonprofits and social impact organizations. Co-developed by the Urban League of Broward County and our trusted technology partner, Impactful, Kairos IMS reduces administrative burdens, enhances holistic care, and enables organizations to leverage data for increased agility and seamless service delivery. In this blog series, we’ll take a closer look at the powerful technologies that fuel Kairos IMS, from Azure services to security frameworks, offering insight into how modern infrastructure supports mission-driven impact. Click here to learn more. How to Purchase a Domain in Azure: A Step-by-Step Guide Purchasing a domain in Azure is a straightforward process that allows you to create a custom web address for your applications. Whether you're setting up a personal blog, a business website, or an app, Azure makes it easy to manage your domains. Here's a step-by-step guide to help you get started. Step 1: Prerequisites Before you begin, ensure you have the following: An Azure subscription with a paid tier (App Service domains aren't supported on free trial or credit-based subscriptions). An existing App Service app or create a new one in an Azure Public region. To learn more about creating a new App Service app, please visit: Deploying a Web App on Azure App Service | Microsoft Community Hub ⚠️ Important: You cannot proceed with purchasing a domain through the App Service experience without first creating or selecting an existing App Service app. Step 2: Navigate to Custom Domains Log in to the Azure Portal: Go to portal.azure.com and sign in with your Azure account and click on "App Services." Please note: If you do not see App Services you may need to search for it in the search bar. Select Your App Service: Navigate to the App Service app you want to associate with your domain. Custom Domains: Under "Settings", you will see the "Custom Domains" option. Click on it to manage your custom domains. Step 3: Purchase a Domain Buy App Service Domain: Click on "Buy App Service domain." Configure Domain Settings: Subscription: Choose the subscription to use for purchasing the domain. Resource Group: Select the resource group where the domain will be placed. Domain Name: Enter the domain name you want (e.g., contoso.com). If your desired domain isn't available, Azure will suggest alternatives. Contact Information: Provide accurate contact information as required by ICANN for domain registration. Ensure you have access to the email address provided. Hostname Assignment: Verify the default hostnames to map to your app, such as the root domain (e.g., contoso.com) and the 'www' subdomain (e.g., www.contoso.com). Step 4: Complete the Purchase Review and Purchase: Review your settings and click "Buy" to complete the purchase. Confirmation: You will receive a confirmation email from GoDaddy, the domain registrar used by Azure. Step 5: Configure DNS Settings DNS Management: After purchasing the domain, you can manage DNS settings directly in Azure. Navigate to the "DNS Zone" in the Azure portal to configure records such as A, CNAME, and MX. For information on how to Create an Azure DNS zone and record using the Azure portal, please visit: Quickstart: Create a public DNS zone and record - Azure portal - Azure DNS | Microsoft Learn Map Domain to App: Ensure your domain is correctly mapped to your App Service app by verifying the DNS settings. You can learn more about buying and managing an app Service domain, by visiting: Buy and configure an App Service domain - Azure App Service | Microsoft Learn Conclusion Purchasing a domain in Azure is a seamless process that integrates well with your existing Azure services. By following these steps, you can easily set up a custom domain for your applications, enhancing your online presence and making your web address more memorable.784Views0likes0CommentsTLS 1.0 and 1.1 Support on Azure Web App
I know Azure is winding up support for TLS 1.0 and 1.1 by August 2025. Does anyone can help me to access our existing IoT devices to connect to Azure Web App using this TLS 1.0 and 1.1? Our device were connecting to azure server fine until Mid March 2025. At end of March 2025 we lost access to this IoT devices which uses TLS 1.0, 1.1. Any thoughts or any one have any idea why it stopped before the deadline of August 2025? And what can be done to get back this devices online? #IoTHub #WebApp #Azure #TLS #TLS1.0 #TLS1.1 #SNI