Skip to content

Commit 3f1e89a

Browse files
authored
Delete CAS docs (#24693)
1 parent 45fd313 commit 3f1e89a

File tree

57 files changed

+131
-2096
lines changed

Some content is hidden

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

57 files changed

+131
-2096
lines changed

.openpublishing.redirection.json

Lines changed: 85 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4258,6 +4258,91 @@
42584258
"source_path": "docs/framework/misc/binding.md",
42594259
"redirect_url": "/dotnet/framework/configure-apps/file-schema/wcf/bindings"
42604260
},
4261+
{
4262+
"source_path": "docs/framework/misc/code-access-security-basics.md",
4263+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/code-access-security-basics",
4264+
"redirect_document_id": false
4265+
},
4266+
{
4267+
"source_path": "docs/framework/misc/code-access-security-policy-compatibility-and-migration.md",
4268+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/code-access-security-policy-compatibility-and-migration",
4269+
"redirect_document_id": false
4270+
},
4271+
{
4272+
"source_path": "docs/framework/misc/code-access-security.md",
4273+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/code-access-security",
4274+
"redirect_document_id": false
4275+
},
4276+
{
4277+
"source_path": "docs/framework/misc/dangerous-permissions-and-policy-administration.md",
4278+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/dangerous-permissions-and-policy-administration",
4279+
"redirect_document_id": false
4280+
},
4281+
{
4282+
"source_path": "docs/framework/misc/how-to-run-partially-trusted-code-in-a-sandbox.md",
4283+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/how-to-run-partially-trusted-code-in-a-sandbox",
4284+
"redirect_document_id": false
4285+
},
4286+
{
4287+
"source_path": "docs/framework/misc/link-demands.md",
4288+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/link-demands",
4289+
"redirect_document_id": false
4290+
},
4291+
{
4292+
"source_path": "docs/framework/misc/securing-exception-handling.md",
4293+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/securing-exception-handling",
4294+
"redirect_document_id": false
4295+
},
4296+
{
4297+
"source_path": "docs/framework/misc/securing-method-access.md",
4298+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/securing-method-access",
4299+
"redirect_document_id": false
4300+
},
4301+
{
4302+
"source_path": "docs/framework/misc/securing-wrapper-code.md",
4303+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/securing-wrapper-code",
4304+
"redirect_document_id": false
4305+
},
4306+
{
4307+
"source_path": "docs/framework/misc/security-and-public-read-only-array-fields.md",
4308+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/security-and-public-read-only-array-fields",
4309+
"redirect_document_id": false
4310+
},
4311+
{
4312+
"source_path": "docs/framework/misc/security-and-remoting-considerations.md",
4313+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/security-and-remoting-considerations",
4314+
"redirect_document_id": false
4315+
},
4316+
{
4317+
"source_path": "docs/framework/misc/security-and-serialization.md",
4318+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/security-and-serialization",
4319+
"redirect_document_id": false
4320+
},
4321+
{
4322+
"source_path": "docs/framework/misc/security-transparent-code-level-1.md",
4323+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/security-transparent-code-level-1",
4324+
"redirect_document_id": false
4325+
},
4326+
{
4327+
"source_path": "docs/framework/misc/security-transparent-code-level-2.md",
4328+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/security-transparent-code-level-2",
4329+
"redirect_document_id": false
4330+
},
4331+
{
4332+
"source_path": "docs/framework/misc/security-transparent-code.md",
4333+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/security-transparent-code",
4334+
"redirect_document_id": false
4335+
},
4336+
{
4337+
"source_path": "docs/framework/misc/using-libraries-from-partially-trusted-code.md",
4338+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/using-libraries-from-partially-trusted-code",
4339+
"redirect_document_id": false
4340+
},
4341+
{
4342+
"source_path": "docs/framework/misc/using-the-assert-method.md",
4343+
"redirect_url": "/previous-versions/dotnet/framework/code-access-security/using-the-assert-method",
4344+
"redirect_document_id": false
4345+
},
42614346
{
42624347
"source_path": "docs/framework/network-programming/httplistener.md",
42634348
"redirect_url": "/dotnet/api/system.net.httplistener"

docs/core/compatibility/core-libraries/5.0/code-access-security-apis-obsolete.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ This is a compile-time only change. There is no run-time change from previous ve
6363

6464
## Reason for change
6565

66-
[Code access security (CAS)](../../../../framework/misc/code-access-security.md) is an unsupported legacy technology. The infrastructure to enable CAS exists only in .NET Framework 2.x - 4.x, but is deprecated and not receiving servicing or security fixes.
66+
[Code access security (CAS)](/previous-versions/dotnet/framework/code-access-security/code-access-security) is an unsupported legacy technology. The infrastructure to enable CAS exists only in .NET Framework 2.x - 4.x, but is deprecated and not receiving servicing or security fixes.
6767

6868
Due to CAS's deprecation, the [supporting infrastructure was not brought forward to .NET Core](../../../porting/net-framework-tech-unavailable.md) or .NET 5.0+. However, the APIs were brought forward so that apps could cross-compile against .NET Framework and .NET Core. This led to "fail open" scenarios, where some CAS-related APIs exist and are callable but perform no action at run time. This can lead to security issues for components that expect the runtime to honor CAS-related attributes or programmatic API calls. To better communicate that the runtime doesn't respect these attributes or APIs, we have obsoleted the majority of them in .NET 5.0.
6969

docs/core/porting/net-framework-tech-unavailable.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,13 +28,13 @@ Across machines, use a network-based solution as an alternative. Preferably, use
2828

2929
## Code access security (CAS)
3030

31-
Sandboxing, which relies on the runtime or the framework to constrain which resources a managed application or library uses or runs, [isn't supported on .NET Framework](../../framework/misc/code-access-security.md) and therefore is also not supported on .NET Core and .NET 5+. There are too many cases in the .NET Framework and the runtime where an elevation of privileges occurs to continue treating CAS as a security boundary. Also, CAS makes the implementation more complicated and often has correctness-performance implications for applications that don't intend to use it.
31+
Sandboxing, which relies on the runtime or the framework to constrain which resources a managed application or library uses or runs, [isn't supported on .NET Framework](/previous-versions/dotnet/framework/code-access-security/code-access-security) and therefore is also not supported on .NET Core and .NET 5+. There are too many cases in the .NET Framework and the runtime where an elevation of privileges occurs to continue treating CAS as a security boundary. Also, CAS makes the implementation more complicated and often has correctness-performance implications for applications that don't intend to use it.
3232

3333
Use security boundaries provided by the operating system, such as virtualization, containers, or user accounts, for running processes with the minimum set of privileges.
3434

3535
## Security transparency
3636

37-
Similar to CAS, security transparency separates sandboxed code from security critical code in a declarative fashion but is [no longer supported as a security boundary](../../framework/misc/security-transparent-code.md). This feature is heavily used by Silverlight.
37+
Similar to CAS, security transparency separates sandboxed code from security critical code in a declarative fashion but is [no longer supported as a security boundary](/previous-versions/dotnet/framework/code-access-security/security-transparent-code). This feature is heavily used by Silverlight.
3838

3939
Use security boundaries provided by the operating system, such as virtualization, containers, or user accounts, for running processes with the least set of privileges.
4040

docs/csharp/misc/cs0688.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@ ms.assetid: 8ce5af36-663e-46e8-87e9-bb32555796ae
1212

1313
'method1' has a link demand, but overrides or implements 'method2' which does not have a link demand. A security hole may exist.
1414

15-
The link demand set up on the derived class method can easily be circumvented by calling the base class method. To close the security hole, the base class method needs to also use the link demand. For more information, see [Demand vs. LinkDemand](../../framework/misc/securing-wrapper-code.md#demand-vs-linkdemand).
15+
The link demand set up on the derived class method can easily be circumvented by calling the base class method. To close the security hole, the base class method needs to also use the link demand. For more information, see [Demand vs. LinkDemand](/previous-versions/dotnet/framework/code-access-security/securing-wrapper-code#demand-vs-linkdemand).
1616

1717
## Example
1818

docs/framework/configure-apps/file-schema/runtime/loadfromremotesources-element.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,7 +70,7 @@ so this load may be dangerous. If this load is not intended to sandbox the assem
7070

7171
To load the assembly and execute its code, you must either:
7272

73-
- Explicitly create a sandbox for the assembly (see [How to: Run Partially Trusted Code in a Sandbox](../../../misc/how-to-run-partially-trusted-code-in-a-sandbox.md)).
73+
- Explicitly create a sandbox for the assembly (see [How to: Run Partially Trusted Code in a Sandbox](/previous-versions/dotnet/framework/code-access-security/how-to-run-partially-trusted-code-in-a-sandbox)).
7474

7575
- Run the assembly's code in full trust. You do this by configuring the `<loadFromRemoteSources>` element. It lets you specify that the assemblies that run in partial trust in earlier versions of the .NET Framework now run in full trust in the .NET Framework 4 and later versions.
7676

@@ -114,7 +114,7 @@ The following example shows how to grant full trust to assemblies loaded from re
114114
## See also
115115

116116
- [More Implicit Uses of CAS Policy: loadFromRemoteSources](/archive/blogs/shawnfa/more-implicit-uses-of-cas-policy-loadfromremotesources)
117-
- [How to: Run Partially Trusted Code in a Sandbox](../../../misc/how-to-run-partially-trusted-code-in-a-sandbox.md)
117+
- [How to: Run Partially Trusted Code in a Sandbox](/previous-versions/dotnet/framework/code-access-security/how-to-run-partially-trusted-code-in-a-sandbox)
118118
- [Runtime Settings Schema](index.md)
119119
- [Configuration File Schema](../index.md)
120120
- <xref:System.Reflection.Assembly.LoadFrom%2A?displayProperty=nameWithType>

docs/framework/configure-apps/file-schema/runtime/netfx40-legacysecuritypolicy-element.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,7 @@ In the .NET Framework version 3.5 and earlier versions, CAS policy is always in
5656

5757
CAS policy is version-specific. Custom CAS policies that exist in earlier versions of the .NET Framework must be respecified in the .NET Framework 4.
5858

59-
Applying the `<NetFx40_LegacySecurityPolicy>` element to a .NET Framework 4 assembly does not affect [security-transparent code](../../../misc/security-transparent-code.md); the transparency rules still apply.
59+
Applying the `<NetFx40_LegacySecurityPolicy>` element to a .NET Framework 4 assembly does not affect [security-transparent code](/previous-versions/dotnet/framework/code-access-security/security-transparent-code); the transparency rules still apply.
6060

6161
> [!IMPORTANT]
6262
> Applying the `<NetFx40_LegacySecurityPolicy>` element can result in significant performance penalties for native image assemblies created by the [Native Image Generator (Ngen.exe)](../../../tools/ngen-exe-native-image-generator.md) that are not installed in the [global assembly cache](../../../app-domains/gac.md). The performance degradation is caused by the inability of the runtime to load the assemblies as native images when the attribute is applied, resulting in their being loaded as just-in-time assemblies.

docs/framework/data/adonet/secure-client-applications.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ Applications typically consist of many parts that must all be protected from vul
6363
|--------------|-----------------|
6464
|[Configuration of Remote Applications](/previous-versions/dotnet/netframework-4.0/b8tysty8(v=vs.100))|Discusses how to configure remoting applications in order to avoid common problems.|
6565
|[Security in Remoting](/previous-versions/dotnet/netframework-4.0/9hwst9th(v=vs.100))|Describes authentication and encryption as well as additional security topics relevant to remoting.|
66-
|[Security and Remoting Considerations](../../misc/security-and-remoting-considerations.md)|Describes security issues with protected objects and application domain crossing.|
66+
|[Security and Remoting Considerations](/previous-versions/dotnet/framework/code-access-security/security-and-remoting-considerations)|Describes security issues with protected objects and application domain crossing.|
6767

6868
## See also
6969

docs/framework/data/adonet/security-overview.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -67,7 +67,7 @@ For more information, see the following resources:
6767
|Resource|Description|
6868
|--------------|-----------------|
6969
|[Code Access Security and ADO.NET](code-access-security.md)|Describes the interactions between code access security, role-based security, and partially trusted environments from the perspective of an ADO.NET application.|
70-
|[Code Access Security](../../misc/code-access-security.md)|Contains links to additional topics describing CAS in the .NET Framework.|
70+
|[Code Access Security](/previous-versions/dotnet/framework/code-access-security/code-access-security)|Contains links to additional topics describing CAS in the .NET Framework.|
7171

7272
## Database Security
7373

docs/framework/data/adonet/sql/clr-integration-security-in-sql-server.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ Microsoft SQL Server provides the integration of the common language runtime (CL
1616

1717
|Resource|Description|
1818
|--------------|-----------------|
19-
|[Code Access Security](../../../misc/code-access-security.md)|Contains topics describing CAS in the .NET Framework.|
19+
|[Code Access Security](/previous-versions/dotnet/framework/code-access-security/code-access-security)|Contains topics describing CAS in the .NET Framework.|
2020
|[CLR Integration Security](/sql/relational-databases/clr-integration/security/clr-integration-security)|Discusses the security model for managed code executing inside of SQL Server.|
2121

2222
## See also

docs/framework/deployment/index.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@ The .NET Framework provides the following options for distributing applications:
149149

150150
To determine where to deploy your application's assemblies so they can be found by the runtime, see [How the Runtime Locates Assemblies](how-the-runtime-locates-assemblies.md).
151151

152-
Security considerations can also affect how you deploy your application. Security permissions are granted to managed code according to where the code is located. Deploying an application or component to a location where it receives little trust, such as the Internet, limits what the application or component can do. For more information about deployment and security considerations, see [Code Access Security Basics](../misc/code-access-security-basics.md).
152+
Security considerations can also affect how you deploy your application. Security permissions are granted to managed code according to where the code is located. Deploying an application or component to a location where it receives little trust, such as the Internet, limits what the application or component can do. For more information about deployment and security considerations, see [Code Access Security Basics](/previous-versions/dotnet/framework/code-access-security/code-access-security-basics).
153153

154154
## Related Topics
155155

0 commit comments

Comments
 (0)