Skip to content

Commit 02075d4

Browse files
Merge pull request #308035 from MicrosoftDocs/main
Auto Publish – main to live - 2025-11-08 06:00 UTC
2 parents 0424558 + a9d7a5c commit 02075d4

17 files changed

Lines changed: 1414 additions & 31 deletions

File tree

articles/application-gateway/for-containers/understanding-pricing.md

Lines changed: 7 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -32,8 +32,7 @@ Application Gateway for Containers consists of four billable items:
3232
- Association resource
3333
- Capacity units
3434

35-
> [!NOTE]
36-
> Currently, there's no additional charge to enable Web Application Firewall (WAF) on Application Gateway for Containers beyond the added capacity units required to process requests.
35+
When you enable Web Application Firewall (WAF) on your Application Gateway for Containers resource you're billed at the higher WAF rates for each meter and will incur higher capacity unit usage to run the WAF.
3736

3837
#### Application Gateway for Containers hour
3938

@@ -61,12 +60,12 @@ The parameter with the highest utilization is internally used for calculating ca
6160

6261
Estimated costs are used for the East US 2 region.
6362

64-
| Meter | Price |
65-
| ----- | ----- |
66-
| Application Gateway for Container | $0.017 per application gateway for container-hour |
67-
| Frontend | $0.01 per frontend-hour |
68-
| Association | $0.12 per association-hour |
69-
| Capacity Unit | $0.008 per capacity unit-hour |
63+
| Meter | Price | Price with WAF |
64+
| ----- | ----- | ----- |
65+
| Application Gateway for Container | $0.017 per application gateway for container-hour | $0.031 per application gateway for container WAF-hour |
66+
| Frontend | $0.01 per frontend-hour | $0.018 per frontend WAF-hour |
67+
| Association | $0.12 per association-hour | $0.216 per association WAF-hour |
68+
| Capacity Unit | $0.008 per capacity unit-hour | $0.014 per capacity unit WAF-hour |
7069

