Skip to content

Commit 4ee8b7e

Browse files
authored
Merge pull request #262530 from MicrosoftDocs/main
Publish to live, Friday 4 AM PST, 1/5
2 parents 9a79fc5 + 07c75c4 commit 4ee8b7e

33 files changed

+231
-106
lines changed

articles/active-directory-b2c/whats-new-docs.md

Lines changed: 10 additions & 21 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
---
22
title: "What's new in Azure Active Directory business-to-customer (B2C)"
33
description: "New and updated documentation for the Azure Active Directory business-to-customer (B2C)."
4-
ms.date: 12/01/2023
4+
ms.date: 01/05/2024
55
ms.service: active-directory
66
ms.subservice: B2C
77
ms.topic: reference
@@ -15,6 +15,15 @@ manager: CelesteDG
1515

1616
Welcome to what's new in Azure Active Directory B2C documentation. This article lists new docs that have been added and those that have had significant updates in the last three months. To learn what's new with the B2C service, see [What's new in Microsoft Entra ID](../active-directory/fundamentals/whats-new.md), [Azure AD B2C developer release notes](custom-policy-developer-notes.md) and [What's new in Microsoft Entra External ID](/entra/external-id/whats-new-docs).
1717

18+
## December 2023
19+
20+
### Updated articles
21+
22+
- [Set up a resource owner password credentials flow in Azure Active Directory B2C](add-ropc-policy.md) - Updated ROPC flow limitations
23+
- [Add user attributes and customize user input in Azure Active Directory B2C](configure-user-input.md) - Updated instructional steps
24+
- [Set up sign-up and sign-in with a Google account using Azure Active Directory B2C](identity-provider-google.md) - Editorial updates
25+
- [Localization string IDs](localization-string-ids.md) - Updated the localization string IDs
26+
1827
## November 2023
1928

2029
### Updated articles
@@ -41,25 +50,5 @@ Welcome to what's new in Azure Active Directory B2C documentation. This article
4150
- [Azure AD B2C: Frequently asked questions (FAQ)](faq.yml) - Editorial updates
4251
- [Enable JavaScript and page layout versions in Azure Active Directory B2C](javascript-and-page-layout.md) - Added breaking change on script tags
4352

