CodeConnectAccess Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt den Zugriff auf Netzwerkressourcen an, der Code gewährt wird.
public ref class CodeConnectAccess
public class CodeConnectAccess
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public class CodeConnectAccess
type CodeConnectAccess = class
[<System.Runtime.InteropServices.ComVisible(true)>]
[<System.Serializable>]
type CodeConnectAccess = class
Public Class CodeConnectAccess
- Vererbung
-
CodeConnectAccess
- Attribute
Beispiele
Im folgenden Codebeispiel wird ein NetCodeGroup -Objekt erstellt und der Benutzerrichtlinienebene hinzugefügt.
static void SetNetCodeGroupAccess()
{
String^ userPolicyLevel = "User";
// Locate the User policy level.
PolicyLevel^ level = nullptr;
System::Collections::IEnumerator^ ph =
System::Security::SecurityManager::PolicyHierarchy();
while(ph->MoveNext())
{
level = (PolicyLevel^)ph->Current;
if (level->Label == userPolicyLevel)
{
break;
}
}
if (level->Label != userPolicyLevel)
throw gcnew ApplicationException("Could not find User policy level.");
IMembershipCondition^ membership =
gcnew UrlMembershipCondition("http://www.contoso.com/*");
NetCodeGroup^ codeGroup = gcnew NetCodeGroup(membership);
// Delete default settings.
codeGroup->ResetConnectAccess();
// Create an object that represents access to the FTP scheme and
// default port.
CodeConnectAccess^ CodeAccessFtp =
gcnew CodeConnectAccess(Uri::UriSchemeFtp,
CodeConnectAccess::DefaultPort);
// Create an object that represents access to the HTTPS scheme
// and default port.
CodeConnectAccess^ CodeAccessHttps =
gcnew CodeConnectAccess(Uri::UriSchemeHttps,
CodeConnectAccess::DefaultPort);
// Create an object that represents access to the origin
// scheme and port.
CodeConnectAccess^ CodeAccessOrigin =
CodeConnectAccess::CreateOriginSchemeAccess
(CodeConnectAccess::OriginPort);
// Add connection access objects to the NetCodeGroup object.
codeGroup->AddConnectAccess(Uri::UriSchemeHttp, CodeAccessFtp);
codeGroup->AddConnectAccess(Uri::UriSchemeHttp, CodeAccessHttps);
codeGroup->AddConnectAccess(Uri::UriSchemeHttp, CodeAccessOrigin);
// Provide name and description information for caspol.exe tool.
codeGroup->Name = "ContosoHttpCodeGroup";
codeGroup->Description = "Code originating from contoso.com can" +
" connect back using the FTP or HTTPS.";
// Add the code group to the User policy's root node.
level->RootCodeGroup->AddChild(codeGroup);
// Save the changes to the policy level.
System::Security::SecurityManager::SavePolicy();
}
public static void SetNetCodeGroupAccess()
{
const string userPolicyLevel = "User";
// Locate the User policy level.
PolicyLevel level = null;
System.Collections.IEnumerator ph =
System.Security.SecurityManager.PolicyHierarchy();
while(ph.MoveNext())
{
level = (PolicyLevel)ph.Current;
if( level.Label == userPolicyLevel )
{
break;
}
}
if (level.Label != userPolicyLevel)
throw new ApplicationException("Could not find User policy level.");
IMembershipCondition membership =
new UrlMembershipCondition(@"http://www.contoso.com/*");
NetCodeGroup codeGroup = new NetCodeGroup(membership);
// Delete default settings.
codeGroup.ResetConnectAccess();
// Create an object that represents access to the FTP scheme and default port.
CodeConnectAccess a1 = new CodeConnectAccess(Uri.UriSchemeFtp, CodeConnectAccess.DefaultPort);
// Create an object that represents access to the HTTPS scheme and default port.
CodeConnectAccess a2 = new CodeConnectAccess(Uri.UriSchemeHttps, CodeConnectAccess.DefaultPort);
// Create an object that represents access to the origin scheme and port.
CodeConnectAccess a3 = CodeConnectAccess.CreateOriginSchemeAccess(CodeConnectAccess.OriginPort);
// Add connection access objects to the NetCodeGroup object.
codeGroup.AddConnectAccess(Uri.UriSchemeHttp, a1);
codeGroup.AddConnectAccess(Uri.UriSchemeHttp, a2);
codeGroup.AddConnectAccess(Uri.UriSchemeHttp, a3);
// Provide name and description information for caspol.exe tool.
codeGroup.Name = "ContosoHttpCodeGroup";
codeGroup.Description = "Code originating from contoso.com can connect back using the FTP or HTTPS.";
// Add the code group to the User policy's root node.
level.RootCodeGroup.AddChild(codeGroup);
// Save the changes to the policy level.
System.Security.SecurityManager.SavePolicy();
}
Hinweise
Diese Klasse wird in Verbindung mit der NetCodeGroup -Klasse verwendet, um zu steuern, wie die Ausführung von Code eine Verbindung mit der Website herstellen kann, von der er heruntergeladen wurde. Diese Klassen bieten programmgesteuerte Steuerung des für die WebPermission Ausführung von Code gewährten Codes, der steuert, welche Schemas und Ports der Code auf seine Ursprungswebsite zugreifen kann. Sie können Schema- und Portpaare angeben, die basierend auf dem Schema zulässig sind, in der URL, aus der der Code stammt.
Verwenden Sie die CreateOriginSchemeAccess -Methode, um ein CodeConnectAccess Objekt basierend auf dem Ursprungsschema des Codes zu erstellen.
Um ein CodeConnectAccess Objekt zu erstellen, das ein beliebiges Schema verwenden kann, aber durch Port eingeschränkt ist, verwenden Sie die CreateAnySchemeAccess -Methode.
Konstruktoren
CodeConnectAccess(String, Int32) |
Initialisiert eine neue Instanz der CodeConnectAccess-Klasse. |
Felder
AnyScheme |
Enthält den Zeichenfolgenwert, der den Schemaplatzhalter darstellt. |
DefaultPort |
Enthält den Wert, der zum Darstellen des Standardports verwendet wird. |
OriginPort |
Enthält den Wert, der zum Darstellen des Portwerts im URI verwendet wird, von dem der Code stammt. |
OriginScheme |
Enthält den Wert, der zum Darstellen des Schemas in der URL verwendet wird, von der der Code stammt. |
Eigenschaften
Port |
Ruft den durch die aktuelle Instanz dargestellten Port ab. |
Scheme |
Ruft das durch die aktuelle Instanz dargestellte URI-Schema ab. |
Methoden
CreateAnySchemeAccess(Int32) |
Gibt eine CodeConnectAccess-Instanz zurück, die Zugriff auf den angegebenen Port mit einem beliebigen Schema darstellt. |
CreateOriginSchemeAccess(Int32) |
Gibt eine CodeConnectAccess-Instanz zurück, die Zugriff auf den angegebenen Port mit dem Ursprungsschema des Codes darstellt. |
Equals(Object) |
Gibt einen Wert zurück, der angibt, ob zwei CodeConnectAccess-Objekte dasselbe Schema und denselben Port darstellen. |
GetHashCode() |
Dient als Hashfunktion für einen bestimmten Typ. |
GetType() |
Ruft den Type der aktuellen Instanz ab. (Geerbt von Object) |
MemberwiseClone() |
Erstellt eine flache Kopie des aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |