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

View Source

V1ServiceAccount()

Declaration
public V1ServiceAccount()
View Source

V1ServiceAccount(V1ServiceAccount)

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

Fields

View Source

KubeApiVersion

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

KubeGroup

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

KubeKind

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

KubePluralName

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

Properties

View Source

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
View Source

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?
View Source

EqualityContract

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

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>
View Source

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
View Source

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
View Source

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

View Source

Equals(object?)

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

Equals(V1ServiceAccount?)

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

GetHashCode()

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

PrintMembers(StringBuilder)

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

ToString()

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

Operators

View Source

operator ==(V1ServiceAccount?, V1ServiceAccount?)

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

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)
  • View Source
In this article
Back to top Generated by DocFX