# Managed Object - ExtensionManager(vim.ExtensionManager)

Property of
  ServiceContent
See also
  Extension, ExtensionManagerIpAllocationUsage, ManagedEntity
Since
  VI API 2.5

## Managed Object Description

This managed object type provides directory and basic management services for all registered extensions.

Clients use the ExtensionManager, available in ServiceInstance, to access extension objects.

While several authentication methods are available for extension servers to use (see SessionManager), only one authentication method is valid for an extension at any given time.

Properties

Name | Type | Description
--- | --- | ---
extensionList* P | Extension[] | The list of currently registered extensions.

*May not be present P Required privilege: System.View

Methods

Methods defined in this Managed Object
FindExtension, GetPublicKey, QueryExtensionIpAllocationUsage, QueryManagedBy, RegisterExtension, SetExtensionCertificate, SetPublicKey, UnregisterExtension, UpdateExtension

# FindExtension(findExtension)

Returns extension with the given key, if any.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extensionKey | xsd:string | Key to search for.

Return Value

Type | Description
--- | ---
Extension | Extension that matches given key, if any.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="FindExtension" type="vsan:FindExtensionRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="FindExtensionResponse"> <complexType> <sequence> <element name="returnval" type="vsan:Extension" minOccurs="0"/> </sequence> </complexType> </element>

# GetPublicKey(getPublicKey)

Deprecated. As of VI 4.0, use trusted certificates and LoginExtensionBySubjectName or SetExtensionCertificate and LoginExtensionByCertificate.

Returns VirtualCenter Server public key.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.

Return Value

Type | Description
--- | ---
xsd:string | Public key of VirtualCenter Server, encoded in PEM (privacy-enhanced mail) format.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="GetPublicKey" type="vsan:GetPublicKeyRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="GetPublicKeyResponse"> <complexType> <sequence> <element name="returnval" type="xsd:string"/> </sequence> </complexType> </element>

# QueryExtensionIpAllocationUsage(queryExtensionIpAllocationUsage)

Query statistics about IP allocation usage, either system wide or for specified extensions.

Refer to IpPoolManager for details.

Required Privileges
  System.View
Since
  vSphere API 5.1

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extensionKeys* | xsd:string[] | List of extensions whose IP allocation is being queried. If no extension keys are specified then allocation data for all registered extensions are returned.

*Need not be set

Return Value

Type | Description
--- | ---
ExtensionManagerIpAllocationUsage[] | List of IP allocation usage.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="QueryExtensionIpAllocationUsage" type="vsan:QueryExtensionIpAllocationUsageRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="QueryExtensionIpAllocationUsageResponse"> <complexType> <sequence> <element name="returnval" type="vsan:ExtensionManagerIpAllocationUsage" minOccurs="0" maxOccurs="unbounded"/> </sequence> </complexType> </element>

# QueryManagedBy(queryManagedBy)

Find entities managed by an extension. These can be either virtual machines or vApps.

Required Privileges
  System.View
Since
  vSphere API 5.0

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extensionKey | xsd:string | Key of the extension to find managed entities for.

Return Value

Type | Description
--- | ---
ManagedObjectReference[] to a ManagedEntity[] | List of entities managed by the extension.

Faults

Type | Description
--- | ---
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="QueryManagedBy" type="vsan:QueryManagedByRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="QueryManagedByResponse"> <complexType> <sequence> <element name="returnval" type="vsan:ManagedObjectReference" minOccurs="0" maxOccurs="unbounded"/> </sequence> </complexType> </element>

# RegisterExtension(registerExtension)

Registers extension.

Required Privileges
  Extension.Register

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extension | Extension | Extension description to register.

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
InvalidArgument | Thrown if the Extension description is incomplete or an extension is already registered with the given unique key, or if the extension is an OVF extension and its section types overlap with other registered OVF extensions.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="RegisterExtension" type="vsan:RegisterExtensionRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="RegisterExtensionResponse"> <complexType/> </element>

# SetExtensionCertificate(setCertificate)

Update the stored authentication certificate for a specified extension. Updates the registration of the specified extension with the thumbprint of the X.509 client certificate provided over SSL handshake, or by the "certificatePem"argument. The thumbprint will be used to authenticate the extension during invocations of LoginExtensionByCertificate.

NOTE: No verification is performed on the received certificate, such as expiry or revocation.

This method will unset any public key or subject name associated with the extension.

Required Privileges
  Extension.Update
Since
  vSphere API 4.0

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extensionKey | xsd:string | Key of extension to update.
certificatePem* | xsd:string | PEM encoded certificate. If not specified, the certificate passed over SSL handshake is used.

*Need not be set

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
InvalidArgument | Thrown if the certificate described by "certificatePem" is not in PEM format, or could not be decoded to an X.509 certificate.
NoClientCertificate | Thrown if certificatePem is not specified, and no certificate was passed over SSL handshake.
NotFound | Thrown if an extension specified by "extensionKey" is not registered.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="SetExtensionCertificate" type="vsan:SetExtensionCertificateRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="SetExtensionCertificateResponse"> <complexType/> </element>

# SetPublicKey(setPublicKey)

Deprecated. As of VI 4.0, use trusted certificates and LoginExtensionBySubjectName or SetExtensionCertificate and LoginExtensionByCertificate.

Sets extension's public key.

This method will unset any subject name or certificate associated with the extension.

Required Privileges
  Extension.Update

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extensionKey | xsd:string | Key of extension to update.
publicKey | xsd:string | Public key of extension, encoded in PEM (privacy-enhanced mail) format.

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
InvalidArgument | Thrown if the public key is invalid.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="SetPublicKey" type="vsan:SetPublicKeyRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="SetPublicKeyResponse"> <complexType/> </element>

# UnregisterExtension(unregisterExtension)

Unregisters the specified extension if it exists.

Required Privileges
  Extension.Unregister

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extensionKey | xsd:string | Unique name of extension to unregister.

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
NotFound | Thrown if the specified extension is not registered.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="UnregisterExtension" type="vsan:UnregisterExtensionRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="UnregisterExtensionResponse"> <complexType/> </element>

# UpdateExtension(updateExtension)

If the key specified in the extension exists, the existing record is updated.

If the "subjectName" property of the Extension object has a value, and it is different from the existing value, this method will unset any public key or certificate associated with the extension.

Required Privileges
  Extension.Update

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the ExtensionManager used to make the method call.
extension | Extension | Updated extension description.

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
InvalidArgument | Thrown if the Extension description is incomplete or invalid, or if the extension is an OVF extension and its section types overlap with other registered OVF extensions.
NotFound | Thrown if the specified extension key is not registered.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="UpdateExtension" type="vsan:UpdateExtensionRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:vsan="urn:vsan" name="UpdateExtensionResponse"> <complexType/> </element>