XmlSecureResolver Konstruktorok
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Inicializálja a XmlSecureResolver osztály új példányát.
Túlterhelések
| Name | Description |
|---|---|
| XmlSecureResolver(XmlResolver, PermissionSet) |
Inicializálja az osztály új példányát a XmlSecureResolver megadott és XmlResolver a PermissionSet megadott értékekkel. |
| XmlSecureResolver(XmlResolver, Evidence) |
Inicializálja az osztály új példányát a XmlSecureResolver megadott és XmlResolver a Evidence megadott értékekkel. |
| XmlSecureResolver(XmlResolver, String) |
Inicializálja az XmlSecureResolver osztály új példányát a XmlResolver megadott URL-címmel. |
Megjegyzések
A három konstruktor háromféle hozzáférési korlátozást biztosít:
A XmlSecureResolver(XmlResolver, String) konstruktor URL-cím használatával korlátozza a hozzáférést.
A XmlSecureResolver(XmlResolver, PermissionSet) konstruktor engedélykészlettel korlátozza a hozzáférést.
A XmlSecureResolver(XmlResolver, Evidence) konstruktor bizonyítékokkal korlátozza a hozzáférést.
Az ilyen típusú korlátozásokra példákat a konstruktor referenciatémáiban talál.
XmlSecureResolver(XmlResolver, PermissionSet)
Inicializálja az osztály új példányát a XmlSecureResolver megadott és XmlResolver a PermissionSet megadott értékekkel.
public:
XmlSecureResolver(System::Xml::XmlResolver ^ resolver, System::Security::PermissionSet ^ permissionSet);
public XmlSecureResolver(System.Xml.XmlResolver resolver, System.Security.PermissionSet permissionSet);
new System.Xml.XmlSecureResolver : System.Xml.XmlResolver * System.Security.PermissionSet -> System.Xml.XmlSecureResolver
Public Sub New (resolver As XmlResolver, permissionSet As PermissionSet)
Paraméterek
- resolver
- XmlResolver
A becsomagolt XmlSecureResolverXML-feloldó.
- permissionSet
- PermissionSet
Az alapul szolgáló XmlResolverengedélykészlet. A XmlSecureResolver metódus meghívja a metódust PermitOnly() az engedélykészleten, mielőtt meghívja a metódust GetEntity(Uri, String, Type) az alapul szolgáló XML-feloldón.
Példák
Az alábbi példa egy XmlSecureResolver objektumot hoz létre egy testreszabott engedélykészlet használatával.
public static Object GetFile (String fileURL, XmlResolver resolver) {
// Generate the default PermissionSet using the file URL.
Evidence evidence = XmlSecureResolver.CreateEvidenceForUrl(fileURL);
PermissionSet myPermissions = SecurityManager.ResolvePolicy(evidence);
// Modify the PermissionSet to only allow access to http://www.contoso.com.
// Create a WebPermission which only allows access to http://www.contoso.com.
WebPermission myWebPermission = new WebPermission(NetworkAccess.Connect, "http://www.contoso.com");
// Replace the existing WebPermission in myPermissions with the updated WebPermission.
myPermissions.SetPermission(myWebPermission);
// Use the modified PermissionSet to construct the XmlSecureResolver.
XmlSecureResolver sResolver = new XmlSecureResolver(resolver, myPermissions);
// Get the object.
Uri fullUri = sResolver.ResolveUri(null, fileURL);
return sResolver.GetEntity(fullUri, null, null);
}
public shared function GetFile (fileURL as String , resolver as XmlResolver) as Object
' Generate the default PermissionSet using the file URL.
Dim evidence as Evidence = XmlSecureResolver.CreateEvidenceForUrl(fileURL)
Dim myPermissions as PermissionSet = SecurityManager.ResolvePolicy(evidence)
' Modify the PermissionSet to only allow access to http://www.contoso.com.
' Create a WebPermission that only allows access to http://www.contoso.com.
Dim myWebPermission as WebPermission = new WebPermission(NetworkAccess.Connect, "http://www.contoso.com")
' Replace the existing WebPermission in myPermissions with the updated WebPermission.
myPermissions.SetPermission(myWebPermission)
' Use the modified PermissionSet to construct the XmlSecureResolver.
Dim sResolver as XmlSecureResolver = new XmlSecureResolver(resolver, myPermissions)
' Get the object.
Dim fullUri as Uri = sResolver.ResolveUri(nothing, fileURL)
return sResolver.GetEntity(fullUri, nothing, nothing)
end function
Lásd még
A következőre érvényes:
XmlSecureResolver(XmlResolver, Evidence)
Inicializálja az osztály új példányát a XmlSecureResolver megadott és XmlResolver a Evidence megadott értékekkel.
public:
XmlSecureResolver(System::Xml::XmlResolver ^ resolver, System::Security::Policy::Evidence ^ evidence);
public XmlSecureResolver(System.Xml.XmlResolver resolver, System.Security.Policy.Evidence evidence);
new System.Xml.XmlSecureResolver : System.Xml.XmlResolver * System.Security.Policy.Evidence -> System.Xml.XmlSecureResolver
Public Sub New (resolver As XmlResolver, evidence As Evidence)
Paraméterek
- resolver
- XmlResolver
A becsomagolt XmlSecureResolverXML-feloldó.
- evidence
- Evidence
Az alapul szolgáló PermissionSetbizonyíték létrehozásakor XmlResolver használt bizonyíték . A XmlSecureResolver metódus meghívja a PermitOnly() létrehozott PermissionSet metódust, mielőtt meghívja GetEntity(Uri, String, Type) az alapul szolgálót XmlResolver.
Megjegyzések
Az alábbiakban néhány lehetséges forgatókönyvet és az egyes forgatókönyvekre vonatkozó bizonyítékok típusát mutatjuk be:
Ha teljes mértékben megbízható környezetben dolgozik, a szerelvény használatával hozza létre a bizonyítékokat:
Evidence myEvidence = this.GetType().Assembly.Evidence; XmlSecureResolver myResolver; myResolver = new XmlSecureResolver(new XmlUrlResolver(), myEvidence);Dim myEvidence As Evidence = Me.GetType().Assembly.Evidence Dim myResolver As XmlSecureResolver myResolver = New XmlSecureResolver(New XmlUrlResolver(), myEvidence)Ha félig megbízható környezetben dolgozik, külső forrásból származó kóddal vagy adatokkal rendelkezik, és ismeri a külső forrás forrását, és ellenőrizhető URI-val rendelkezik, az URI használatával hozza létre a bizonyítékot:
Evidence myEvidence = XmlSecureResolver.CreateEvidenceForUrl(sourceURI); XmlSecureResolver myResolver = new XmlSecureResolver(new XmlUrlResolver(), myEvidence);Dim myEvidence As Evidence = XmlSecureResolver.CreateEvidenceForUrl(sourceURI) Dim myResolver As New XmlSecureResolver(New XmlUrlResolver(), myEvidence)Ha félig megbízható környezetben dolgozik, és külső forrásból származó kódokkal vagy adatokkal rendelkezik, de nem ismeri a külső forrás eredetét, akkor...
Állítsa be a paramétert
evidencea következőrenull: . Ez nem teszi lehetővé az erőforrásokhoz való hozzáférést.-vagy-
Ha az alkalmazásnak némi hozzáférésre van szüksége az erőforrásokhoz, kérjen bizonyítékot a hívótól.
A következőre érvényes:
XmlSecureResolver(XmlResolver, String)
- Forrás:
- XmlSecureResolver.cs
- Forrás:
- XmlSecureResolver.cs
- Forrás:
- XmlSecureResolver.cs
- Forrás:
- XmlSecureResolver.cs
- Forrás:
- XmlSecureResolver.cs
Inicializálja az XmlSecureResolver osztály új példányát a XmlResolver megadott URL-címmel.
public:
XmlSecureResolver(System::Xml::XmlResolver ^ resolver, System::String ^ securityUrl);
public XmlSecureResolver(System.Xml.XmlResolver resolver, string? securityUrl);
public XmlSecureResolver(System.Xml.XmlResolver resolver, string securityUrl);
new System.Xml.XmlSecureResolver : System.Xml.XmlResolver * string -> System.Xml.XmlSecureResolver
Public Sub New (resolver As XmlResolver, securityUrl As String)
Paraméterek
- resolver
- XmlResolver
A becsomagolt XmlSecureResolverXML-feloldó.
- securityUrl
- String
Az alapul szolgáló PermissionSeturl-cím.XmlResolver A XmlSecureResolver létrehozott PermitOnly() hívások PermissionSet a mögöttes GetEntity(Uri, String, Type)hívás előttXmlResolver.
Példák
Ez a példa a XmlSecureResolver(XmlResolver, String) konstruktor használatával hoz létre egy XmlSecureResolver objektumot, amely csak a helyi intranetes hely eléréséhez engedélyezett.
XmlSecureResolver myResolver = new XmlSecureResolver(new XmlUrlResolver(), "http://myLocalSite/");
Dim myResolver As New XmlSecureResolver(New XmlUrlResolver(), "http://myLocalSite/")
Megjegyzések
Important
A .NET Keretrendszer közös nyelvi futtatókörnyezetén (CLR) futó kód és a 2005-ös Microsoft SQL Server integrált CLR-en futó kód biztonsági infrastruktúrájában különbségek vannak. Ez olyan esetekhez vezethet, amikor a .NET-keretrendszer CLR-hez kifejlesztett kód eltérően működik, amikor az SQL Server integrált CLR-en használják. E különbségek egyike hatással van az XmlSecureResolver osztályra, ha URL-alapú bizonyítékokkal rendelkezik (azaz amikor az CreateEvidenceForUrl metódust vagy a XmlSecureResolver(XmlResolver, String) konstruktort használja). Az integrált SQL Server CLR szabályzatfeloldási mechanizmusa nem használja a Url vagy Zone információkat. Ehelyett a kiszolgáló az összetevők betöltésekor hozzáadott GUID alapján adja meg az engedélyeket. Ha SQL Server integrált CLR-jében használja a XmlSecureResolver-t, adja meg a szükséges bizonyítékokat közvetlenül egy megadott PermissionSet használatával.