44-
## September 2023
45-
46-
### Updated articles
47-
48-
- [Supported Microsoft Entra ID features](supported-azure-ad-features.md) - Editorial updates
49-
- [Publish your Azure Active Directory B2C app to the Microsoft Entra app gallery](publish-app-to-azure-ad-app-gallery.md) - Editorial updates
50-
- [Secure your API used an API connector in Azure AD B2C](secure-rest-api.md) - Editorial updates
51-
- [Azure AD B2C: Frequently asked questions (FAQ)'](faq.yml) - Editorial updates
52-
- [Define an ID token hint technical profile in an Azure Active Directory B2C custom policy](id-token-hint.md) - Editorial updates
53-
- [Set up sign-in for multitenant Microsoft Entra ID using custom policies in Azure Active Directory B2C](identity-provider-azure-ad-multi-tenant.md) - Editorial updates
54-
- [Set up sign-in for a specific Microsoft Entra organization in Azure Active Directory B2C](identity-provider-azure-ad-single-tenant.md) - Editorial updates
55-
- [Localization string IDs](localization-string-ids.md) - Editorial updates
56-
- [Define a Microsoft Entra ID multifactor authentication technical profile in an Azure AD B2C custom policy](multi-factor-auth-technical-profile.md) - Editorial updates
57-
- [Define a Microsoft Entra ID SSPR technical profile in an Azure AD B2C custom policy](aad-sspr-technical-profile.md) - Editorial updates
58-
- [Define a Microsoft Entra technical profile in an Azure Active Directory B2C custom policy](active-directory-technical-profile.md) - Editorial updates
59-
- [Monitor Azure AD B2C with Azure Monitor](azure-monitor.md) - Editorial updates
60-
- [Billing model for Azure Active Directory B2C](billing.md) - Editorial updates
61-
- [Enable custom domains for Azure Active Directory B2C](custom-domain.md) - Editorial updates
62-
- [Set up a sign-up and sign-in flow with a social account by using Azure Active Directory B2C custom policy](custom-policies-series-sign-up-or-sign-in-federation.md) - Editorial updates
63-
- [Create and read a user account by using Azure Active Directory B2C custom policy](custom-policies-series-store-user.md) - Editorial updates
6453

6554

articles/app-service/configure-ssl-certificate.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -309,6 +309,12 @@ After the certificate renews inside your key vault, App Service automatically sy
309309
- [Azure CLI: Bind a custom TLS/SSL certificate to a web app](scripts/cli-configure-ssl-certificate.md)
310310
- [Azure PowerShell Bind a custom TLS/SSL certificate to a web app using PowerShell](scripts/powershell-configure-ssl-certificate.md)
311311

312+
#### Can I configure a private CA certificate on my app?
313+
314+
App Service has a list of Trusted Root Certificates which you cannot modify in the multi-tenant variant version of App Service, but you can load your own CA certificate in the Trusted Root Store in an App Service Environment (ASE), which is a single-tenant environment in App Service. (The Free, Basic, Standard, and Premium App Service Plans are all multi-tenant, and the Isolated Plans are single-tenant.)
315+
- [Private client certificate](environment/overview-certificates.md)
316+
317+
312318
## More resources
313319

314320
* [Secure a custom DNS name with a TLS/SSL binding in Azure App Service](configure-ssl-bindings.md)

articles/app-service/troubleshoot-diagnostic-logs.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -219,6 +219,8 @@ The following table shows the supported log types and descriptions:
219219
220220
## Networking considerations
221221
222+
- App Service logs aren't supported using Regional VNet integration, our recommendation is to use the Diagnostic settings feature.
223+
222224
If you secure your Azure Storage account by [only allowing selected networks](../storage/common/storage-network-security.md#change-the-default-network-access-rule), it can receive logs from App Service only if both of the following are true:
223225
224226
- The Azure Storage account is in a different Azure region from the App Service app.
Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
---
2+
title: Enable virtual hardware and VM CRUD capabilities in an SCVMM machine with Arc agent installed
3+
description: Enable virtual hardware and VM CRUD capabilities in an SCVMM machine with Arc agent installed
4+
ms.topic: how-to
5+
ms.date: 01/05/2024
6+
ms.service: azure-arc
7+
ms.subservice: azure-arc-scvmm
8+
author: Farha-Bano
9+
ms.author: v-farhabano
10+
manager: jsuri
11+
ms.custom:
12+
---
13+
14+
# Enable virtual hardware and VM CRUD capabilities in an SCVMM machine with Arc agent installed
15+
16+
In this article, you learn how to enable virtual hardware management and VM CRUD operational ability on an SCVMM VM that has Arc agents installed via the Arc-enabled Servers route.
17+
18+
>[!IMPORTANT]
19+
> This article is applicable only if you've installed Arc agents directly in SCVMM machines before onboarding to Azure Arc-enabled SCVMM by deploying Arc resource bridge.
20+
21+
## Prerequisites
22+
23+
- An Azure subscription and resource group where you have *Arc ScVmm VM Administrator* role.
24+
- Your SCVMM management server instance must be [onboarded](quickstart-connect-system-center-virtual-machine-manager-to-arc.md) to Azure Arc.
25+
26+
## Enable virtual hardware management and self-service access to SCVMM VMs with Arc agent installed
27+
28+
1. From your browser, go to [Azure portal](https://portal.azure.com/).
29+
30+
1. Navigate to the Virtual machines inventory page of your SCVMM management servers. The virtual machines that have Arc agent installed via the Arc-enabled Servers route will have **Link to SCVMM management server** status under virtual hardware management.
31+
32+
1. Select **Link to SCVMM management server** to view the pane with the list of all the machines under SCVMM management server with Arc agent installed but not linked to the SCVMM management server in Azure Arc.
33+
34+
1. Choose all the machines that need to be enabled in Azure, and select **Link** to link the machines to SCVMM management server.
35+
36+
1. After you link to SCVMM management server, the virtual hardware status will reflect as **Enabled** for all the VMs, and you can perform virtual hardware operations.
37+
38+
## Next steps
39+
40+
[Set up and manage self-service access to SCVMM resources](set-up-and-manage-self-service-access-scvmm.md).
41+

articles/azure-arc/system-center-virtual-machine-manager/toc.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -24,6 +24,8 @@
2424
items:
2525
- name: Enable SCVMM inventory resources in Azure
2626
href: enable-scvmm-inventory-resources.md
27+
- name: Enable virtual hardware and VM CRUD capabilities in an SCVMM machine with Arc agent installed
28+
href: enable-virtual-hardware-scvmm.md
2729
- name: Use VM lifecycle and self-serve capabilities
2830
items:
2931
- name: Set up and manage self-service access to SCVMM resources

articles/azure-signalr/signalr-concept-client-negotiation.md

Lines changed: 68 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -216,6 +216,74 @@ public SignalRConnectionInfo Negotiate([HttpTrigger(AuthorizationLevel.Anonymous
216216

217217
Then your clients can request the function endpoint `https://<Your Function App Name>.azurewebsites.net/api/negotiate` to get the service URL and access token. You can find a full sample on [GitHub](https://github.com/aspnet/AzureSignalR-samples/tree/main/samples/BidirectionChat).
218218

219+
### Self-exposing `/negotiate` endpoint
220+
221+
You could also expose the negotiation endpoint in your own server and return the negotiation response by yourself if you are using other languages.
222+
223+
#### Using ConnectionString
224+
225+
Below is a pseudo code in JavaScript showing how to implement the negotiation endpoint for hub `chat` and generate access token from Azure SignalR connection string.
226+
227+
```js
228+
import express from 'express';
229+
const connectionString = '<your-connection-string>';
230+
const hub = 'chat';
231+
let app = express();
232+
app.post('/chat/negotiate', (req, res) => {
233+
let endpoint = /Endpoint=(.*?);/.exec(connectionString)[1];
234+
let accessKey = /AccessKey=(.*?);/.exec(connectionString)[1];
235+
let url = `${endpoint}/client/?hub=${hub}`;
236+
let token = jwt.sign({ aud: url }, accessKey, { expiresIn: 3600 });
237+
res.json({ url: url, accessToken: token });
238+
});
239+
app.listen(8080, () => console.log('server started'));
240+
```
241+
242+
A JavaScript SignalR client then connects with URL `/chat`:
243+
244+
```js
245+
let connection = new signalR.HubConnectionBuilder().withUrl('/chat').build();
246+
connection.start();
247+
```
248+
249+
#### Using Microsoft Entra ID
250+
Azure SignalR also provides REST API `POST /api/hubs/${hub}/:generateToken?api-version=2022-11-01&userId=${userId}&minutesToExpire=${minutesToExpire}` to generate the client access token for you when you are using Microsoft Entra ID.
251+
252+
The steps are:
253+
1. Follow [Add role assignments](signalr-howto-authorize-application.md#add-role-assignments-in-the-azure-portal) to assign role `SignalR REST API Owner` or `SignalR Service Owner` to your identity so that your identity has the permission to invoke the REST API to generate the client access token.
254+
2. Use Azure Identity client library to fetch the Microsoft Entra ID token with scope `https://signalr.azure.com/.default`
255+
3. Use this token to visit the generate token REST API
256+
4. Return the client access token in the negotiation response.
257+
258+
Below is a pseudo code in JavaScript showing how to implement the negotiation endpoint for hub `chat` and get access token using Microsoft Entra ID and REST API `/generateToken`.
259+
```js
260+
import express from "express";
261+
import axios from "axios";
262+
import { DefaultAzureCredential } from "@azure/identity";
263+
264+
const endpoint = "https://<your-service>.service.signalr.net";
265+
const hub = "chat";
266+
const generateTokenUrl = `${endpoint}/api/hubs/${hub}/:generateToken?api-version=2022-11-01`;
267+
let app = express();
268+
app.get("/chat/negotiate", async (req, res) => {
269+
// use DefaultAzureCredential to get the Entra ID token to call the Azure SignalR REST API
270+
const credential = new DefaultAzureCredential();
271+
const entraIdToken = await credential.getToken("https://signalr.azure.com/.default");
272+
const token = (
273+
await axios.post(generateTokenUrl, undefined, {
274+
headers: {
275+
"content-type": "application/json",
276+
Authorization: `Bearer ${entraIdToken.token}`,
277+
},
278+
})
279+
).data.token;
280+
let url = `${endpoint}/client/?hub=${hub}`;
281+
res.json({ url: url, accessToken: token });
282+
});
283+
app.listen(8080, () => console.log("server started"));
284+
285+
```
286+
219287
## Next steps
220288

221289
To learn more about how to use default and serverless modes, see the following articles:

articles/backup/backup-overview.md

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,8 @@
22
title: What is Azure Backup?
33
description: Provides an overview of the Azure Backup service, and how it contributes to your business continuity and disaster recovery (BCDR) strategy.
44
ms.topic: overview
5-
ms.date: 04/01/2023
6-
ms.custom: mvc
5+
ms.date: 01/05/2024
6+
ms.custom: mvc, engagement-fy24
77
author: AbhishekMallick-MS
88
ms.author: v-abhmallick
99
---
@@ -23,6 +23,9 @@ The Azure Backup service provides simple, secure, and cost-effective solutions t
2323
- **SAP HANA databases in Azure VMs** - [Backup SAP HANA databases running on Azure VMs](backup-azure-sap-hana-database.md)
2424
- **Azure Database for PostgreSQL servers** - [Back up Azure PostgreSQL databases and retain the backups for up to 10 years](backup-azure-database-postgresql.md)
2525
- **Azure Blobs** - [Overview of operational backup for Azure Blobs](blob-backup-overview.md)
26+
- **Azure Database for PostgreSQL Flexible server** - [Overview of Azure Database for PostgreSQL Flexible server backup (preview)](backup-azure-database-postgresql-flex-overview.md)
27+
- **Azure Kubernetes service** - [Overview of AKS backup](azure-kubernetes-service-backup-overview.md)
28+
2629

2730
![Azure Backup Overview](./media/backup-overview/azure-backup-overview.png)
2831

articles/hdinsight/hadoop/apache-hadoop-on-premises-migration-best-practices-storage.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Learn storage best practices for migrating on-premises Hadoop clust
44
ms.service: hdinsight
55
ms.topic: how-to
66
ms.custom: hdinsightactive
7-
ms.date: 12/31/2022
7+
ms.date: 01/04/2024
88
---
99

1010
# Migrate on-premises Apache Hadoop clusters to Azure HDInsight
@@ -98,7 +98,7 @@ In the past, cloud-based analytics had to compromise in areas of performance, ma
9898

9999
- **Works with Blob storage tools, frameworks, and apps**: Data Lake Storage Gen2 continues to work with a wide array of tools, frameworks, and applications that exist today for Blob storage.
100100

101-
- **Optimized driver**: The Azure Blob Filesystem driver (ABFS) is [optimized specifically](../../storage/blobs/data-lake-storage-abfs-driver.md) for big data analytics. The corresponding REST APIs are surfaced through the dfs endpoint, dfs.core.windows.net.
101+
- **Optimized driver**: The Azure Blob Filesystem driver (ABFS) is [optimized specifically](../../storage/blobs/data-lake-storage-abfs-driver.md) for big data analytics. The corresponding REST APIs are surfaced through the `dfs` endpoint, dfs.core.windows.net.
102102

103103
One of the following formats can be used to access data that is stored in ADLS Gen2:
104104
- `abfs:///`: Access the default Data Lake Storage for the cluster.

articles/hdinsight/hbase/apache-hbase-phoenix-performance.md

Lines changed: 8 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ description: Best practices to optimize Apache Phoenix performance for Azure HDI
44
ms.service: hdinsight
55
ms.topic: how-to
66
ms.custom: hdinsightactive
7-
ms.date: 12/26/2022
7+
ms.date: 01/04/2024
88
---
99

1010
# Apache Phoenix performance best practices
@@ -42,7 +42,7 @@ With this new primary key the row keys generated by Phoenix would be:
4242
| Dole-John-111|1111 San Gabriel Dr.|1-425-000-0002| John|Dole| 111 |
4343
| Raji-Calvin-222|5415 San Gabriel Dr.|1-230-555-0191| Calvin|Raji| 222 |
4444

45-
In the first row above, the data for the rowkey is represented as shown:
45+
In the first row of given table, the data for the rowkey is represented as shown:
4646

4747
|rowkey| key| value|
4848
|------|--------------------|---|
@@ -107,7 +107,7 @@ Secondary indexes can improve read performance by turning what would be a full t
107107

108108
Covered indexes are indexes that include data from the row in addition to the values that are indexed. After finding the desired index entry, there's no need to access the primary table.
109109

110-
For example, in the example contact table you could create a secondary index on just the socialSecurityNum column. This secondary index would speed up queries that filter by socialSecurityNum values, but retrieving other field values will require another read against the main table.
110+
For example, in the example contact table you could create a secondary index on just the socialSecurityNum column. This secondary index would speed up queries that filter by socialSecurityNum values, but retrieving other field values require another read against the main table.
111111

112112
|rowkey| address| phone| firstName| lastName| socialSecurityNum |
113113
|------|--------------------|--------------|-------------|--------------| ---|
@@ -145,7 +145,7 @@ The main considerations in query design are:
145145

146146
### Understand the query plan
147147

148-
In [SQLLine](http://sqlline.sourceforge.net/), use EXPLAIN followed by your SQL query to view the plan of operations that Phoenix will perform. Check that the plan:
148+
In [SQLLine](http://sqlline.sourceforge.net/), use EXPLAIN followed by your SQL query to view the plan of operations that Phoenix performs. Check that the plan:
149149

150150
* Uses your primary key when appropriate.
151151
* Uses appropriate secondary indexes, rather than the data table.
@@ -155,13 +155,13 @@ In [SQLLine](http://sqlline.sourceforge.net/), use EXPLAIN followed by your SQL
155155

156156
As an example, say you have a table called FLIGHTS that stores flight delay information.
157157

158-
To select all the flights with an airlineid of `19805`, where airlineid is a field that isn't in the primary key or in any index:
158+
To select all the flights with an `airlineid` of `19805`, where `airlineid` is a field that isn't in the primary key or in any index:
159159

160160
```sql
161161
select * from "FLIGHTS" where airlineid = '19805';
162162
```
163163

164-
Run the explain command as follows:
164+
Run the explained command as follows:
165165

166166
```sql
167167
explain select * from "FLIGHTS" where airlineid = '19805';
@@ -196,13 +196,13 @@ CLIENT 1-CHUNK PARALLEL 1-WAY ROUND ROBIN RANGE SCAN OVER FLIGHTS [2014,1,2,'AA'
196196

197197
The values in square brackets are the range of values for the primary keys. In this case, the range values are fixed with year 2014, month 1, and dayofmonth 2, but allow values for flightnum starting with 2 and on up (`*`). This query plan confirms that the primary key is being used as expected.
198198

199-
Next, create an index on the FLIGHTS table named `carrier2_idx` that is on the carrier field only. This index also includes flightdate, tailnum, origin, and flightnum as covered columns whose data is also stored in the index.
199+
Next, create an index on the FLIGHTS table named `carrier2_idx` that is on the carrier field only. This index also includes `flightdate`, `tailnum`, `origin`, and `flightnum` as covered columns whose data is also stored in the index.
200200

201201
```sql
202202
CREATE INDEX carrier2_idx ON FLIGHTS (carrier) INCLUDE(FLIGHTDATE,TAILNUM,ORIGIN,FLIGHTNUM);
203203
```
204204

205-
Say you want to get the carrier along with the flightdate and tailnum, as in the following query:
205+
Say you want to get the carrier along with the `flightdate` and `tailnum`, as in the following query:
206206

207207
```sql
208208
explain select carrier,flightdate,tailnum from "FLIGHTS" where carrier = 'AA';

0 commit comments

Comments
 (0)