Azure Key Vault 비밀 정보About Azure Key Vault secrets

Key Vault는 암호 및 데이터베이스 연결 문자열과 같은 안전한 일반 비밀 스토리지를 제공합니다.Key Vault provides secure storage of generic secrets, such as passwords and database connection strings.

개발자의 관점에서 Key Vault API는 비밀 값을 수락하고 문자열로 반환합니다.From a developer's perspective, Key Vault APIs accept and return secret values as strings. 내부적으로 Key Vault는 비밀을 8진수(8비트 바이트) 시퀀스로 저장 및 관리하며, 각각의 최대 크기는 25k 바이트입니다.Internally, Key Vault stores and manages secrets as sequences of octets (8-bit bytes), with a maximum size of 25k bytes each. Key Vault 서비스는 비밀에 대한 의미 체계를 제공하지 않습니다.The Key Vault service doesn't provide semantics for secrets. 단순히 데이터를 수락하고, 암호화하고, 저장하고, 비밀 식별자("id")를 반환할 뿐입니다.It merely accepts the data, encrypts it, stores it, and returns a secret identifier ("id"). 식별자는 나중에 비밀을 검색하는 데 사용할 수 있습니다.The identifier can be used to retrieve the secret at a later time.

매우 중요한 데이터의 경우 클라이언트가 데이터에 대한 추가 보호 레이어를 고려해야 합니다.For highly sensitive data, clients should consider additional layers of protection for data. 예를 들어 별도의 보호 키를 사용하여 데이터를 암호화한 후 Key Vault에 스토리지합니다.Encrypting data using a separate protection key prior to storage in Key Vault is one example.

Key Vault는 비밀에 대한 contentType 필드도 지원합니다.Key Vault also supports a contentType field for secrets. 클라이언트는 비밀 데이터에 대해 검색 시 해당 데이터를 해석하는 데 도움이 되는 콘텐츠 형식을 지정할 수 있습니다.Clients may specify the content type of a secret to assist in interpreting the secret data when it's retrieved. 이 필드의 최대 길이는 255자이며,The maximum length of this field is 255 characters. 미리 정의된 값이 없습니다.There are no pre-defined values. 비밀 데이터를 해석하기 위한 힌트로 사용하는 것이 좋습니다.The suggested usage is as a hint for interpreting the secret data. 예를 들어 구현에서는 암호와 인증서를 모두 비밀로 저장한 다음, 이 필드를 사용하여 구분할 수 있습니다.For instance, an implementation may store both passwords and certificates as secrets, then use this field to differentiate. 미리 정의된 값이 없습니다.There are no predefined values.

암호화Encryption

Key Vault의 모든 비밀은 암호화된 상태로 저장됩니다.All secrets in your Key Vault are stored encrypted. 이 암호화는 투명하며 사용자의 작업이 필요하지 않습니다.This encryption is transparent, and requires no action from the user. Azure Key Vault 서비스는 비밀을 추가할 때 암호화하고 읽을 때 암호를 자동으로 해독합니다.The Azure Key Vault service encrypts your secrets when you add them, and decrypts them automatically when you read them. 암호화 키는 각 키 자격 증명 모음에 대해 고유합니다.The encryption key is unique to each key vault.

비밀 특성Secret attributes

비밀 데이터 외에도 지정할 수 있는 특성은 다음과 같습니다.In addition to the secret data, the following attributes may be specified:

  • exp: IntDate, 선택 사항, 기본값은 forever 입니다.exp: IntDate, optional, default is forever. exp(만료 시간) 특성은 특정 조건에 있는 경우를 제외하고는 비밀 데이터를 검색하지 않아야 하는 만료 시간 또는 그 이후를 식별합니다.The exp (expiration time) attribute identifies the expiration time on or after which the secret data SHOULD NOT be retrieved, except in particular situations. 이 필드는 키 자격 증명 모음 서비스의 사용자에게 특정 비밀이 사용되지 않음을 알리므로 오직 정보 제공 을 목적으로 합니다.This field is for informational purposes only as it informs users of key vault service that a particular secret may not be used. 이 값은 IntDate 값이 포함된 숫자여야 합니다.Its value MUST be a number containing an IntDate value.
  • nbf: IntDate, 선택 사항, 기본값은 now 입니다.nbf: IntDate, optional, default is now. nbf(이전이 아님) 특성은 특정 조건에 있는 경우를 제외하고는 비밀 데이터를 검색하지 않아야 하는 시간 이전을 식별합니다.The nbf (not before) attribute identifies the time before which the secret data SHOULD NOT be retrieved, except in particular situations. 이 필드는 오직 정보 제공 을 목적으로 합니다.This field is for informational purposes only. 이 값은 IntDate 값이 포함된 숫자여야 합니다.Its value MUST be a number containing an IntDate value.
  • enabled: 부울, 선택 사항, 기본값은 true 입니다.enabled: boolean, optional, default is true. 이 특성은 비밀 데이터이 검색 가능 여부를 지정합니다.This attribute specifies whether the secret data can be retrieved. enabled 특성은 nbfexp 사이에 작업이 발생하는 경우 nbfexp 와 함께 사용되며, enabled가 true 로 설정된 경우에만 허용됩니다.The enabled attribute is used in conjunction with nbf and exp when an operation occurs between nbf and exp, it will only be permitted if enabled is set to true. 특정 조건에 있는 경우를 제외하고는 nbfexp 시간 범위에 속하지 않은 작업이 자동으로 허용되지 않습니다.Operations outside the nbf and exp window are automatically disallowed, except in particular situations.

