Skip to content

Commit b0640cd

Browse files
committed
Merge branch 'main' into release-2504-aio
2 parents 152e347 + fc2d2c8 commit b0640cd

File tree

174 files changed

+2938
-1607
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

174 files changed

+2938
-1607
lines changed

.openpublishing.redirection.json

Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,25 @@
11
{
22
"redirections": [
3+
{
4+
"source_path": "articles/cdn/cdn-advanced-http-reports.md",
5+
"redirect_url": "/previous-versions/azure/cdn/cdn-advanced-http-reports",
6+
"redirect_document_id": false
7+
},
8+
{
9+
"source_path": "articles/cdn/cdn-preload-endpoint.md",
10+
"redirect_url": "/previous-versions/azure/cdn/cdn-preload-endpoint",
11+
"redirect_document_id": false
12+
},
13+
{
14+
"source_path": "articles/cdn/cdn-real-time-stats.md",
15+
"redirect_url": "/previous-versions/azure/cdn/cdn-real-time-stats",
16+
"redirect_document_id": false
17+
},
18+
{
19+
"source_path": "articles/cdn/cdn-token-auth.md",
20+
"redirect_url": "/previous-versions/azure/cdn/cdn-token-auth",
21+
"redirect_document_id": false
22+
},
323
{
424
"source_path": "articles/cdn/edgio-retirement-faq.md",
525
"redirect_url": "/previous-versions/azure/cdn/edgio-retirement-faq",

articles/api-center/frequently-asked-questions.yml

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -59,5 +59,6 @@ additionalContent: |
5959
## Related content
6060
6161
* [Azure API Center overview](overview.md)
62-
* [Build APIs | Microsoft Developer](https://developer.microsoft.com/build-apis
62+
* [Build APIs | Microsoft Developer](https://developer.microsoft.com/build-apis)
63+
* [API Center flash workshop](https://azure-samples.github.io/API-Center-Workshop/)
6364

articles/api-management/api-management-error-handling-policies.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -113,13 +113,13 @@ The following errors are predefined for error conditions that can occur during p
113113
| ip-filter | Caller IP is in blocked list | CallerIpBlocked | Caller IP address is blocked. Access denied. |
114114
| check-header | Required header not presented or value is missing | HeaderNotFound | Header {header-name} was not found in the request. Access denied. |
115115
| check-header | Required header not presented or value is missing | HeaderValueNotAllowed | Header {header-name} value of {header-value} is not allowed. Access denied. |
116-
| validate-jwt | Jwt token is missing in request | TokenNotPresent | JWT not present. |
116+
| validate-jwt | JWT is missing in request | TokenNotPresent | JWT not present. |
117117
| validate-jwt | Signature validation failed | TokenSignatureInvalid | <message from jwt library\>. Access denied. |
118118
| validate-jwt | Invalid audience | TokenAudienceNotAllowed | <message from jwt library\>. Access denied. |
119119
| validate-jwt | Invalid issuer | TokenIssuerNotAllowed | <message from jwt library\>. Access denied. |
120120
| validate-jwt | Token expired | TokenExpired | <message from jwt library\>. Access denied. |
121121
| validate-jwt | Signature key was not resolved by ID | TokenSignatureKeyNotFound | <message from jwt library\>. Access denied. |
122-
| validate-jwt | Required claims are missing from token | TokenClaimNotFound | JWT token is missing the following claims: <c1\>, <c2\>, … Access denied. |
122+
| validate-jwt | Required claims are missing from token | TokenClaimNotFound | JWT is missing the following claims: <c1\>, <c2\>, … Access denied. |
123123
| validate-jwt | Claim values mismatch | TokenClaimValueNotAllowed | Claim {claim-name} value of {claim-value} is not allowed. Access denied. |
124124
| validate-jwt | Other validation failures | JwtInvalid | <message from jwt library\> |
125125
| forward-request or send-request | HTTP response status code and headers were not received from the backend within the configured timeout | Timeout | multiple |

articles/api-management/api-management-key-concepts-experiment.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -58,7 +58,7 @@ All requests from client applications first reach the API gateway, which then fo
5858
The API gateway:
5959

6060
* Accepts API calls and routes them to configured backends
61-
* Verifies API keys, JWT tokens, certificates, and other credentials
61+
* Verifies API keys, JWTs, certificates, and other credentials
6262
* Enforces usage quotas and rate limits
6363
* Optionally transforms requests and responses as specified in [policy statements](#policies)
6464
* If configured, caches responses to improve response latency and minimize the load on backend services

articles/api-management/api-management-policy-expressions.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -230,8 +230,8 @@ The `context` variable is implicitly available in every policy [expression](api-
230230
|`BasicAuthCredentials AsBasic(input: this string)`|`input`: `string`<br /><br /> If the input parameter contains a valid HTTP Basic Authentication authorization request header value, the method returns an object of type `BasicAuthCredentials`; otherwise the method returns null.|
231231
|`bool TryParseBasic(input: this string, result: out BasicAuthCredentials)`|`input`: `string`<br /><br /> `result`: `out BasicAuthCredentials`<br /><br /> If the input parameter contains a valid HTTP Basic Authentication authorization value in the request header, the method returns `true` and the result parameter contains a value of type `BasicAuthCredentials`; otherwise the method returns `false`.|
232232
|`BasicAuthCredentials`|`Password`: `string`<br /><br /> `UserId`: `string`|
233-
|`Jwt AsJwt(input: this string)`|`input`: `string`<br /><br /> If the input parameter contains a valid JWT token value, the method returns an object of type `Jwt`; otherwise the method returns `null`.|
234-
|`bool TryParseJwt(input: this string, result: out Jwt)`|`input`: `string`<br /><br /> `result`: `out Jwt`<br /><br /> If the input parameter contains a valid JWT token value, the method returns `true` and the result parameter contains a value of type `Jwt`; otherwise the method returns `false`.|
233+
|`Jwt AsJwt(input: this string)`|`input`: `string`<br /><br /> If the input parameter contains a valid JWT value, the method returns an object of type `Jwt`; otherwise the method returns `null`.|
234+
|`bool TryParseJwt(input: this string, result: out Jwt)`|`input`: `string`<br /><br /> `result`: `out Jwt`<br /><br /> If the input parameter contains a valid JWT value, the method returns `true` and the result parameter contains a value of type `Jwt`; otherwise the method returns `false`.|
235235
|`Jwt`|`Algorithm`: `string`<br /><br /> `Audiences`: `IEnumerable<string>`<br /><br /> `Claims`: `IReadOnlyDictionary<string, string[]>`<br /><br /> `ExpirationTime`: `DateTime?`<br /><br /> `Id`: `string`<br /><br /> `Issuer`: `string`<br /><br /> `IssuedAt`: `DateTime?`<br /><br /> `NotBefore`: `DateTime?`<br /><br /> `Subject`: `string`<br /><br /> `Type`: `string`|
236236
|`string Jwt.Claims.GetValueOrDefault(claimName: string, defaultValue: string)`|`claimName`: `string`<br /><br /> `defaultValue`: `string`<br /><br /> Returns comma-separated claim values or `defaultValue` if the header isn't found.|
237237
|`byte[] Encrypt(input: this byte[], alg: string, key:byte[], iv:byte[])`|`input` - plaintext to be encrypted<br /><br />`alg` - name of a symmetric encryption algorithm<br /><br />`key` - encryption key<br /><br />`iv` - initialization vector<br /><br />Returns encrypted plaintext.|

articles/api-management/genai-gateway-capabilities.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -107,7 +107,7 @@ In API Management, enable semantic caching by using Azure Redis Enterprise or an
107107

108108
## Labs and samples
109109

110-
* [Labs for the AI gateway capabilities of Azure API Management](https://github.com/Azure-Samples/genai-gateway)
110+
* [Labs for the AI gateway capabilities of Azure API Management](https://github.com/Azure-Samples/ai-gateway)
111111
* [Azure API Management (APIM) - Azure OpenAI Sample (Node.js)](https://github.com/Azure-Samples/genai-gateway-apim)
112112
* [Python sample code for using Azure OpenAI with API Management](https://github.com/Azure-Samples/openai-apim-lb/blob/main/docs/sample-code.md)
113113

articles/azure-functions/functions-scenarios.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -284,31 +284,31 @@ public static async Task<IActionResult> Run(
284284
return new OkResult();
285285
}
286286
```
287-
287+
+ Quickstart: [Azure Functions HTTP trigger](create-first-function-azure-developer-cli.md?pivots=programming-language-csharp)
288288
+ Article: [Create serverless APIs in Visual Studio using Azure Functions and API Management integration](./openapi-apim-integrate-visual-studio.md)
289289
+ Training: [Expose multiple function apps as a consistent API by using Azure API Management](/training/modules/build-serverless-api-with-functions-api-management/)
290290
+ Sample: [Implement the geode pattern by deploying the API to geodes in distributed Azure regions.](https://github.com/mspnp/geode-pattern-accelerator)
291-
+ Article: [Azure Functions HTTP trigger](functions-bindings-http-webhook.md?pivots=programming-language-csharp)
292291
+ Sample: [Web application with a C# API and Azure SQL DB on Static Web Apps and Functions](/samples/azure-samples/todo-csharp-sql-swa-func/todo-csharp-sql-swa-func/)
293292
::: zone-end
294293

295294
::: zone pivot="programming-language-python"
296-
+ [Azure Functions HTTP trigger](functions-bindings-http-webhook.md?pivots=programming-language-python)
295+
+ Quickstart: [Azure Functions HTTP trigger](create-first-function-azure-developer-cli.md?pivots=programming-language-python)
297296
::: zone-end
298297

299298
::: zone pivot="programming-language-javascript"
300-
+ [Azure Functions HTTP trigger](functions-bindings-http-webhook.md?pivots=programming-language-javascript)
299+
+ Quickstart: [Azure Functions HTTP trigger](create-first-function-azure-developer-cli.md?pivots=programming-language-javascript)
301300
::: zone-end
302301

303302
::: zone pivot="programming-language-powershell"
304-
+ [Azure Functions HTTP trigger](functions-bindings-http-webhook.md?pivots=programming-language-powershell)
303+
+ Quickstart: [Azure Functions HTTP trigger](create-first-function-azure-developer-cli.md?pivots=programming-language-powershell)
305304
::: zone-end
305+
306306
::: zone pivot="programming-language-typescript"
307-
+ [Azure Functions HTTP trigger](functions-bindings-http-webhook.md?pivots=programming-language-typescript)
307+
+ Quickstart: [Azure Functions HTTP trigger](create-first-function-azure-developer-cli.md?pivots=programming-language-typescript)
308308
::: zone-end
309+
309310
::: zone pivot="programming-language-java"
310-
+ Training: [Develop Java serverless Functions on Azure using Maven](/training/modules/develop-azure-functions-app-with-maven-plugin/)
311-
+ Article: [Azure Functions HTTP trigger](functions-bindings-http-webhook.md?pivots=programming-language-java)
311+
+ Quickstart: [Azure Functions HTTP trigger](create-first-function-azure-developer-cli.md?pivots=programming-language-java)
312312
::: zone-end
313313

314314
## Build a serverless workflow

articles/azure-vmware/architecture-stretched-clusters.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ In this article, learn how to design a vSAN stretched cluster for an Azure VMwar
1515

1616
Azure’s global infrastructure is broken up into Regions. Each region supports the services for a given geography. Within each region, Azure builds isolated, and redundant islands of infrastructure called availability zones (AZ). An AZ acts as a boundary for resource management. The compute and other resources available to an AZ are finite and can become exhausted by customer demands. An AZ is built to be independently resilient, meaning failures in one AZ doesn't affect other AZs.
1717

18-
With Azure VMware Solution, ESXi hosts deployed in a standard vSphere cluster traditionally reside in a single Azure Availability Zone (AZ) and are protected by vSphere high availability (HA). However, it doesn't protect the workloads against an Azure AZ failure. To protect against an AZ failure, a single vSAN cluster can be enabled to span two separate availability zones, called a [vSAN stretched cluster](https://techdocs.broadcom.com/us/en/vmware-cis/vsan/vsan/8-0/vsan-planning/working-with-virtual-san-stretched-cluster/introduction-to-stretched-clusters.html#GUID-4172337E-E25F-4C6B-945E-01623D314FDA-en).
18+
With Azure VMware Solution, ESXi hosts deployed in a standard vSphere cluster traditionally reside in a single Azure Availability Zone (AZ) and are protected by vSphere high availability (HA). However, it doesn't protect the workloads against an Azure AZ failure. To protect against an AZ failure, a single vSAN cluster can be enabled to span two separate availability zones, called a [vSAN stretched cluster](https://www.vmware.com/docs/vsan-stretched-cluster-guide#GUID-4172337E-E25F-4C6B-945E-01623D314FDA-en).
1919

2020
Stretched clusters allow the configuration of vSAN Fault Domains across two AZs to notify vCenter Server that hosts reside in each Availability Zone (AZ). Each fault domain is named after the AZ it resides within to increase clarity. When you stretch a vSAN cluster across two AZs within a region, should an AZ go down, it's treated as a vSphere HA event and the virtual machine is restarted in the other AZ.
2121

0 commit comments

Comments
 (0)