Show / Hide Table of Contents

Class V1ServiceAccount

ServiceAccount binds together: * a name, understood by users, and perhaps by peripheral systems, for an identity * a principal that can be authenticated and authorized * a set of secrets

Inheritance
object
V1ServiceAccount
Implements
IKubernetesObject<V1ObjectMeta>
IKubernetesObject
IMetadata<V1ObjectMeta>
IEquatable<V1ServiceAccount>
Inherited Members
object.GetType()
object.MemberwiseClone()
object.Equals(object, object)
object.ReferenceEquals(object, object)
Namespace: k8s.Models
Assembly: KubernetesClient.dll
Syntax
[KubernetesEntity(Group = "", Kind = "ServiceAccount", ApiVersion = "v1", PluralName = "serviceaccounts")]
public record V1ServiceAccount : IKubernetesObject<V1ObjectMeta>, IKubernetesObject, IMetadata<V1ObjectMeta>, IEquatable<V1ServiceAccount>

Constructors

V1ServiceAccount()

Declaration
public V1ServiceAccount()

V1ServiceAccount(V1ServiceAccount)

Declaration
protected V1ServiceAccount(V1ServiceAccount original)
Parameters
Type Name Description
V1ServiceAccount original

Fields

KubeApiVersion

Declaration
public const string KubeApiVersion = "v1"
Field Value
Type Description
string

KubeGroup

Declaration
public const string KubeGroup = ""
Field Value
Type Description
string

KubeKind

Declaration
public const string KubeKind = "ServiceAccount"
Field Value
Type Description
string

KubePluralName

Declaration
public const string KubePluralName = "serviceaccounts"
Field Value
Type Description
string

Properties

ApiVersion

APIVersion defines the versioned schema of this representation of an object. Servers should convert recognized schemas to the latest internal value, and may reject unrecognized values. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#resources

Declaration
[JsonPropertyName("apiVersion")]
public string ApiVersion { get; set; }
Property Value
Type Description
string

AutomountServiceAccountToken

AutomountServiceAccountToken indicates whether pods running as this service account should have an API token automatically mounted. Can be overridden at the pod level.

Declaration
[JsonPropertyName("automountServiceAccountToken")]
public bool? AutomountServiceAccountToken { get; set; }
Property Value
Type Description
bool?

EqualityContract

Declaration
protected virtual Type EqualityContract { get; }
Property Value
Type Description
Type

ImagePullSecrets

ImagePullSecrets is a list of references to secrets in the same namespace to use for pulling any images in pods that reference this ServiceAccount. ImagePullSecrets are distinct from Secrets because Secrets can be mounted in the pod, but ImagePullSecrets are only accessed by the kubelet. More info: https://kubernetes.io/docs/concepts/containers/images/#specifying-imagepullsecrets-on-a-pod

Declaration
[JsonPropertyName("imagePullSecrets")]
public IList<V1LocalObjectReference> ImagePullSecrets { get; set; }
Property Value
Type Description
IList<V1LocalObjectReference>

Kind

Kind is a string value representing the REST resource this object represents. Servers may infer this from the endpoint the client submits requests to. Cannot be updated. In CamelCase. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#types-kinds

Declaration
[JsonPropertyName("kind")]
public string Kind { get; set; }
Property Value
Type Description
string

Metadata

Standard object's metadata. More info: https://git.k8s.io/community/contributors/devel/sig-architecture/api-conventions.md#metadata

Declaration
[JsonPropertyName("metadata")]
public V1ObjectMeta Metadata { get; set; }
Property Value
Type Description
V1ObjectMeta

Secrets

Secrets is a list of the secrets in the same namespace that pods running using this ServiceAccount are allowed to use. Pods are only limited to this list if this service account has a "kubernetes.io/enforce-mountable-secrets" annotation set to "true". The "kubernetes.io/enforce-mountable-secrets" annotation is deprecated since v1.32. Prefer separate namespaces to isolate access to mounted secrets. This field should not be used to find auto-generated service account token secrets for use outside of pods. Instead, tokens can be requested directly using the TokenRequest API, or service account token secrets can be manually created. More info: https://kubernetes.io/docs/concepts/configuration/secret

Declaration
[JsonPropertyName("secrets")]
public IList<V1ObjectReference> Secrets { get; set; }
Property Value
Type Description
IList<V1ObjectReference>

Methods

Equals(object?)

