Skip to main content

Kerberos Server Profile Models

Models for Kerberos server profile objects in Strata Cloud Manager, defining KDC server configurations for Kerberos-based authentication.

Overview​

The Kerberos Server Profile models support the following key attributes:

  • Profile name and container assignment
  • List of Kerberos KDC servers with host and port configuration

Base Models​

KerberosServerProfileBaseModel​

The base model contains fields common to all CRUD operations.

FieldTypeRequiredDescription
namestrYesProfile name
serverList[KerberosServer]NoList of Kerberos servers
folderstrNo*Folder in which the resource is defined
snippetstrNo*Snippet in which the resource is defined
devicestrNo*Device in which the resource is defined

* Exactly one of folder, snippet, or device is required.

KerberosServerProfileCreateModel​

Inherits from KerberosServerProfileBaseModel and adds container validation ensuring exactly one of folder, snippet, or device is provided.

KerberosServerProfileUpdateModel​

Inherits from KerberosServerProfileBaseModel with an additional required field:

FieldTypeRequiredDescription
idUUIDYesThe unique identifier of the profile

KerberosServerProfileResponseModel​

Inherits from KerberosServerProfileBaseModel with an additional field:

FieldTypeRequiredDescription
idUUIDYesThe unique identifier of the profile
note

The response model uses extra="ignore" to handle any additional fields returned by the API.

Component Models​

KerberosServer​

Represents a single Kerberos server entry.

FieldTypeRequiredDescription
namestrNoServer name
hoststrNoServer hostname or IP address
portintNoServer port number (1-65535)

Usage Examples​

Creating a Kerberos Server Profile​

from scm.models.identity.kerberos_server_profiles import (
KerberosServerProfileCreateModel,
KerberosServer,
)

# Create model instance
profile = KerberosServerProfileCreateModel(
name="corp-kerberos",
folder="Texas",
server=[
KerberosServer(
name="kdc-primary",
host="kdc.example.com",
port=88
)
]
)

# Use with SDK
payload = profile.model_dump(exclude_unset=True)
result = client.kerberos_server_profile.create(payload)

Parsing a Kerberos Server Profile Response​

from scm.models.identity.kerberos_server_profiles import (
KerberosServerProfileResponseModel,
)

# Parse API response
response = KerberosServerProfileResponseModel(**api_response)
print(f"Name: {response.name}")
if response.server:
for server in response.server:
print(f" Server: {server.name} ({server.host}:{server.port})")