Azure Key Vault에서 인증 비밀 보호

사용자 지정 인증 공급자를 구성하는 경우 Azure Key Vault에 연결 비밀을 저장하는 것이 좋습니다. 이 문서에서는 관리 ID를 사용하여 사용자 지정 인증 비밀에 대한 키 자격 증명 모음에 대한 액세스 권한을 Azure Static Web Apps에 부여하는 방법을 설명합니다.

참고 항목

Azure Serverless Functions는 직접적인 Key Vault 통합을 지원하지 않습니다. 관리 함수 앱과 Key Vault 통합이 필요한 경우 앱 코드에 대한 Key Vault 액세스를 구현해야 합니다.

보안 비밀을 적용하려면 다음 항목을 준비해야 합니다.

  • 정적 웹앱 인스턴스에서 시스템 할당 ID를 만듭니다.
  • Key Vault 비밀에 ID 액세스 권한을 부여합니다.
  • 정적 웹앱 애플리케이션 설정에서 키 자격 증명 모음 비밀을 참조하세요.

이 문서에서는 BYOF(Bring Your Own Functions) 애플리케이션용 프로덕션에서 위의 각 항목을 설정하는 방법을 보여 줍니다.

Key Vault 통합은 다음에 사용할 수 없습니다.

참고 항목

관리 ID 사용은 Azure Static Web Apps 표준 플랜에서만 사용할 수 있습니다.

필수 조건

ID 만들기

  1. Azure Portal의 Static Web App 사이트를 엽니다.

  2. 설정 메뉴에서 ID를 선택합니다.

  3. 할당된 시스템 탭을 선택합니다.

  4. 상태 레이블 아래에서 켜기를 선택합니다.

  5. 저장을 선택합니다.

    Add system-assigned identity

  6. 확인 대화 상자가 나타나면 를 선택합니다.

    Confirm identity assignment.

이제 정적 웹앱이 키 자격 증명 모음 비밀을 읽도록 허용하는 액세스 정책을 추가할 수 있습니다.

Key Vault 액세스 정책 추가

  1. Azure Portal에서 Key Vault 리소스를 엽니다.

  2. 설정 메뉴에서 액세스 정책을 선택합니다.

  3. 액세스 정책 추가 링크를 선택합니다.

  4. 비밀 권한 드롭다운에서 받기를 선택합니다.

  5. 주체 선택 레이블 옆에 있는 선택하지 않음 링크를 선택합니다.

  6. 검색 상자에서 고정 웹앱 애플리케이션 이름을 검색합니다.

  7. 애플리케이션 이름과 일치하는 목록 항목을 선택합니다.

  8. 선택을 선택합니다.

  9. 추가를 선택합니다.

  10. 저장을 선택합니다.

    Save Key Vault access policy

이제 액세스 정책이 키 자격 증명 모음에 저장됩니다. 다음으로, 정적 웹앱을 키 자격 증명 모음 리소스에 연결하기 위해 사용할 비밀의 URI에 액세스합니다.

  1. 설정 메뉴에서 비밀을 선택합니다.

  2. 목록에서 원하는 비밀을 선택합니다.

  3. 목록에서 원하는 비밀 버전을 선택합니다.

  4. 비밀 식별자 텍스트 상자 끝에 있는 복사를 선택하여 비밀 URI 값을 클립보드에 복사합니다.

  5. 나중에 사용할 수 있도록 이 값을 텍스트 편집기에 붙여넣습니다.

애플리케이션 설정 추가

  1. Azure Portal의 Static Web App 사이트를 엽니다.

  2. 설정 메뉴에서 구성을 선택합니다.

  3. 애플리케이션 설정 섹션에서 추가를 선택합니다.

  4. 이름 필드의 텍스트 상자에 이름을 입력합니다.

  5. 필드의 텍스트 상자에서 비밀 값을 확인합니다.

    비밀 값은 몇 가지 다른 값의 복합 값입니다. 다음 템플릿에서는 최종 문자열이 빌드되는 방법을 보여 줄 수 있습니다.

    @Microsoft.KeyVault(SecretUri=<YOUR-KEY-VAULT-SECRET-URI>)
    

    예를 들어 최종 문자열은 다음 샘플과 같습니다.

    @Microsoft.KeyVault(SecretUri=https://myvault.vault.azure.net/secrets/mysecret/)
    

    또는 다음과 같습니다.

    @Microsoft.KeyVault(VaultName=myvault;SecretName=mysecret)
    

    다음 단계를 사용하여 전체 비밀 값을 빌드합니다.

  6. 위에서 템플릿을 복사하여 텍스트 편집기에 붙여넣습니다.

  7. <YOUR-KEY-VAULT-SECRET-URI>를 이전에 따로 설정한 키 자격 증명 모음 URI 값으로 바꿉니다.

  8. 새 전체 문자열 값을 복사합니다.

  9. 필드의 텍스트 상자에 값을 붙여넣습니다.

  10. 확인을 선택합니다.

  11. 애플리케이션 설정 도구 모음 상단에서 저장을 선택합니다.

    Save application settings

이제 사용자 지정 인증 구성이 새로 만든 애플리케이션 설정을 참조하면 고정 웹앱의 ID를 사용하여 Azure Key Vault 값이 추출됩니다.

다음 단계