Declaration
public override bool Equals(object? obj)
Parameters
Type Name Description
object obj
Returns
Type Description
bool
Overrides
object.Equals(object)

Equals(V1ServiceAccount?)

Declaration
public virtual bool Equals(V1ServiceAccount? other)
Parameters
Type Name Description
V1ServiceAccount other
Returns
Type Description
bool

GetHashCode()

Declaration
public override int GetHashCode()
Returns
Type Description
int
Overrides
object.GetHashCode()

PrintMembers(StringBuilder)

Declaration
protected virtual bool PrintMembers(StringBuilder builder)
Parameters
Type Name Description
StringBuilder builder
Returns
Type Description
bool

ToString()

Declaration
public override string ToString()
Returns
Type Description
string
Overrides
object.ToString()

Operators

operator ==(V1ServiceAccount?, V1ServiceAccount?)

Declaration
public static bool operator ==(V1ServiceAccount? left, V1ServiceAccount? right)
Parameters
Type Name Description
V1ServiceAccount left
V1ServiceAccount right
Returns
Type Description
bool

operator !=(V1ServiceAccount?, V1ServiceAccount?)

Declaration
public static bool operator !=(V1ServiceAccount? left, V1ServiceAccount? right)
Parameters
Type Name Description
V1ServiceAccount left
V1ServiceAccount right
Returns
Type Description
bool

Implements

IKubernetesObject<TMetadata>
IKubernetesObject
IMetadata<T>
IEquatable<T>

Extension Methods

ModelExtensions.ApiGroup(IKubernetesObject)
ModelExtensions.ApiGroupAndVersion(IKubernetesObject)
ModelExtensions.ApiGroupVersion(IKubernetesObject)
ModelExtensions.GetApiGroupAndVersion(IKubernetesObject, out string, out string)
ModelExtensions.AddFinalizer(IMetadata<V1ObjectMeta>, string)
ModelExtensions.AddOwnerReference(IMetadata<V1ObjectMeta>, V1OwnerReference)
ModelExtensions.Annotations(IMetadata<V1ObjectMeta>)
ModelExtensions.CreationTimestamp(IMetadata<V1ObjectMeta>)
ModelExtensions.DeletionTimestamp(IMetadata<V1ObjectMeta>)
ModelExtensions.EnsureMetadata(IMetadata<V1ObjectMeta>)
ModelExtensions.Finalizers(IMetadata<V1ObjectMeta>)
ModelExtensions.FindOwnerReference(IMetadata<V1ObjectMeta>, Predicate<V1OwnerReference>)
ModelExtensions.FindOwnerReference(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.Generation(IMetadata<V1ObjectMeta>)
ModelExtensions.GetAnnotation(IMetadata<V1ObjectMeta>, string)
ModelExtensions.GetController(IMetadata<V1ObjectMeta>)
ModelExtensions.GetLabel(IMetadata<V1ObjectMeta>, string)
ModelExtensions.GetOwnerReference(IMetadata<V1ObjectMeta>, Predicate<V1OwnerReference>)
ModelExtensions.GetOwnerReference(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.HasFinalizer(IMetadata<V1ObjectMeta>, string)
ModelExtensions.IsOwnedBy(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.Labels(IMetadata<V1ObjectMeta>)
ModelExtensions.Name(IMetadata<V1ObjectMeta>)
ModelExtensions.Namespace(IMetadata<V1ObjectMeta>)
ModelExtensions.OwnerReferences(IMetadata<V1ObjectMeta>)
ModelExtensions.RemoveFinalizer(IMetadata<V1ObjectMeta>, string)
ModelExtensions.RemoveOwnerReference(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.RemoveOwnerReferences(IMetadata<V1ObjectMeta>, Predicate<V1OwnerReference>)
ModelExtensions.RemoveOwnerReferences(IMetadata<V1ObjectMeta>, IKubernetesObject<V1ObjectMeta>)
ModelExtensions.ResourceVersion(IMetadata<V1ObjectMeta>)
ModelExtensions.SetAnnotation(IMetadata<V1ObjectMeta>, string, string)
ModelExtensions.SetLabel(IMetadata<V1ObjectMeta>, string, string)
ModelExtensions.Uid(IMetadata<V1ObjectMeta>)
Extensions.GetKubernetesTypeMetadata<T>(T)
Extensions.Initialize<T>(T)
In this article
Back to top Generated by DocFX