비밀 특성이 포함된 모든 응답에 포함되는 추가 읽기 전용 특성이 있습니다.There are additional read-only attributes that are included in any response that includes secret attributes:

  • created: IntDate, 선택 사항입니다.created: IntDate, optional. created 특성은 이 버전의 비밀을 만든 시점을 나타냅니다.The created attribute indicates when this version of the secret was created. 이 특성을 추가하기 전에 만든 비밀에 대한 값은 null입니다.This value is null for secrets created prior to the addition of this attribute. 이 값은 IntDate 값이 포함된 숫자여야 합니다.Its value must be a number containing an IntDate value.
  • updated: IntDate, 선택 사항입니다.updated: IntDate, optional. updated 특성은 이 버전의 비밀을 업데이트한 시점을 나타냅니다.The updated attribute indicates when this version of the secret was updated. 이 특성을 추가하기 전에 마지막으로 업데이트한 비밀에 대한 값은 null입니다.This value is null for secrets that were last updated prior to the addition of this attribute. 이 값은 IntDate 값이 포함된 숫자여야 합니다.Its value must be a number containing an IntDate value.

각 키 자격 증명 모음 개체 유형의 일반 특성에 대한 자세한 내용은 Azure Key Vault 키, 비밀 및 인증서 개요를 참조하세요.For information on common attributes for each key vault object type, see Azure Key Vault keys, secrets and certificates overview

날짜 및 시간 제어 작업Date-time controlled operations

nbf / exp 시간 범위에 속하지 않은 비밀의 get 작업은 아직 유효하지 않은 비밀과 만료된 비밀에 대해 작동합니다.A secret's get operation will work for not-yet-valid and expired secrets, outside the nbf / exp window. 테스트를 위해 비밀의 get 작업 호출을 아직 유효하지 않은 비밀에 사용할 수 있습니다.Calling a secret's get operation, for a not-yet-valid secret, can be used for test purposes. 복구 작업을 위해 만료된 비밀을 검색(get)할 수 있습니다.Retrieving (get ting) an expired secret, can be used for recovery operations.

비밀 액세스 제어Secret access control

Key Vault에서 관리되는 비밀에 대한 액세스 제어는 해당 비밀을 포함하는 Key Vault 수준에서 제공됩니다.Access Control for secrets managed in Key Vault, is provided at the level of the Key Vault that contains those secrets. 비밀에 대한 액세스 제어 정책은 동일한 Key Vault의 키에 대한 액세스 제어 정책과 다릅니다.The access control policy for secrets, is distinct from the access control policy for keys in the same Key Vault. 사용자는 비밀을 보관할 하나 이상의 자격 증명 모음을 만들 수 있으며, 시나리오에 따라 비밀을 적절하게 세분화하고 관리해야 합니다.Users may create one or more vaults to hold secrets, and are required to maintain scenario appropriate segmentation and management of secrets.

자격 증명 모음의 비밀 액세스 제어 항목에서 보안 주체별로 사용할 수 있고 비밀 개체에 허용되는 작업과 매우 비슷한 권한은 다음과 같습니다.The following permissions can be used, on a per-principal basis, in the secrets access control entry on a vault, and closely mirror the operations allowed on a secret object:

  • 비밀 관리 작업에 필요한 권한Permissions for secret management operations

    • get: 비밀 읽기get: Read a secret
    • list: Key Vault에 저장된 비밀 또는 비밀 버전 나열list: List the secrets or versions of a secret stored in a Key Vault
    • set: 비밀 만들기set: Create a secret
    • delete: 비밀 삭제delete: Delete a secret
    • recover: 삭제된 비밀 복구recover: Recover a deleted secret
    • backup: 비밀을 키 자격 증명 모음에 백업backup: Back up a secret in a key vault
    • restore: 키 자격 증명 모음에 백업된 비밀 복원restore: Restore a backed up secret to a key vault
  • 권한 있는 작업에 필요한 권한Permissions for privileged operations

    • purge: 삭제된 비밀 제거(영구적으로 삭제)purge: Purge (permanently delete) a deleted secret

