Skip to content

Commit 6bfe903

Browse files
authored
WASM+Identity acct conf and PW recovery (#33976)
1 parent ae8424d commit 6bfe903

Some content is hidden

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

47 files changed

+1322
-583
lines changed

.openpublishing.redirection.json

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1322,6 +1322,41 @@
13221322
"source_path": "aspnetcore/blazor/components/prerendering-and-integration.md",
13231323
"redirect_url": "/aspnet/core/blazor/components/integration",
13241324
"redirect_document_id": false
1325+
},
1326+
{
1327+
"source_path": "aspnetcore/blazor/security/webassembly/standalone-with-identity.md",
1328+
"redirect_url": "/aspnet/core/blazor/security/webassembly/standalone-with-identity/",
1329+
"redirect_document_id": false
1330+
},
1331+
{
1332+
"source_path": "aspnetcore/blazor/security/server/account-confirmation-and-password-recovery.md",
1333+
"redirect_url": "/aspnet/core/blazor/security/account-confirmation-and-password-recovery",
1334+
"redirect_document_id": false
1335+
},
1336+
{
1337+
"source_path": "aspnetcore/blazor/security/server/interactive-server-side-rendering.md",
1338+
"redirect_url": "/aspnet/core/blazor/security/interactive-server-side-rendering",
1339+
"redirect_document_id": false
1340+
},
1341+
{
1342+
"source_path": "aspnetcore/blazor/security/server/qrcodes-for-authenticator-apps.md",
1343+
"redirect_url": "/aspnet/core/blazor/security/qrcodes-for-authenticator-apps",
1344+
"redirect_document_id": false
1345+
},
1346+
{
1347+
"source_path": "aspnetcore/blazor/security/server/static-server-side-rendering.md",
1348+
"redirect_url": "/aspnet/core/blazor/security/static-server-side-rendering",
1349+
"redirect_document_id": false
1350+
},
1351+
{
1352+
"source_path": "aspnetcore/blazor/security/server/additional-scenarios.md",
1353+
"redirect_url": "/aspnet/core/blazor/security/additional-scenarios",
1354+
"redirect_document_id": false
1355+
},
1356+
{
1357+
"source_path": "aspnetcore/blazor/security/server/index.md",
1358+
"redirect_url": "/aspnet/core/blazor/security/",
1359+
"redirect_document_id": false
13251360
}
13261361
]
13271362
}

aspnetcore/blazor/call-web-api.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -684,7 +684,7 @@ builder.Services.AddHttpClient(...)
684684

685685
:::moniker range=">= aspnetcore-8.0"
686686

687-
For a demonstration, see <xref:blazor/security/webassembly/standalone-with-identity>.
687+
For a demonstration, see <xref:blazor/security/webassembly/standalone-with-identity/index>.
688688

689689
:::moniker-end
690690

@@ -901,7 +901,7 @@ For guidance on mitigating overposting attacks, see <xref:tutorials/first-web-ap
901901

902902
### Server-side
903903

904-
* <xref:blazor/security/server/additional-scenarios>: Includes coverage on using <xref:System.Net.Http.HttpClient> to make secure web API requests.
904+
* <xref:blazor/security/additional-scenarios>: Includes coverage on using <xref:System.Net.Http.HttpClient> to make secure web API requests.
905905
* <xref:fundamentals/http-requests>
906906
* <xref:security/enforcing-ssl>
907907
* [Kestrel HTTPS endpoint configuration](xref:fundamentals/servers/kestrel/endpoints)

