SecurityElement Class


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

Represents the XML object model for encoding security objects. This class cannot be inherited.

Namespace:   System.Security
Assembly:  mscorlib (in mscorlib.dll)


type SecurityElement = class end


Initializes a new instance of the SecurityElement class with the specified tag.

System_CAPS_pubmethodSecurityElement(String, String)

Initializes a new instance of the SecurityElement class with the specified tag and text.


Gets or sets the attributes of an XML element as name/value pairs.


Gets or sets the array of child elements of the XML element.


Gets or sets the tag name of an XML element.


Gets or sets the text within an XML element.

System_CAPS_pubmethodAddAttribute(String, String)

Adds a name/value attribute to an XML element.


Adds a child element to the XML element.


Finds an attribute by name in an XML element.


Creates and returns an identical copy of the current SecurityElement object.


Compares two XML element objects for equality.


Determines whether the specified object is equal to the current object.(Inherited from Object.)


Replaces invalid XML characters in a string with their valid XML equivalent.


Creates a security element from an XML-encoded string.


Serves as the default hash function. (Inherited from Object.)


Gets the Type of the current instance.(Inherited from Object.)


Determines whether a string is a valid attribute name.


Determines whether a string is a valid attribute value.


Determines whether a string is a valid tag.


Determines whether a string is valid as text within an XML element.


Finds a child by its tag name.


Finds a child by its tag name and returns the contained text.


Produces a string representation of an XML element and its constituent attributes, child elements, and text.(Overrides Object.ToString().)

This class is intended to be a lightweight implementation of a simple XML object model for use within the security system, and not for use as a general XML object model. This documentation assumes a basic knowledge of XML.

The simple XML object model for an element consists of the following parts:

  • The tag is the element name.

  • The attributes are zero or more name/value attribute pairs on the element.

  • The children are zero or more elements nested within <tag> and </tag>.

It is strongly suggested that attribute based XML representation is used to express security elements and their values. This means properties of an element are expressed as attributes and property values are expressed as attribute values. Avoid nesting text within tags. For any <tag>text</tag> representation a representation of type <tag value="text"/> is usually available. Using this attribute-based XML representation increases readability and allows easy WMI portability of the resulting XML serialization.

An attribute name must be one character or longer, and cannot be null. If element-based value representation is used, elements with a text string that is null are represented in the <tag/> form; otherwise, text is delimited by the <tag> and </tag> tokens. Both forms can be combined with attributes, which are shown if present.

The tags, attributes, and text of elements, if present, are always case-sensitive. The XML form contains quotations and escapes where necessary. String values that include characters invalid for use in XML result in an ArgumentException. These rules apply to all properties and methods.


For performance reasons, character validity is only checked when the element is encoded into XML text form, and not on every set of a property or method. Static methods allow explicit checking where needed.

The following example shows the use of members of the SecurityElement class.

No code example is currently available or this language may not be supported.

.NET Framework
Available since 1.1

Any public static ( Shared in Visual Basic) members of this type are thread safe. Any instance members are not guaranteed to be thread safe.

Return to top