비밀을 사용하는 방법에 대한 자세한 내용은 Key Vault REST API 참조에서 비밀 작업을 참조하세요.For more information on working with secrets, see Secret operations in the Key Vault REST API reference. 권한 설정에 대한 내용은 자격 증명 모음 - 만들기 또는 업데이트자격 증명 모음 - 액세스 정책 업데이트를 참조하세요.For information on establishing permissions, see Vaults - Create or Update and Vaults - Update Access Policy.

Key Vault에서 액세스를 제어하는 방법 가이드:How-to guides to control access in Key Vault:

비밀 태그Secret tags

애플리케이션 관련 메타데이터를 태그 형식으로 추가로 지정할 수 있습니다.You can specify additional application-specific metadata in the form of tags. Key Vault는 최대 15개의 태그를 지원하며, 각 태그는 256자 이름과 256자의 값을 가질 수 있습니다.Key Vault supports up to 15 tags, each of which can have a 256 character name and a 256 character value.

참고

태그는 list 또는 get 권한이 있는 경우 호출자가 읽을 수 있습니다.Tags are readable by a caller if they have the list or get permission.

Azure Storage 계정 키 관리Azure Storage account key management

Key Vault는 Azure 스토리지 계정 키를 관리할 수 있습니다.Key Vault can manage Azure storage account keys:

  • 내부적으로 Key Vault는 키를 Azure Storage 계정과 함께 나열(동기화)할 수 있습니다.Internally, Key Vault can list (sync) keys with an Azure storage account.
  • Key Vault는 정기적으로 키를 다시 생성(회전)합니다.Key Vault regenerates (rotates) the keys periodically.
  • 키 값은 호출자에게 응답으로 반환되지 않습니다.Key values are never returned in response to caller.
  • Key Vault는 스토리지 계정과 클래식 스토리지 계정의 키를 모두 관리합니다.Key Vault manages keys of both storage accounts and classic storage accounts.

자세한 내용은 다음을 참조하십시오.For more information, see:

스토리지 계정 액세스 제어Storage account access control

다음 권한은 관리되는 스토리지 계정에서 작업을 수행할 사용자 또는 애플리케이션 보안 주체에 권한을 부여할 때 사용할 수 있습니다.The following permissions can be used when authorizing a user or application principal to perform operations on a managed storage account:

  • 관리되는 스토리지 계정 및 SaS 정의 작업에 대한 권한Permissions for managed storage account and SaS-definition operations

    • get: 스토리지 계정에 대한 정보 가져오기get: Gets information about a storage account
    • list: Key Vault에서 관리하는 스토리지 계정 나열list: List storage accounts managed by a Key Vault
    • update: 스토리지 계정 업데이트update: Update a storage account
    • delete: 스토리지 계정 삭제delete: Delete a storage account
    • recover: 삭제된 스토리지 계정 복구recover: Recover a deleted storage account
    • backup: 스토리지 계정 백업backup: Back up a storage account
    • restore: Key Vault에 백업된 스토리지 계정 복원restore: Restore a backed-up storage account to a Key Vault
    • set: 스토리지 계정 만들기 또는 업데이트set: Create or update a storage account
    • regeneratekey: 스토리지 계정에 대해 지정된 키 값을 다시 생성regeneratekey: Regenerate a specified key value for a storage account
    • getsas: 스토리지 계정의 SAS 정의에 대한 정보 가져오기getsas: Get information about a SAS definition for a storage account
    • listsas: 스토리지 계정에 대한 스토리지 SAS 정의 나열listsas: List storage SAS definitions for a storage account
    • deletesas: 스토리지 계정에서 SAS 정의 삭제deletesas: Delete a SAS definition from a storage account
    • setsas: 스토리지 계정에 대한 새 SAS 정의/특성 만들기 또는 업데이트setsas: Create or update a new SAS definition/attributes for a storage account
  • 권한 있는 작업에 필요한 권한Permissions for privileged operations

    • purge: 관리 스토리지 계정 제거(영구적으로 삭제)purge: Purge (permanently delete) a managed storage account

자세한 내용은 Key Vault REST API 참조의 스토리지 계정 작업을 참조하세요.For more information, see the Storage account operations in the Key Vault REST API reference. 권한 설정에 대한 내용은 자격 증명 모음 - 만들기 또는 업데이트자격 증명 모음 - 액세스 정책 업데이트를 참조하세요.For information on establishing permissions, see Vaults - Create or Update and Vaults - Update Access Policy.

Key Vault에서 액세스를 제어하는 방법 가이드:How-to guides to control access in Key Vault:

다음 단계Next steps