7170
For the latest pricing information according to your region, see the [pricing page](https://azure.microsoft.com/pricing/details/application-gateway/).
7271

articles/application-gateway/for-containers/web-application-firewall.md

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -135,9 +135,15 @@ spec:
135135

136136
The following functionality is not supported on an Azure Web Application Firewall policy that's associated with Application Gateway for Containers:
137137

138-
* Azure Web Application Firewall integration in Microsoft Security Copilot
139-
* JavaScript challenge actions
140-
* Core Rule Set (CRS) 3.2 and earlier rule sets
141-
142-
> [!NOTE]
143-
> The association of Application Gateway for Containers with Azure Web Application Firewall is in preview. For legal terms that apply to Azure features that are in beta, in preview, or otherwise not yet released into general availability, see [Supplemental Terms of Use for Microsoft Azure Previews](https://azure.microsoft.com/support/legal/preview-supplemental-terms/).
138+
- **Cross-region, cross-subscription policy**: Your WAF policy must be in the same subscription and region as your Application Gateway for Containers resource.
139+
- **Core Rule Set (CRS) managed rules**: An Application Gateway for Containers WAF supports only Default Rule Set (DRS) managed rule sets.
140+
- **Legacy Bot Manager Rule Set**: Bot Manager Ruleset 0.1 isn't supported, but Bot Manager Ruleset versions 1.0 and 1.1 are supported.
141+
- **JavaScript challenge actions on Bot Manager rules**: You can't set the action on a Bot Manager rule to JavaScript challenge.
142+
- **Captcha challenge actions on Bot Manager rules**: You can't set the action on a Bot Manager rule to Captcha.
143+
- **Microsoft Security Copilot**: The Security Copilot is not supported on Application Gateway for Containers WAF.
144+
- **Custom Block Response**: Setting a custom block response in your WAF policy is not supported on Application Gateway for Containers WAF.
145+
- **X-Forwarded-For Header (XFF)**: Application Gateway for Containers WAF doesn't support the XFF variable in custom rules.
146+
147+
## Pricing
148+
149+
For pricing details, see [Understanding pricing for Application Gateway for Containers](understanding-pricing.md).

articles/azure-vmware/native-auto-peering-sync.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,7 +37,7 @@ Ensures that virtual machines hosted in Azure VMware Solution can securely and c
3737
## Prerequisite
3838

3939
- Ensure the "Microsoft.BareMetal" resource provider is registered.
40-
- When updating an Automated Peering Sync setting, the user needs [Role Based Access Control Administrator](/role-based-access-control/built-in-roles/privileged.md) access on the remote virtual network.
40+
- When updating an Automated Peering Sync setting, the user needs Role Based Access Control Administrator access on the remote virtual network.
4141

4242
## Deployment steps
4343

Lines changed: 37 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
---
2+
title: Active Call Transfer
3+
titleSuffix: An Azure Communication Services how-to guide
4+
description: Use Azure Communication Services SDKs to transfer active calls between clients.
5+
author: probableprime
6+
ms.author: dmceachern
7+
ms.service: azure-communication-services
8+
ms.subservice: calling
9+
ms.topic: how-to
10+
ms.date: 10/03/2025
11+
ms.custom: template-how-to
12+
13+
#Customer intent: As a developer, I want to learn how to transfer calls between devices so that users have the option to transfer calls to their other devices while in a call.
14+
---
15+
16+
# Active Call Transfer
17+
18+
[!INCLUDE [Public Preview Notice](../../includes/public-preview-include.md)]
19+
20+
During an active call, you may want to transfer the call to device that you are signed in on. Let's learn how.
21+
22+
23+
24+
## Prerequisites
25+
26+
- An Azure account with an active subscription. [Create an account for free](https://azure.microsoft.com/free/?WT.mc_id=A261C142F).
27+
- A deployed Communication Services resource. [Create a Communication Services resource](../../quickstarts/create-communication-resource.md).
28+
- A user access token to enable the calling client. For more information, see [Create and manage access tokens](../../quickstarts/identity/access-tokens.md).
29+
- Complete the quickstart to [add voice calling to your application](../../quickstarts/voice-video-calling/getting-started-with-calling.md)
30+
31+
[!INCLUDE [Transfer active calls Client-side JavaScript](./includes/active-call-transfer/active-call-transfer.md)]
32+
33+
## Next steps
34+
- [Learn how to manage calls](./manage-calls.md)
35+
- [Learn how to manage video](./manage-video.md)
36+
- [Learn how to record calls](./record-calls.md)
37+
- [Learn how to transcribe calls](./call-transcription.md)
Lines changed: 70 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,70 @@
1+
---
2+
author: probableprime
3+
ms.service: azure-communication-services
4+
ms.topic: include
5+
ms.date: 10/03/2025
6+
ms.author: dmceachern
7+
---
8+
9+
[!INCLUDE [Install SDK](../install-sdk/install-sdk-web.md)]
10+
11+
## Active Call Management
12+
Active Call Transfer is a feature of the core `CallAgent` API. This guide talks about how you can manage and track any ongoing calls for your users and how to transfer their client to that active call.
13+
14+
**Note:** This feature is also enabled for the `TeamsCallAgent` as this feature is supported for Teams users as well.
15+
16+
This guide assumes you went through the QuickStart or that you implemented an application that is able to make and receive calls. If you didn't complete the getting starting guide, refer to our [Quickstart](../../../../quickstarts/voice-video-calling/getting-started-with-calling.md).
17+
18+
### Fetch your Active Call
19+
20+
When your user signs to the `CallAgent` there is a new method that you can use to fetch the ongoing calls `getActiveCallDetails` the response will return to you the active call, or active meeting that your users are in.
21+
22+
```js
23+
const activeCallDetails = await callAgent.getActiveCallDetails();
24+
```
25+
26+
The function `getActiveCallDetails` a way that you can manually query for this data. Once you have the active call details, you can use it to switch the client to the call that was found. This function returns `undefined` if there is no active call ongoing for your user. You can use `getActiveCallDetails` to fetch any ongoing calls when you first sign into the `CallAgent` to pick up on any calls that are already ongoing.
27+
28+
### Switch your Active Call
29+
30+
Once you have your active call data, you can switch the client over to the new call. This call switching behavior can be done with the `activeCallTransfer` function.
31+
32+
```js
33+
const activeCallDetails = await callAgent.getActiveCallDetails();
34+
const call = await callAgent.activeCallTransfer(activeCallDetails, {isTransfer: true});
35+
```
36+
37+
This function returns the call object for your applications state.
38+
39+
### Companion mode
40+
41+
When transferring the active call to your client, you can just bring the client into the call without hanging up on the device that initiated the call the user is in.
42+
43+
```js
44+
const activeCallDetails = await callAgent.getActiveCallDetails();
45+
const call = await callAgent.activeCallTransfer(activeCallDetails, {isTransfer: false}); // <-- isTransfer: false - does not remove the original client.
46+
```
47+
48+
### Subscribe to Active Call Notification events
49+
50+
There are two new events that you can subscribe to so you can receive events notifying you of your user joining a call on another client. The first event notifies the application that the user is in a call on another device. This event is also emitted when the user logs into the `CallAgent` if they are on a call already elsewhere.
51+
52+
```js
53+
callAgent.on("activeCallsUpdated", (args) => {
54+
// show UI indicating that the user is in another call on another device
55+
await callAgent.activeCallTransfer(args.activeCallDetails, {isTransfer: true});
56+
});
57+
```
58+
The second event notifies the application that the user is no longer in an active call anywhere else. This event is to be used to hide any UI indicating that they are in a call elsewhere, and any controls to manually transfer the call over.
59+
60+
```js
61+
callAgent.on("NoActiveCalls", () => {
62+
// hide UI indicating that the user is in a call elsewhere
63+
});
64+
```
65+
66+
67+
68+
69+
70+

articles/communication-services/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -499,6 +499,8 @@ items:
499499
href: how-tos/calling-sdk/dominant-speaker.md
500500
- name: Transfer calls
501501
href: how-tos/calling-sdk/transfer-calls.md
502+
- name: Active Call Transfer
503+
href: how-tos/calling-sdk/active-call-transfer.md
502504
- name: Get local capabilities
503505
href: how-tos/calling-sdk/capabilities.md
504506
- name: View PowerPoint Live
Lines changed: 171 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,171 @@
1+
---
2+
title: Reference - CIS Security Benchmarks for AlmaLinux via Machine Configuration
3+
description: Reference - CIS Security Benchmarks for AlmaLinux via Machine Configuration
4+
ms.date: 11/07/2025
5+
author: pallakatos
6+
ms.author: pallakatos
7+
ms.topic: reference
8+
ms.custom: generated
9+
---
10+
# Release notes - AlmaLinux
11+
12+
This article provides detailed information about the CIS Security Benchmarks for AlmaLinux, including supported benchmarks, mismatched rules, and configurable parameters across all supported versions.
13+
14+
## Supported benchmarks
15+
16+
|AlmaLinux Version|Benchmark Title|
17+
|---|---|
18+
|AlmaLinux 8|[CIS AlmaLinux OS 8 Benchmark 3.0.0 Level 1 + Level 2 - Server](#cis-almalinux-os-8-benchmark-300-level-1--level-2---server)|
19+
|AlmaLinux 9|[CIS AlmaLinux OS 9 Benchmark 2.0.0 Level 1 + Level 2 - Server](#cis-almalinux-os-9-benchmark-200-level-1--level-2---server)|
20+
21+
## CIS AlmaLinux OS 8 Benchmark 3.0.0 Level 1 + Level 2 - Server
22+
23+
### Mismatched rules
24+
25+
> [!NOTE]
26+
> The mismatched rules are the ones that in some circumstances the assessment might differ from CIS-CAT® Pro Assessor; usually our implementation enforces stricter criteria.
27+
28+
- Ensure only one logging system is in use
29+
30+
### Not implemented rules
31+
32+
- Ensure access to the su command is restricted
33+
34+
### Configurable parameters
35+
36+
|Rule|Parameter|Default Value|
37+
|---|---|---|
38+
|Ensure dns server services are not in use|serviceName|named.service|
39+
||expectedUnitFileState|enabled|
40+
||expectedActiveState|active|
41+
||packageName|bind|
42+
|Ensure permissions on /etc/crontab are configured|mask|0177|
43+
||owner|root|
44+
||group|root|
45+
|Ensure permissions on /etc/cron.hourly are configured|mask|0077|
46+
||owner|root|
47+
||group|root|
48+
|Ensure permissions on /etc/cron.daily are configured|mask|0077|
49+
||owner|root|
50+
||group|root|
51+
||packageName|cron|
52+
||alternativePackageName|cronie|
53+
|Ensure permissions on /etc/cron.weekly are configured|mask|0077|
54+
||owner|root|
55+
||group|root|
56+
|Ensure permissions on /etc/cron.monthly are configured|mask|0077|
57+
||owner|root|
58+
||group|root|
59+
||alternativePackageName|cronie|
60+
|Ensure permissions on /etc/cron.d are configured|mask|0077|
61+
||owner|root|
62+
||group|root|
63+
|Ensure permissions on /etc/ssh/sshd_config are configured|mask|0177|
64+
||owner|root|
65+
||group|root|
66+
|Ensure permissions on /etc/passwd are configured|mask|0133|
67+
||owner|root|
68+
||group|root|
69+
|Ensure permissions on /etc/passwd- are configured|mask|0133|
70+
||owner|root|
71+
||group|root|
72+
|Ensure permissions on /etc/group are configured|mask|0133|
73+
||owner|root|
74+
||group|root|
75+
|Ensure permissions on /etc/group- are configured|mask|0133|
76+
||owner|root|
77+
||group|root|
78+
|Ensure permissions on /etc/shadow are configured|mask|0137|
79+
||owner|root|
80+
||group|root\|shadow|
81+
|Ensure permissions on /etc/shadow- are configured|mask|0137|
82+
||owner|root|
83+
||group|root\|shadow|
84+
|Ensure permissions on /etc/gshadow are configured|mask|0137|
85+
||owner|root|
86+
||group|shadow\|root|
87+
|Ensure permissions on /etc/gshadow- are configured|mask|0137|
88+
||owner|root|
89+
||group|shadow\|root|
90+
|Ensure permissions on /etc/shells are configured|mask|0133|
91+
||owner|root|
92+
||group|root|
93+
|Ensure permissions on /etc/security/opasswd are configured|mask|0177|
94+
||owner|root|
95+
||group|root|
96+
97+
## CIS AlmaLinux OS 9 Benchmark 2.0.0 Level 1 + Level 2 - Server
98+
99+
### Mismatched rules
100+
101+
> [!NOTE]
102+
> The mismatched rules are the ones that in some circumstances the assessment might differ from CIS-CAT® Pro Assessor; usually our implementation enforces stricter criteria.
103+
104+
- Ensure only one logging system is in use
105+
106+
### Not implemented rules
107+
108+
- Ensure access to the su command is restricted
109+
110+
### Configurable parameters
111+
112+
|Rule|Parameter|Default Value|
113+
|---|---|---|
114+
|Ensure dns server services are not in use|serviceName|named.service|
115+
||expectedUnitFileState|enabled|
116+
||expectedActiveState|active|
117+
||packageName|bind|
118+
|Ensure permissions on /etc/crontab are configured|mask|0177|
119+
||owner|root|
120+
||group|root|
121+
|Ensure permissions on /etc/cron.hourly are configured|mask|0077|
122+
||owner|root|
123+
||group|root|
124+
|Ensure permissions on /etc/cron.daily are configured|mask|0077|
125+
||owner|root|
126+
||group|root|
127+
||packageName|cron|
128+
||alternativePackageName|cronie|
129+
|Ensure permissions on /etc/cron.weekly are configured|mask|0077|
130+
||owner|root|
131+
||group|root|
132+
|Ensure permissions on /etc/cron.monthly are configured|mask|0077|
133+
||owner|root|
134+
||group|root|
135+
||alternativePackageName|cronie|
136+
|Ensure permissions on /etc/cron.d are configured|mask|0077|
137+
||owner|root|
138+
||group|root|
139+
|Ensure permissions on /etc/ssh/sshd_config are configured|mask|0177|
140+
||owner|root|
141+
||group|root|
142+
|Ensure permissions on /etc/passwd are configured|mask|0133|
143+
||owner|root|
144+
||group|root|
145+
|Ensure permissions on /etc/passwd- are configured|mask|0133|
146+
||owner|root|
147+
||group|root|
148+
|Ensure permissions on /etc/group are configured|mask|0133|
149+
||owner|root|
150+
||group|root|
151+
|Ensure permissions on /etc/group- are configured|mask|0133|
152+
||owner|root|
153+
||group|root|
154+
|Ensure permissions on /etc/shadow are configured|mask|0137|
155+
||owner|root|
156+
||group|root\|shadow|
157+
|Ensure permissions on /etc/shadow- are configured|mask|0137|
158+
||owner|root|
159+
||group|root\|shadow|
160+
|Ensure permissions on /etc/gshadow are configured|mask|0137|
161+
||owner|root|
162+
||group|shadow\|root|
163+
|Ensure permissions on /etc/gshadow- are configured|mask|0137|
164+
||owner|root|
165+
||group|shadow\|root|
166+
|Ensure permissions on /etc/shells are configured|mask|0133|
167+
||owner|root|
168+
||group|root|
169+
|Ensure permissions on /etc/security/opasswd are configured|mask|0177|
170+
||owner|root|
171+
||group|root|

0 commit comments

Comments
 (0)