---
title: Catalog.Kerberos.Principals
slug: ps/help/en_us/vtm/controlapi/catalogkerberosprincipals
docTags: 
createdAt: 2026-08-02T08:52:22.880Z
---

URI: http\://soap.zeus.com/zxtm/1.0/Catalog/Kerberos/Principals/

The Catalog.Kerberos.Principal interface allows management of Kerberos Principals. Using this interface, you can create, delete and rename Kerberos principals, and manage their configuration.

### Methods

### addKDCs( principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Add a host/port pair to the lists of KDCs, for each of the named principals

```bash
void addKDCs(
String[] principal_names
String[][] values
)
```

### addKDCsByLocation( location, principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Add a host/port pair to the lists of KDCs, for each of the named principals This is a location specific function, any action will operate on the specified location.

```bash
void addKDCsByLocation(
String location
String[] principal_names
String[][] values
)
```

### addPrincipal( principal\_names, principal\_parameters ) throws InvalidObjectName, InvalidInput, ObjectAlreadyExists, DeploymentError, LicenseError

Add new Kerberos principals.

```bash
void addPrincipal(
String[] principal_names
Catalog.Kerberos.Principals.PrincipalParameter[] principal_parameters
)
```

### copyPrincipal( principal\_names, new\_names ) throws ObjectAlreadyExists, InvalidObjectName, ObjectDoesNotExist, DeploymentError, LicenseError

Copy the named Kerberos principals.

```bash
void copyPrincipal(
String[] principal_names
String[] new_names
)
```

### deletePrincipal( principal\_names ) throws ObjectDoesNotExist, ObjectInUse, DeploymentError, LicenseError

Delete the named Kerberos principals.

```bash
void deletePrincipal(
String[] principal_names
)
```

### getKDCs( principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the explicit list of Kerberos KDCs, for each of the named principals

```bash
String[][] getKDCs(
String[] principal_names
)
```

### getKDCsByLocation( location, principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the explicit list of Kerberos KDCs, for each of the named principals This is a location specific function, any action will operate on the specified location.

```bash
String[][] getKDCsByLocation(
String location
String[] principal_names
)
```

### getKRB5Conf( principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the name of the optional Kerberos configuration file

```bash
String[] getKRB5Conf(
String[] principal_names
)
```

### getKRB5ConfByLocation( location, principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the name of the optional Kerberos configuration file This is a location specific function, any action will operate on the specified location.

```bash
String[] getKRB5ConfByLocation(
String location
String[] principal_names
)
```

### getKeytab( principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the name of the associated Kerberos keytab file

```bash
String[] getKeytab(
String[] principal_names
)
```

### getKeytabByLocation( location, principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the name of the associated Kerberos keytab file This is a location specific function, any action will operate on the specified location.

```bash
String[] getKeytabByLocation(
String location
String[] principal_names
)
```

### getPrincipalNames()

Get the names of all the configured Kerberos principals.

```bash
String[] getPrincipalNames()
```

### getRealm( principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the Kerberos realm

```bash
String[] getRealm(
String[] principal_names
)
```

### getRealmByLocation( location, principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the Kerberos realm This is a location specific function, any action will operate on the specified location.

```bash
String[] getRealmByLocation(
String location
String[] principal_names
)
```

### getService( principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the service name aspect of the Kerberos principal name the traffic manager should use to authenticate itself

```bash
String[] getService(
String[] principal_names
)
```

### getServiceByLocation( location, principal\_names ) throws ObjectDoesNotExist, LicenseError

Get the service name aspect of the Kerberos principal name the traffic manager should use to authenticate itself This is a location specific function, any action will operate on the specified location.

```bash
String[] getServiceByLocation(
String location
String[] principal_names
)
```

### removeKDCs( principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Remove a host/port pair from the lists of KDCs, for each of the named principals

```bash
void removeKDCs(
String[] principal_names
String[][] values
)
```

### removeKDCsByLocation( location, principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Remove a host/port pair from the lists of KDCs, for each of the named principals This is a location specific function, any action will operate on the specified location.

```bash
void removeKDCsByLocation(
String location
String[] principal_names
String[][] values
)
```

### renamePrincipal( principal\_names, new\_names ) throws ObjectAlreadyExists, ObjectDoesNotExist, InvalidObjectName, InvalidOperation, DeploymentError, LicenseError

Rename the named Kerberos principals.

```bash
void renamePrincipal(
String[] principal_names
String[] new_names
)
```

### setKDCs( principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the explicit list of Kerberos KDCs, for each of the named principals

```bash
void setKDCs(
String[] principal_names
String[][] values
)
```

### setKDCsByLocation( location, principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the explicit list of Kerberos KDCs, for each of the named principals This is a location specific function, any action will operate on the specified location.

```bash
void setKDCsByLocation(
String location
String[] principal_names
String[][] values
)
```

### setKRB5Conf( principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the name of the optional Kerberos configuration file

```bash
void setKRB5Conf(
String[] principal_names
String[] values
)
```

### setKRB5ConfByLocation( location, principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the name of the optional Kerberos configuration file This is a location specific function, any action will operate on the specified location.

```bash
void setKRB5ConfByLocation(
String location
String[] principal_names
String[] values
)
```

### setKeytab( principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the name of the associated Kerberos keytab file

```bash
void setKeytab(
String[] principal_names
String[] values
)
```

### setKeytabByLocation( location, principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the name of the associated Kerberos keytab file This is a location specific function, any action will operate on the specified location.

```bash
void setKeytabByLocation(
String location
String[] principal_names
String[] values
)
```

### setRealm( principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the Kerberos realm

```bash
void setRealm(
String[] principal_names
String[] values
)
```

### setRealmByLocation( location, principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the Kerberos realm This is a location specific function, any action will operate on the specified location.

```bash
void setRealmByLocation(
String location
String[] principal_names
String[] values
)
```

### setService( principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the service name aspect of the Kerberos principal name the traffic manager should use to authenticate itself

```bash
void setService(
String[] principal_names
String[] values
)
```

### setServiceByLocation( location, principal\_names, values ) throws ObjectDoesNotExist, InvalidInput, DeploymentError, LicenseError

Set the service name aspect of the Kerberos principal name the traffic manager should use to authenticate itself This is a location specific function, any action will operate on the specified location.

```bash
void setServiceByLocation(
String location
String[] principal_names
String[] values
)
```

### Structures

### Catalog.Kerberos.Principals.PrincipalParameter

This structure contains the required configuration values for a Kerberos principal.

```bash
struct Catalog.Kerberos.Principals.PrincipalParameter {
# The service name part of the Kerberos principal name the traffic manager
# should use to authenticate itself.
String service;
# The Kerberos realm where the principal belongs.
String realm;
# The name of the Kerberos keytab file containing suitable credentials to
# authenticate as the specified Kerberos principal.
String keytab;
}
```