aspnetcore/blazor/components/integration.md

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -557,7 +557,7 @@ To resolve the problem, use ***either*** of the following approaches:
557557
* [Authentication and authorization: General aspects](xref:blazor/security/index#aspnet-core-blazor-authentication-and-authorization)
558558
* [Handle Errors: Prerendering](xref:blazor/fundamentals/handle-errors#prerendering)
559559
* [Host and deploy: Blazor Server](xref:blazor/host-and-deploy/server)
560-
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/server/interactive-server-side-rendering#cross-site-scripting-xss)
560+
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/interactive-server-side-rendering#cross-site-scripting-xss)
561561
* <xref:Microsoft.AspNetCore.Components.Routing.Router.OnNavigateAsync> is executed *twice* when prerendering: [Handle asynchronous navigation events with `OnNavigateAsync`](xref:blazor/fundamentals/routing#handle-asynchronous-navigation-events-with-onnavigateasync)
562562

563563
:::moniker-end
@@ -1076,7 +1076,7 @@ To resolve the problem, use ***either*** of the following approaches:
10761076
* [Authentication and authorization: General aspects](xref:blazor/security/index#aspnet-core-blazor-authentication-and-authorization)
10771077
* [Handle Errors: Prerendering](xref:blazor/fundamentals/handle-errors#prerendering)
10781078
* [Host and deploy: Blazor Server](xref:blazor/host-and-deploy/server)
1079-
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/server/interactive-server-side-rendering#cross-site-scripting-xss)
1079+
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/interactive-server-side-rendering#cross-site-scripting-xss)
10801080

10811081
:::moniker-end
10821082

@@ -1508,7 +1508,7 @@ To resolve the problem, use ***either*** of the following approaches:
15081508
* [Authentication and authorization: General aspects](xref:blazor/security/index#aspnet-core-blazor-authentication-and-authorization)
15091509
* [Handle Errors: Prerendering](xref:blazor/fundamentals/handle-errors#prerendering)
15101510
* [Host and deploy: Blazor Server](xref:blazor/host-and-deploy/server)
1511-
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/server/interactive-server-side-rendering#cross-site-scripting-xss)
1511+
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/interactive-server-side-rendering#cross-site-scripting-xss)
15121512

15131513
:::moniker-end
15141514

@@ -1938,6 +1938,6 @@ To resolve the problem, use ***either*** of the following approaches:
19381938
* [Authentication and authorization: General aspects](xref:blazor/security/index#aspnet-core-blazor-authentication-and-authorization)
19391939
* [Handle Errors: Prerendering](xref:blazor/fundamentals/handle-errors#prerendering)
19401940
* [Host and deploy: Blazor Server](xref:blazor/host-and-deploy/server)
1941-
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/server/interactive-server-side-rendering#cross-site-scripting-xss)
1941+
* [Threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/interactive-server-side-rendering#cross-site-scripting-xss)
19421942

19431943
:::moniker-end

aspnetcore/blazor/components/prerender.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -155,8 +155,8 @@ Prerendering guidance is organized in the Blazor documentation by subject matter
155155
* [Prerendering when integrating components into Razor Pages and MVC apps](xref:blazor/components/integration)
156156

157157
* Authentication and authorization
158-
* [Server-side threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/server/interactive-server-side-rendering#cross-site-scripting-xss)
159-
* [Server-side unauthorized content display while prerendering with a custom `AuthenticationStateProvider`](xref:blazor/security/server/index#unauthorized-content-display-while-prerendering-with-a-custom-authenticationstateprovider)
158+
* [Server-side threat mitigation: Cross-site scripting (XSS)](xref:blazor/security/interactive-server-side-rendering#cross-site-scripting-xss)
159+
* [Server-side unauthorized content display while prerendering with a custom `AuthenticationStateProvider`](xref:blazor/security/index#unauthorized-content-display-while-prerendering-with-a-custom-authenticationstateprovider)
160160
* [Blazor WebAssembly rendered component authentication with prerendering](xref:blazor/security/webassembly/additional-scenarios#prerendering-with-authentication)
161161

162162
* [State management: Handle prerendering](xref:blazor/state-management#handle-prerendering): Besides the *Handle prerendering* section, several of the article's other sections include remarks on prerendering.

aspnetcore/blazor/components/render-modes.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -960,7 +960,7 @@ To address this scenario, inject the service in a new imports file placed in the
960960

961961
* WebSocket compression
962962
* <xref:blazor/fundamentals/signalr#websocket-compression-for-interactive-server-components>
963-
* <xref:blazor/security/server/interactive-server-side-rendering#interactive-server-components-with-websocket-compression-enabled>
963+
* <xref:blazor/security/interactive-server-side-rendering#interactive-server-components-with-websocket-compression-enabled>
964964
* <xref:blazor/js-interop/ssr>
965965
* [Cascading values/parameters and render mode boundaries](xref:blazor/components/cascading-values-and-parameters#cascading-valuesparameters-and-render-mode-boundaries): Also see the [Root-level cascading parameters](xref:blazor/components/cascading-values-and-parameters#root-level-cascading-parameters) section earlier in the article.
966966
* <xref:blazor/components/class-libraries-with-static-ssr>

aspnetcore/blazor/file-uploads.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ To read data from a user-selected file, call <xref:Microsoft.AspNetCore.Componen
4949

5050
<xref:Microsoft.AspNetCore.Components.Forms.IBrowserFile.OpenReadStream%2A> enforces a maximum size in bytes of its <xref:System.IO.Stream>. Reading one file or multiple files larger than 500 KB results in an exception. This limit prevents developers from accidentally reading large files into memory. The `maxAllowedSize` parameter of <xref:Microsoft.AspNetCore.Components.Forms.IBrowserFile.OpenReadStream%2A> can be used to specify a larger size if required.
5151

52-
If you need access to a <xref:System.IO.Stream> that represents the file's bytes, use <xref:Microsoft.AspNetCore.Components.Forms.IBrowserFile.OpenReadStream%2A?displayProperty=nameWithType>. Avoid reading the incoming file stream directly into memory all at once. For example, don't copy all of the file's bytes into a <xref:System.IO.MemoryStream> or read the entire stream into a byte array all at once. These approaches can result in degraded app performance and potential [Denial of Service (DoS)](xref:blazor/security/server/interactive-server-side-rendering#denial-of-service-dos-attacks) risk, especially for server-side components. Instead, consider adopting either of the following approaches:
52+
If you need access to a <xref:System.IO.Stream> that represents the file's bytes, use <xref:Microsoft.AspNetCore.Components.Forms.IBrowserFile.OpenReadStream%2A?displayProperty=nameWithType>. Avoid reading the incoming file stream directly into memory all at once. For example, don't copy all of the file's bytes into a <xref:System.IO.MemoryStream> or read the entire stream into a byte array all at once. These approaches can result in degraded app performance and potential [Denial of Service (DoS)](xref:blazor/security/interactive-server-side-rendering#denial-of-service-dos-attacks) risk, especially for server-side components. Instead, consider adopting either of the following approaches:
5353

5454
* Copy the stream directly to a file on disk without reading it into memory. Note that Blazor apps executing code on the server aren't able to access the client's file system directly.
5555
* Upload files from the client directly to an external service. For more information, see the [Upload files to an external service](#upload-files-to-an-external-service) section.

aspnetcore/blazor/fundamentals/dependency-injection.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -612,7 +612,7 @@ public static class CircuitServicesServiceCollectionExtensions
612612

613613
Access the circuit-scoped services by injecting the `CircuitServicesAccessor` where it's needed.
614614

615-
For an example that shows how to access the <xref:Microsoft.AspNetCore.Components.Authorization.AuthenticationStateProvider> from a <xref:System.Net.Http.DelegatingHandler> set up using <xref:System.Net.Http.IHttpClientFactory>, see <xref:blazor/security/server/additional-scenarios#access-authenticationstateprovider-in-outgoing-request-middleware>.
615+
For an example that shows how to access the <xref:Microsoft.AspNetCore.Components.Authorization.AuthenticationStateProvider> from a <xref:System.Net.Http.DelegatingHandler> set up using <xref:System.Net.Http.IHttpClientFactory>, see <xref:blazor/security/additional-scenarios#access-authenticationstateprovider-in-outgoing-request-middleware>.
616616

617617
:::moniker-end
618618

aspnetcore/blazor/fundamentals/index.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -178,6 +178,22 @@ Documentation sample apps are available for inspection and download:
178178

179179
Locate a sample app by first selecting the version folder that matches the version of .NET that you're working with.
180180

181+
:::moniker range=">= aspnetcore-8.0"
182+
183+
Samples apps in the repository:
184+
185+
* Blazor Web App
186+
* Blazor WebAssembly
187+
* Blazor Web App with EF Core (<xref:blazor/blazor-ef-core>)
188+
* Blazor Web App with SignalR (<xref:blazor/tutorials/signalr-blazor>)
189+
* Two Blazor Web Apps and a Blazor WebAssembly app for calling web (server) APIs (<xref:blazor/call-web-api>)
190+
* Blazor Web App with OIDC (BFF and non-BFF patterns) (<xref:blazor/security/blazor-web-app-oidc>)
191+
* Blazor WebAssembly scopes-enabled logging (<xref:blazor/fundamentals/logging#client-side-log-scopes>)
192+
* Blazor WebAssembly with ASP.NET Core Identity (<xref:blazor/security/webassembly/standalone-with-identity/index>)
193+
* .NET MAUI Blazor Hybrid app with a Blazor Web App and a shared UI provided by a Razor class library (RCL) (<xref:blazor/hybrid/tutorials/maui-blazor-web-app>)
194+
195+
:::moniker-end
196+
181197
:::moniker range="< aspnetcore-8.0"
182198

183199
The sample repo contains two types of samples:

0 commit comments

Comments
 (0)