API 키 관리Managing API keys

PowerShell 갤러리는 다양한 API 요구 사항을 지원하기 위해 여러 API 키를 만들 수 있도록 지원합니다.The PowerShell Gallery supports creating multiple API keys to support a range of publishing requirements. API 키는 하나 이상의 패키지에 적용할 수 있으며, 특정 권한을 부여하고, 만료 날짜가 있습니다.An API key can apply to one or more packages, grants specific privileges, and has an expiration date.

중요

범위가 지정된 API 키를 도입하기 전에 PowerShell 갤러리에 게시된 사용자에게는 "전체 액세스 API 키"가 있습니다.Users who published to the PowerShell Gallery prior to the introduction of scoped API keys will have a "Full access API key". 전체 액세스 키에는 범위가 지정된 API 키에 기본적으로 제공되는 향상된 보안 기능이 없습니다.The full access keys do not have the security improvements built into scoped API keys. 전체 액세스 키는 만료되지 않으며, 사용자 소유의 모든 항목에 적용됩니다.The full access keys never expires and apply to everything owned by the user. 이 키는 삭제되면 다시 만들 수 없습니다.If you delete this key, it cannot be recreated.

다음 이미지에서는 범위가 지정된 API 키를 만들 때 사용할 수 있는 옵션을 보여 줍니다.The following image shows the options available when creating a scoped API key.

API 키 만들기

이 예에서는 AzureRMDataFactory라는 API 키를 만들었습니다.In this example, we created an API key named AzureRMDataFactory. 이 키 값은 'AzureRM.DataFactory'로 시작하고 365일 동안 유효한 이름의 패키지를 푸시하는 데 사용할 수 있습니다.This key value can be used to push packages with names that begin with 'AzureRM.DataFactory' and is valid for 365 days. 동일한 조직 내의 여러 팀이 서로 다른 패키지에서 작업하는 일반적인 시나리오입니다.This is a typical scenario when different teams within the same organization work on different packages. 팀 멤버에게는 자신이 작업할 특정 패키지에 대한 권한이 부여되는 키가 있습니다.The members of the team have a key that grants them privileges for the specific package they work on. 만료 값은 부실하거나 잊어버린 키를 사용하지 않도록 방지합니다.The expiration value prevents the use of stale or forgotten keys.

GLOB 패턴 사용Using glob patterns

여러 패키지에서 작업하는 경우 GLOB 패턴을 사용하여 여러 패키지를 하나의 그룹으로 일치시킬 수 있습니다.If you work on multiple packages, you can use globbing patterns to match multiple packages as a group. API 키 권한은 GLOB 패턴과 일치하는 모든 새 패키지에 적용됩니다.API key permissions apply to all new packages matching the glob pattern. 예를 들어 앞의 예에서는 GLOB 패턴 값으로 'AzureRM.DataFactory *'를 사용하고 있습니다.For example, the previous example uses a Glob Pattern value of 'AzureRM.DataFactory*'. 패키지가 GLOB 패턴과 일치하므로 이 키를 사용하여 'AzureRm.DataFactoryV2.Netcore'라는 패키지를 푸시할 수 있습니다.You can push a package named 'AzureRm.DataFactoryV2.Netcore' using this key since the package matches the glob pattern.

안전하게 API 키 만들기Create API keys securely

보안을 위해 새로 만든 키 값은 화면에 표시되지 않으며, 아래와 같이 [복사] 단추로만 사용할 수 있습니다.For security, a newly created key value is never shown on the screen and is only available with the Copy button, as shown below.

새 API 키 값 가져오기

중요

API 키 값은 만들거나 새로 고친 직후에만 복사할 수 있습니다.You can only copy the API key value immediately after creating or refreshing it. 표시되지 않으며, 페이지를 새로 고친 후에는 다시 액세스할 수 없습니다.It will not be displayed, and will not be accessible again after the page is refreshed. 키 값을 잃어버리면 [다시 생성]을 사용하고, 다시 생성된 후에 키를 복사해야 합니다.If you lose the key value, you must use Regenerate, and copy the key after it is regenerated.

키 권한 및 만료Key permissions and expiration

범위가 지정된 API 키는 다음 권한 중 하나를 할당할 수 있습니다.Scoped API keys can assign any of the following permissions:

  • 새 패키지 푸시Push new packages
  • 새 패키지 또는 업데이트 패키지 푸시Push new or update packages
  • 패키지 나열 취소Unlist packages

모든 새 키는 만료됩니다.Every new key has an expiration. 만료 값은 일 단위로 측정됩니다.The expiration value is measured in days. 만료에 사용할 수 있는 값은 다음과 같습니다.The possible values for expiration are:

  • 1일1 day
  • 90일90 days
  • 180일180 days
  • 270일270 days
  • 365일(기본값)365 days (default)

키를 만든 후에는 이러한 설정을 변경할 수 없습니다.These settings cannot be changed once the key is created. 만료되지 않는 새 키는 만들 수 없습니다.You cannot create a new key that never expires.

기존 API 키 편집 및 삭제Editing and deleting existing API keys

기존 키의 일부 설정은 변경할 수 있습니다.You can change some settings of an existing key. 앞에서 설명한 대로 기존 API 키에 대한 보안 범위를 수정하거나 만료 시간을 변경할 수 없습니다.As previously noted, you cannot modify the security scope for an existing API key or change the expiration. 변경할 수 있는 옵션은 다음 스크린샷과 같습니다.The changeable options are shown in the following screenshot:

새 API 키 값 가져오기

키로 제어되는 패키지를 변경하려면 목록에서 개별 패키지를 선택하거나 GLOB 패턴을 변경할 수 있습니다.To change the packages controlled by a key, you can choose individual packages from the list or change the glob pattern.

다시 생성을 클릭하면 새 키 값이 만들어집니다.Clicking Regenerate creates a new key value. 키를 처음 만들 때와 마찬가지로 키 값을 업데이트하는 즉시 복사해야 합니다.Just like when you initially created the key, you must Copy the key value immediately after updating it. 이 페이지에서 나가면 복사 옵션을 사용할 수 없습니다.The Copy option is not available once you leave this page.

삭제를 클릭하면 확인 메시지가 표시됩니다.Clicking Delete displays a confirmation message. 키가 삭제되면 사용할 수 없게 됩니다.Once a key is deleted, it will be unusable.

키 만료Key expiration

만료되기 10일 전에 PowerShell 갤러리에서 API 키의 계정 소유자에게 경고 이메일을 보냅니다.Ten days before the expiration, the PowerShell Gallery sends a warning email the account holder of the API key. 만료 후에는 키를 사용할 수 없습니다.After expiration, the key is unusable. API 키 관리 페이지의 위쪽에 더 이상 유효하지 않은 키를 보여 주는 경고 메시지가 표시됩니다.A warning message is displayed at the top of the API key management page showing which keys are no longer valid. 그러면 새 키 값을 생성할 수 있습니다.You can generate a new key value.