diff --git a/docs/images/integrations/azure-key-vault/integrations-azure-key-vault-tenant-select.png b/docs/images/integrations/azure-key-vault/integrations-azure-key-vault-tenant-select.png
new file mode 100644
index 000000000..6c63aaea1
Binary files /dev/null and b/docs/images/integrations/azure-key-vault/integrations-azure-key-vault-tenant-select.png differ
diff --git a/docs/integrations/cloud/azure-app-configuration.mdx b/docs/integrations/cloud/azure-app-configuration.mdx
index d2780a905..69ef4a97d 100644
--- a/docs/integrations/cloud/azure-app-configuration.mdx
+++ b/docs/integrations/cloud/azure-app-configuration.mdx
@@ -29,6 +29,15 @@ description: "How to sync secrets from Infisical to Azure App Configuration"

Press create integration to start syncing secrets to Azure App Configuration.
+
+
+ The Azure App Configuration integration requires the following permissions to be set on the user / service principal
+ for Infisical to sync secrets to Azure App Configuration: `Read Key-Value`, `Write Key-Value`, `Delete Key-Value`.
+
+ Any role with these permissions would work such as the **App Configuration Data Owner** role. Alternatively, you can use the
+ **App Configuration Data Reader** role for read-only access or **App Configuration Data Contributor** role for read/write access.
+
+
diff --git a/docs/integrations/cloud/azure-key-vault.mdx b/docs/integrations/cloud/azure-key-vault.mdx
index d04d90b4f..ae04fda88 100644
--- a/docs/integrations/cloud/azure-key-vault.mdx
+++ b/docs/integrations/cloud/azure-key-vault.mdx
@@ -17,6 +17,10 @@ description: "How to sync secrets from Infisical to Azure Key Vault"

Press on the Azure Key Vault tile and grant Infisical access to Azure Key Vault.
+ You can optionally authenticate against a specific tenant by providing the Azure tenant or directory ID.
+
+ 
+
Obtain the Vault URI of your key vault in the Overview tab.
diff --git a/frontend/src/pages/integrations/azure-key-vault/authorize.tsx b/frontend/src/pages/integrations/azure-key-vault/authorize.tsx
new file mode 100644
index 000000000..82b4b111a
--- /dev/null
+++ b/frontend/src/pages/integrations/azure-key-vault/authorize.tsx
@@ -0,0 +1,100 @@
+import { Controller, useForm } from "react-hook-form";
+import Head from "next/head";
+import Image from "next/image";
+import Link from "next/link";
+import { useRouter } from "next/router";
+import { faArrowUpRightFromSquare, faBookOpen } from "@fortawesome/free-solid-svg-icons";
+import { FontAwesomeIcon } from "@fortawesome/react-fontawesome";
+import { zodResolver } from "@hookform/resolvers/zod";
+import z from "zod";
+
+import { Button, Card, CardTitle, FormControl, Input } from "@app/components/v2";
+
+const schema = z.object({
+ tenantId: z.string().trim().optional()
+});
+
+type FormData = z.infer;
+
+export default function AzureKeyVaultAuthorizeIntegrationPage() {
+ const router = useRouter();
+ const { state, clientId } = router.query;
+ const { control, handleSubmit } = useForm({
+ resolver: zodResolver(schema)
+ });
+
+ const onFormSubmit = async ({ tenantId }: FormData) => {
+ const link = `https://login.microsoftonline.com/${
+ tenantId ?? "common"
+ }/oauth2/v2.0/authorize?client_id=${clientId}&response_type=code&redirect_uri=${
+ window.location.origin
+ }/integrations/azure-key-vault/oauth2/callback&response_mode=query&scope=https://vault.azure.net/.default openid offline_access&state=${state}`;
+
+ window.location.assign(link);
+ };
+
+ return (
+