<PackageReference Include="Azure.Storage.Common" Version="12.25.0" />

Constants

static class Constants
using System.Collections.Generic; namespace Azure.Storage { internal static class Constants { internal static class Errors { public const string InvalidVersionHeaderMessage = "The provided service version is not enabled on this storage account. Please see https://learn.microsoft.com/rest/api/storageservices/versioning-for-the-azure-storage-services for additional information.\n"; } internal static class ConnectionStrings { internal const int BlobEndpointPortNumber = 10000; internal const int QueueEndpointPortNumber = 10001; internal const int TableEndpointPortNumber = 10002; internal const string UseDevelopmentSetting = "UseDevelopmentStorage"; internal const string DevelopmentProxyUriSetting = "DevelopmentStorageProxyUri"; internal const string DefaultEndpointsProtocolSetting = "DefaultEndpointsProtocol"; internal const string AccountNameSetting = "AccountName"; internal const string AccountKeyNameSetting = "AccountKeyName"; internal const string AccountKeySetting = "AccountKey"; internal const string BlobEndpointSetting = "BlobEndpoint"; internal const string QueueEndpointSetting = "QueueEndpoint"; internal const string TableEndpointSetting = "TableEndpoint"; internal const string FileEndpointSetting = "FileEndpoint"; internal const string BlobSecondaryEndpointSetting = "BlobSecondaryEndpoint"; internal const string QueueSecondaryEndpointSetting = "QueueSecondaryEndpoint"; internal const string TableSecondaryEndpointSetting = "TableSecondaryEndpoint"; internal const string FileSecondaryEndpointSetting = "FileSecondaryEndpoint"; internal const string EndpointSuffixSetting = "EndpointSuffix"; internal const string SharedAccessSignatureSetting = "SharedAccessSignature"; internal const string DevStoreAccountName = "devstoreaccount1"; internal const string DevStoreAccountKey = "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw=="; internal const string SecondaryLocationAccountSuffix = "-secondary"; internal const string DefaultEndpointSuffix = "core.windows.net"; internal const string DefaultBlobHostnamePrefix = "blob"; internal const string DefaultQueueHostnamePrefix = "queue"; internal const string DefaultTableHostnamePrefix = "table"; internal const string DefaultFileHostnamePrefix = "file"; } internal static class HeaderNames { public const string XMsPrefix = "x-ms-"; public const string MetadataPrefix = "x-ms-meta-"; public const string ErrorCode = "x-ms-error-code"; public const string RequestId = "x-ms-request-id"; public const string ClientRequestId = "x-ms-client-request-id"; public const string Date = "x-ms-date"; public const string SharedKey = "SharedKey"; public const string Authorization = "Authorization"; public const string ContentEncoding = "Content-Encoding"; public const string ContentLanguage = "Content-Language"; public const string ContentLength = "Content-Length"; public const string ContentMD5 = "Content-MD5"; public const string ContentType = "Content-Type"; public const string IfModifiedSince = "If-Modified-Since"; public const string IfMatch = "If-Match"; public const string IfNoneMatch = "If-None-Match"; public const string IfUnmodifiedSince = "If-Unmodified-Since"; public const string Range = "Range"; public const string ContentRange = "Content-Range"; public const string VersionId = "x-ms-version-id"; public const string LeaseTime = "x-ms-lease-time"; public const string LeaseId = "x-ms-lease-id"; public const string LastModified = "Last-Modified"; public const string ETag = "ETag"; public const string CopySourceErrorCode = "x-ms-copy-source-error-code"; public const string Version = "x-ms-version"; } internal static class ErrorCodes { public const string InternalError = "InternalError"; public const string OperationTimedOut = "OperationTimedOut"; public const string ServerBusy = "ServerBusy"; public const string ContainerAlreadyExists = "ContainerAlreadyExists"; public const string BlobAlreadyExists = "BlobAlreadyExists"; public const string InvalidHeaderValue = "InvalidHeaderValue"; } internal static class Blob { internal static class Append { public const int Pre_2022_11_02_MaxAppendBlockBytes = 4194304; public const int MaxAppendBlockBytes = 104857600; public const int MaxBlocks = 50000; } internal static class Block { public const int DefaultConcurrentTransfersCount = 5; public const int DefaultInitalDownloadRangeSize = 268435456; public const int Pre_2019_12_12_MaxUploadBytes = 268435456; public const long MaxUploadBytes = 5242880000; public const int MaxDownloadBytes = 268435456; public const int Pre_2019_12_12_MaxStageBytes = 104857600; public const long MaxStageBytes = 4194304000; public const int MaxBlocks = 50000; } internal static class Page { public const int PageSizeBytes = 512; public const int MaxPageBlockBytes = 4194304; } internal static class Container { public const string Name = "Blob Container"; public const string RootName = "$root"; public const string LogsName = "$logs"; public const string WebName = "$web"; } internal static class Lease { public const int InfiniteLeaseDuration = -1; } public const int HttpsPort = 443; public const string UriSubDomain = "blob"; public const int QuickQueryDownloadSize = 4194304; public const string MetadataHeaderPrefix = "x-ms-meta-"; public const string ObjectReplicationRulesHeaderPrefix = "x-ms-or-"; } internal static class File { internal static class Lease { public const long InfiniteLeaseDuration = -1; } internal static class Errors { public const string ShareUsageBytesOverflow = "ShareUsageBytes exceeds int.MaxValue. Use ShareUsageInBytes instead."; public const string LeaseNotPresentWithFileOperation = "LeaseNotPresentWithFileOperation"; } internal static class Share { public const string Name = "Share"; } public const string UriSubDomain = "file"; public const string FileAttributesNone = "None"; public const string FileTimeNow = "Now"; public const string Preserve = "Preserve"; public const string Source = "Source"; public const string FilePermissionInherit = "Inherit"; public const int MaxFilePermissionHeaderSize = 8192; public const int MaxFileUpdateRange = 4194304; public const string FileTimeFormat = "yyyy'-'MM'-'dd'T'HH':'mm':'ss'.'fffffff'Z'"; public const string SnapshotParameterName = "sharesnapshot"; public const string SmbProtocol = "SMB"; public const string NfsProtocol = "NFS"; } internal static class DataLake { public const string BlobUriSuffix = "blob"; public const string BlobUriPeriodSuffix = ".blob."; public const string DfsUriSuffix = "dfs"; public const string DfsUriPeriodSuffix = ".dfs."; public const string ErrorKey = "error"; public const string ErrorCodeKey = "code"; public const string ErrorMessageKey = "message"; public const string AlreadyExists = "ContainerAlreadyExists"; public const string FilesystemNotFound = "FilesystemNotFound"; public const string PathNotFound = "PathNotFound"; public const string PathAlreadyExists = "PathAlreadyExists"; public const int DefaultConcurrentTransfersCount = 5; public const int Pre_2019_12_12_MaxAppendBytes = 104857600; public const long MaxAppendBytes = 4194304000; public const string IsDirectoryKey = "hdi_isFolder"; public const string FileSystemName = "FileSystem"; public const string DeletionId = "deletionid"; public const string DirectoryResourceType = "directory"; public const string EncryptionContextHeaderName = "x-ms-encryption-context"; public const string OwnerHeaderName = "x-ms-owner"; public const string GroupHeaderName = "x-ms-group"; public const string PermissionsHeaderName = "x-ms-permissions"; public const string AclHeaderName = "x-ms-acl"; } internal static class Queue { public const int MaxMessagesDequeue = 32; public const int QueueMessageMaxBytes = 65536; public const int StatusCodeNoContent = 204; public const string MessagesUri = "messages"; public const string UriSubDomain = "queue"; public const string QueueTraitsMetadata = "metadata"; } internal static class ChangeFeed { internal static class Event { public const string Topic = "topic"; public const string Subject = "subject"; public const string EventType = "eventType"; public const string EventTime = "eventTime"; public const string EventId = "id"; public const string Data = "data"; public const string SchemaVersion = "schemaVersion"; public const string MetadataVersion = "metadataVersion"; } internal static class EventData { public const string Api = "api"; public const string ClientRequestId = "clientRequestId"; public const string RequestId = "requestId"; public const string Etag = "etag"; public const string ContentType = "contentType"; public const string ContentLength = "contentLength"; public const string BlobType = "blobType"; public const string BlobVersionLower = "blobVersion"; public const string ContainerVersion = "containerVersion"; public const string BlobTier = "blobTier"; public const string BlockBlob = "BlockBlob"; public const string PageBlob = "PageBlob"; public const string AppendBlob = "AppendBlob"; public const string ContentOffset = "contentOffset"; public const string DestinationUrl = "destinationUrl"; public const string SourceUrl = "sourceUrl"; public const string Url = "url"; public const string Recursive = "recursive"; public const string Sequencer = "sequencer"; public const string PreviousInfo = "previousInfo"; public const string Snapshot = "snapshot"; public const string BlobPropertiesUpdated = "blobPropertiesUpdated"; public const string AsyncOperationInfo = "asyncOperationInfo"; public const string Current = "current"; public const string Previous = "previous"; public const string DestinationTier = "DestinationTier"; public const string WasAsyncOperation = "WasAsyncOperation"; public const string CopyId = "CopyId"; public const string SoftDeletedSnapshot = "SoftDeleteSnapshot"; public const string WasBlobSoftDeleted = "WasBlobSoftDeleted"; public const string BlobVersion = "BlobVersion"; public const string LastVersion = "LastVersion"; public const string PreviousTier = "PreviousTier"; public const string BlobTagsUpdated = "blobTagsUpdated"; } public const string ChangeFeedContainerName = "$blobchangefeed"; public const string SegmentPrefix = "idx/segments/"; public const string InitalizationManifestPath = "/0000/"; public const string InitalizationSegment = "1601"; public const string MetaSegmentsPath = "meta/segments.json"; public const long ChunkBlockDownloadSize = 1048576; public const int DefaultPageSize = 5000; public const int LazyLoadingBlobStreamBlockSize = 3072; } internal static class QuickQuery { public const string SqlQueryType = "SQL"; public const string Data = "data"; public const string BytesScanned = "bytesScanned"; public const string TotalBytes = "totalBytes"; public const string Fatal = "fatal"; public const string Name = "name"; public const string Description = "description"; public const string Position = "position"; public const string DataRecordName = "com.microsoft.azure.storage.queryBlobContents.resultData"; public const string ProgressRecordName = "com.microsoft.azure.storage.queryBlobContents.progress"; public const string ErrorRecordName = "com.microsoft.azure.storage.queryBlobContents.error"; public const string EndRecordName = "com.microsoft.azure.storage.queryBlobContents.end"; public const string ArrowFieldTypeInt64 = "int64"; public const string ArrowFieldTypeBool = "bool"; public const string ArrowFieldTypeTimestamp = "timestamp[ms]"; public const string ArrowFieldTypeString = "string"; public const string ArrowFieldTypeDouble = "double"; public const string ArrowFieldTypeDecimal = "decimal"; } internal static class Sas { internal static class Permissions { public const char Read = 'r'; public const char Write = 'w'; public const char Delete = 'd'; public const char DeleteBlobVersion = 'x'; public const char List = 'l'; public const char Add = 'a'; public const char Update = 'u'; public const char Process = 'p'; public const char Create = 'c'; public const char Tag = 't'; public const char FilterByTags = 'f'; public const char Move = 'm'; public const char Execute = 'e'; public const char SetImmutabilityPolicy = 'i'; public const char ManageOwnership = 'o'; public const char ManageAccessControl = 'p'; public const char PermanentDelete = 'y'; } internal static class Parameters { public const string Version = "sv"; public const string VersionUpper = "SV"; public const string Services = "ss"; public const string ServicesUpper = "SS"; public const string ResourceTypes = "srt"; public const string ResourceTypesUpper = "SRT"; public const string Protocol = "spr"; public const string ProtocolUpper = "SPR"; public const string StartTime = "st"; public const string StartTimeUpper = "ST"; public const string ExpiryTime = "se"; public const string ExpiryTimeUpper = "SE"; public const string IPRange = "sip"; public const string IPRangeUpper = "SIP"; public const string Identifier = "si"; public const string IdentifierUpper = "SI"; public const string Resource = "sr"; public const string ResourceUpper = "SR"; public const string Permissions = "sp"; public const string PermissionsUpper = "SP"; public const string Signature = "sig"; public const string SignatureUpper = "SIG"; public const string KeyObjectId = "skoid"; public const string KeyObjectIdUpper = "SKOID"; public const string KeyTenantId = "sktid"; public const string KeyTenantIdUpper = "SKTID"; public const string KeyStart = "skt"; public const string KeyStartUpper = "SKT"; public const string KeyExpiry = "ske"; public const string KeyExpiryUpper = "SKE"; public const string KeyService = "sks"; public const string KeyServiceUpper = "SKS"; public const string KeyVersion = "skv"; public const string KeyVersionUpper = "SKV"; public const string CacheControl = "rscc"; public const string CacheControlUpper = "RSCC"; public const string ContentDisposition = "rscd"; public const string ContentDispositionUpper = "RSCD"; public const string ContentEncoding = "rsce"; public const string ContentEncodingUpper = "RSCE"; public const string ContentLanguage = "rscl"; public const string ContentLanguageUpper = "RSCL"; public const string ContentType = "rsct"; public const string ContentTypeUpper = "RSCT"; public const string PreauthorizedAgentObjectId = "saoid"; public const string PreauthorizedAgentObjectIdUpper = "SAOID"; public const string AgentObjectId = "suoid"; public const string AgentObjectIdUpper = "SUOID"; public const string CorrelationId = "scid"; public const string CorrelationIdUpper = "SCID"; public const string DirectoryDepth = "sdd"; public const string DirectoryDepthUpper = "SDD"; public const string EncryptionScope = "ses"; public const string EncryptionScopeUpper = "SES"; } internal static class Resource { public const string BlobSnapshot = "bs"; public const string BlobVersion = "bv"; public const string Blob = "b"; public const string Container = "c"; public const string File = "f"; public const string Share = "s"; public const string Directory = "d"; } internal static class AccountServices { public const char Blob = 'b'; public const char Queue = 'q'; public const char File = 'f'; public const char Table = 't'; } internal static class AccountResources { public const char Service = 's'; public const char Container = 'c'; public const char Object = 'o'; } public static readonly List<char> ValidPermissionsInOrder = new List<char> { 'r', 'a', 'c', 'w', 'd', 'x', 'y', 'l', 't', 'u', 'p', 'f', 'm', 'e', 'i' }; internal static readonly int[] PathStylePorts = new int[20] { 10000, 10001, 10002, 10003, 10004, 10100, 10101, 10102, 10103, 10104, 11000, 11001, 11002, 11003, 11004, 11100, 11101, 11102, 11103, 11104 }; } internal static class ClientSideEncryption { internal static class V2 { public const int EncryptionRegionDataSize = 4194304; public const int NonceSize = 12; public const int TagSize = 16; public const int EncryptionRegionTotalSize = 4194332; public const int WrappedDataVersionLength = 8; } public const string HttpMessagePropertyKeyV1 = "Azure.Storage.StorageTelemetryPolicy.ClientSideEncryption.V1"; public const string HttpMessagePropertyKeyV2 = "Azure.Storage.StorageTelemetryPolicy.ClientSideEncryption.V2"; public const string AgentMetadataKey = "EncryptionLibrary"; public const string AesCbcPkcs5Padding = "AES/CBC/PKCS5Padding"; public const string AesCbcNoPadding = "AES/CBC/NoPadding"; public const string EncryptionDataKey = "encryptiondata"; public const string EncryptionMode = "FullBlob"; public const int EncryptionBlockSize = 16; public const int EncryptionKeySizeBits = 256; public const string XMsRange = "x-ms-range"; public const string BCRYPT_AES_ALGORITHM = "AES"; public const string BCRYPT_CHAIN_MODE_GCM = "ChainingModeGCM"; public const string BCRYPT_CHAINING_MODE = "ChainingMode"; internal const string BCryptdll = "BCrypt.dll"; } internal static class Xml { internal const string Code = "Code"; internal const string Message = "Message"; } internal static class GeoRedundantRead { internal const string AlternateHostKey = "AlternateHostKey"; internal const string ResourceNotReplicated = "ResourceNotReplicated"; } internal static class HttpStatusCode { internal const int NotFound = 404; internal const int NotModified = 304; } internal static class ServerTimeout { internal const string HttpMessagePropertyKey = "Azure.Storage.StorageServerTimeoutPolicy.Timeout"; internal const string QueryParameterKey = "timeout"; } internal static class CopyHttpAuthorization { internal static readonly string[] Scopes = new string[1] { "https://storage.azure.com/.default" }; internal const string BearerScheme = "Bearer"; } public const int KB = 1024; public const int MB = 1048576; public const int GB = 1073741824; public const long TB = 1099511627776; public const int Base16 = 16; public const int MaxReliabilityRetries = 5; public const int MaxIdleTimeMs = 120000; public const string DefaultSasVersion = "2025-11-05"; public const int MaxHashRequestDownloadRange = 4194304; public const int DefaultBufferSize = 4194304; public const int LargeBufferSize = 8388608; public const int LargeUploadThreshold = 104857600; public const int DefaultStreamingDownloadSize = 4194304; public const int DefaultStreamCopyBufferSize = 81920; public const int DefaultDownloadCopyBufferSize = 16384; public const int StorageCrc64SizeInBytes = 8; public const int MD5SizeInBytes = 16; public const bool DefaultTrimBlobNameSlashes = true; public const string CloseAllHandles = "*"; public const string Wildcard = "*"; public const string BlockNameFormat = "Block_{0:D5}"; public const string SasTimeFormatSeconds = "yyyy-MM-ddTHH:mm:ssZ"; public const string SasTimeFormatSubSeconds = "yyyy-MM-ddTHH:mm:ss.fffffffZ"; public const string SasTimeFormatMinutes = "yyyy-MM-ddTHH:mmZ"; public const string SasTimeFormatDays = "yyyy-MM-dd"; public const string SnapshotParameterName = "snapshot"; public const string VersionIdParameterName = "versionid"; public const string ShareSnapshotParameterName = "sharesnapshot"; public const string Https = "https"; public const string Http = "http"; public const string PercentSign = "%"; public const string EncodedPercentSign = "%25"; public const string QueryDelimiter = "?"; public const string PathBackSlashDelimiter = "/"; public const string FalseName = "false"; public const string TrueName = "true"; public const string ErrorCode = "Code"; public const string ErrorCodeLower = "code"; public const string ErrorMessage = "Message"; public const string ErrorMessageLower = "message"; public const string HeaderName = "HeaderName"; public const string CommaString = ","; public const char CommaChar = ','; public const string ContentTypeApplicationXml = "application/xml"; public const string ContentTypeApplicationJson = "application/json"; public const string ErrorPropertyKey = "error"; public const string DetailPropertyKey = "detail"; public const string MessagePropertyKey = "message"; public const string CodePropertyKey = "code"; public const string Iso8601Format = "yyyy'-'MM'-'dd'T'HH':'mm':'ssZ"; public const string DisableRequestConditionsValidationSwitchName = "Azure.Storage.DisableRequestConditionsValidation"; public const string DisableRequestConditionsValidationEnvVar = "AZURE_STORAGE_DISABLE_REQUEST_CONDITIONS_VALIDATION"; public const string DisableExpectContinueHeaderSwitchName = "Azure.Storage.DisableExpectContinueHeader"; public const string DisableExpectContinueHeaderEnvVar = "AZURE_STORAGE_DISABLE_EXPECT_CONTINUE_HEADER"; public const string DefaultScope = "/.default"; } }