Lovable한국어 문서

Microsoft Entra service principal로 앱을 Azure Cloud API에 연결해 Azure 리소스를 조사·관리하고, 역할 할당을 점검하고, 비용·활동 대시보드를 만듭니다.

Azure Cloud API에 앱 연결하기

Lovable 앱에서 Azure 리소스를 조사·관리하고, 역할 할당을 점검하고, 비용·활동 대시보드를 만들도록 앱을 Azure Cloud API에 연결합니다.

Microsoft Azure는 Microsoft의 클라우드 플랫폼입니다. Azure Cloud API 커넥터를 사용하면 Lovable 앱이 Microsoft Entra service principal로 Azure Resource Manager를 호출할 수 있습니다. 덕분에 앱이 구독의 리소스를 조사·관리하고, 누가 접근 권한을 가졌는지 점검하고, 비용과 활동을 보고할 수 있습니다. 직접 관리하는 Azure 구독을 읽거나 운영하는 내부 도구와 대시보드를 위해 설계되었습니다.

Azure Cloud API는 앱 + 채팅 커넥터로 제공됩니다. 하나의 공유 연결이 Chats, 빌드 중 프로젝트 채팅, 게시된 앱에서 모두 동작합니다.

Azure Cloud API를 연결하면 앱은 다음 작업이 가능합니다.

  • 구독, 리소스 그룹, 리소스를 타입·위치·태그와 함께 나열
  • Cost Management에서 서비스별·리소스 그룹별·일별 지출 쿼리
  • Activity Log 이벤트를 읽어 구독에서 누가 무엇을 바꿨는지 확인
  • Azure 역할 할당 점검
  • 요청할 때, service principal에 할당된 역할 범위 안에서 리소스 생성·변경·삭제

이 커넥터는 Lovable로 빌드한 앱을 위한 커넥터입니다. 앱을 Azure 구독과 통합합니다. Lovable 앱을 Azure에 배포하거나 호스팅하지는 않습니다. Lovable 앱을 게시하려면 Lovable의 게시 흐름을 사용하세요.

사용자, 그룹, 메일박스, SharePoint 사이트처럼 조직의 Microsoft Entra 디렉터리나 Microsoft 365 데이터를 다루려면 Azure Graph & Entra API를 사용하세요. 같은 종류의 service principal로 연결합니다. Fabric 데이터에는 Microsoft Fabric을, Power BI semantic model에는 Power BI를 사용하세요.

주요 활용 사례 및 예시 앱

다음 예시는 Azure Cloud API로 무엇을 만들 수 있는지 보여줍니다. 각 항목에는 시작용 프롬프트가 포함되어 있습니다.

예시 앱예시 프롬프트설명
Azure 비용 대시보드Azure Cloud API를 사용해 이번 달 Azure 지출을 서비스별로 묶고 일별 추이와 함께 보여주는 대시보드를 만들어줘.비용을 발생시키는 사람에게 클라우드 지출을 계속 보여줍니다.
앱이 구독의 Cost Management를 쿼리해 서비스별·일별 비용을 차트로 그립니다.
리소스 인벤토리Azure Cloud API를 사용해 선택한 구독의 리소스 인벤토리를 리소스 그룹별로 묶어 타입, 위치, 태그와 함께 보여줘.구독에서 무엇이 실행 중인지 한눈에 파악합니다.
앱이 Azure Resource Manager로 리소스를 나열하고 리소스 그룹별로 묶습니다.
접근·활동 검토Azure Cloud API를 사용해 프로덕션 구독의 역할 할당과 최근 7일간 Activity Log 변경 내역을 보여주는 페이지를 만들어줘.누가 무엇을 할 수 있고 누가 무엇을 했는지 감사합니다.
앱이 구독의 역할 할당과 Activity Log 이벤트를 읽어 나란히 보여줍니다.
태그 준수 보고서Azure Cloud API를 사용해 구독에서 owner 또는 cost-center 태그가 없는 리소스 보고서를 만들어줘.주인 없는 리소스를 찾습니다.
앱이 Azure Resource Manager로 리소스를 나열하고 필수 태그가 없는 항목을 표시합니다.
테스트 환경 정리Azure Cloud API를 사용해 테스트 환경으로 태그된 리소스 그룹을 나열하고 확인 후 선택한 그룹을 삭제할 수 있는 내부 도구를 만들어줘.포털을 열지 않고 테스트 환경을 폐기합니다.
앱이 조건에 맞는 리소스 그룹을 나열하고, 앱 안에서 확인 단계를 거친 뒤에만 선택한 그룹을 삭제합니다.

Azure Cloud API 연결 방식

커넥터는 Microsoft Entra service principal로 인증합니다. service principal은 테넌트에 등록하고 client secret을 부여하는 애플리케이션 신원입니다. 각 연결은 하나의 service principal의 테넌트 ID, client ID, client secret을 사용하며, 워크스페이스의 여러 프로젝트가 이를 공유할 수 있습니다. Lovable의 커넥터 게이트웨이가 secret을 액세스 토큰으로 교환하고 백그라운드에서 토큰을 갱신하며 각 요청을 Azure Resource Manager로 전달하므로, secret과 토큰은 서버에 남고 게시된 앱에는 노출되지 않습니다.

커넥터는 연결이 수행할 수 있는 작업을 제한하지 않으며, 읽기·쓰기를 구분하지도 않습니다. Azure 역할 기반 접근 제어(RBAC), 즉 구독·리소스 그룹·리소스 범위에서 service principal에 할당된 역할이 유일한 통제 수단입니다. 그 service principal로 할 수 있는 일은 이 연결로 빌드한 앱도 할 수 있습니다. 앱을 포괄하는 가장 좁은 역할을 부여하고, 가능하면 읽기 전용으로 만드세요.

연결은 자격 증명을 검증하지만 접근 권한은 검증하지 않습니다. Lovable은 Microsoft Entra가 Azure Resource Manager용 액세스 토큰을 발급하는지만 확인하므로, 연결은 검증에 성공해도 역할 할당이 생기기 전까지 403 응답을 받을 수 있습니다. 문제 해결을 참조하세요.

Azure Cloud API는 Azure Resource Manager에만 접근합니다. Microsoft Graph로 Microsoft Entra 디렉터리나 Microsoft 365 데이터를 다루려면 별도의 Azure Graph & Entra API 연결을 만드세요. 같은 app registration으로 두 연결을 모두 뒷받침할 수 있지만, 그러면 secret을 교체할 때 양쪽을 모두 업데이트해야 합니다. 권한이나 환경이 다르다면 커넥터마다 전용 service principal을 쓰는 편이 좋습니다.

프로젝트 채팅에서 이 연결로 빌드할 때 Lovable은 다음과 같이 동작합니다.

  • Lovable은 기본적으로 읽기 전용 기능을 빌드하며, 리소스나 역할 할당을 생성·변경·삭제하는 호출은 이름을 지정해 요청할 때만 추가합니다.
  • 구독을 변경하는 호출의 코드를 생성하기 전에 Lovable은 정확한 대상과 변경 내용을 밝히고 확인을 요청합니다. 파괴적이거나 권한을 바꾸거나 비용을 발생시키거나 자격 증명과 관련된 작업이라면, Lovable은 그 변경이 무엇에 더 영향을 주고 되돌릴 수 있는지도 설명하고 한 번 더 확인을 요청합니다.
  • Lovable은 리소스 생성을 반복문, 스케줄, 사용자별 트리거가 아니라 사용자가 확인하는 단일 작업으로 빌드합니다.
  • Lovable은 모든 호출을 서버 쪽에 두고, 테넌트 ID, client ID, client secret, 액세스 토큰을 프런트엔드 코드나 채팅에 넣지 않습니다. 호출이 반환한 스토리지 계정 키 같은 시크릿도 서버에 머무릅니다.
  • Azure가 호출을 거부하면 Lovable은 재시도하지 않고 부여해야 할 역할을 알려 줍니다.

이 규칙은 Lovable이 앱을 위해 작성하는 코드에 적용됩니다. Lovable이 프로젝트 채팅에서 연결을 직접 사용해 변경을 수행할 때는 먼저 승인 카드에서 멈춥니다. Agent approval for this connection 설정은 본인과 해당 연결에 적용되며 Lovable이 계속 물어볼지를 결정합니다. 프로젝트 채팅에서 커넥터 작업 승인하기를 참조하세요.

Azure Cloud API 연결 방법

Azure Cloud API 연결을 만들 수 있는 사람은 플랜과 워크스페이스 설정에 따라 달라집니다. 앱 + 채팅 커넥터는 Free, Pro, Business 플랜에서 기본으로 제공됩니다. Enterprise 플랜에서는 처음에 사실상 비활성화되어 있습니다. admin이 Connectors → Admin settings → App + chat connectors에서 바꾸기 전까지 연결과 클라이언트를 만들 수 있는 사람의 기본값은 No one입니다.

서로 다른 service principal로 Azure Cloud API 연결을 여러 개 만들 수 있습니다. 테넌트, 구독, 또는 개발·프로덕션 같은 환경을 분리할 때 유용합니다.

연결을 만들면 사용하려는 프로젝트에 연결을 링크할 수 있습니다. 프로젝트에서 빌드하는 사람은 프로젝트 채팅에서 Lovable에 자기 프로젝트를 이 연결에 링크해 달라고 요청할 수 있습니다.

사전 준비

Azure Cloud API를 연결하기 전에 다음을 확인하세요.

  • 본인이나 관리자가 애플리케이션을 등록하고 client secret을 만들 수 있는 Microsoft Entra 테넌트
  • 본인이나 관리자가 역할을 할당할 수 있는 Azure 구독
  • Lovable 워크스페이스에서 연결을 만들 권한(연결과 클라이언트를 만들 수 있는 사람 참조)

API 작업은 클라우드 리소스를 생성하거나 변경하고 비용을 발생시킬 수 있으며, 그 책임은 모두 사용자에게 있습니다. 앱이 사용하거나 생성한 모든 항목은 Lovable이 아니라 Microsoft가 Azure 구독에 직접 청구합니다. 연결하기 전에 알림이 포함된 Azure 예산을 설정하고, Lovable이 빌드한 결과를 검증하고, 정리와 철거가 제대로 끝나는지 확인하세요.

1단계: Microsoft Entra에서 service principal 만들기

연결은 테넌트에 등록한 애플리케이션으로 인증합니다. Lovable 전용 애플리케이션을 등록하거나 기존 애플리케이션을 재사용하고, 그에 대한 client secret을 만드세요. 애플리케이션을 등록하면 테넌트에 그 service principal도 함께 생성됩니다.

애플리케이션 등록

Microsoft Entra 관리 센터에 로그인해 Entra ID → App registrations로 이동한 뒤 New registration을 선택합니다. 애플리케이션 이름을 lovable-app처럼 지정하고, 지원 계정 유형은 기본값(Single tenant only과 테넌트 이름)을 그대로 두고, 리디렉션 URI는 비워 둔 채 Register를 클릭합니다. Microsoft 안내서 애플리케이션 등록을 참조하세요.

테넌트 ID와 client ID 기록

애플리케이션의 Overview 페이지에서 Directory (tenant) ID와 Application (client) ID를 복사합니다. 두 값은 3단계에서 Lovable에 입력합니다.

client secret 만들기

Certificates & secrets → Client secrets → New client secret으로 이동해 설명을 추가하고 만료 기간을 선택한 뒤 Add를 클릭합니다. secret의 Value를 즉시 복사해 안전하게 보관하세요. 페이지를 벗어나면 Microsoft가 다시 보여주지 않습니다. Secret ID는 secret이 아니므로 복사하지 마세요. Microsoft 안내서 자격 증명 추가를 참조하세요.

client secret은 비밀번호처럼 동작합니다. 안전하게 보관하고 저장소에 커밋하거나 공개적으로 공유하지 마세요. 선택한 만료 기간을 기억해 두세요. secret이 만료되면 새 secret을 만들어 Lovable에서 연결을 업데이트할 때까지 연결이 동작을 멈춥니다.

2단계: service principal에 Azure 역할 할당하기

애플리케이션을 등록해도 아무 권한도 주어지지 않습니다. Azure Cloud API는 Azure RBAC로 권한을 부여하므로, 앱을 포괄하는 가장 좁은 범위에서 service principal에 역할을 할당하세요.

범위 열기

Azure 포털에서 앱이 다룰 구독, 리소스 그룹, 또는 리소스를 열고 **Access control (IAM)**을 선택합니다.

역할 선택

Add → Add role assignment를 선택합니다. Role 탭에서 앱을 포괄하는 가장 낮은 권한의 기본 제공 역할을 고릅니다. 인벤토리와 Activity Log 읽기에는 Reader, 비용 대시보드에는 Cost Management Reader를 쓰고, 앱이 리소스를 변경해야 할 때만 해당 리소스의 contributor 역할을 씁니다. Owner와 User Access Administrator는 피하세요. 역할을 할당할 수 있는 service principal은 스스로에게 더 넓은 권한을 부여할 수 있습니다.

service principal에 할당

Members 탭에서 User, group, or service principal을 선택하고 Select members를 클릭한 뒤, 등록할 때 쓴 이름으로 애플리케이션을 검색해 선택합니다. Review + assign을 클릭해 마칩니다. Microsoft 안내서 Azure 포털로 Azure 역할 할당하기를 참조하세요.

3단계: Azure Cloud API를 Lovable에 연결하기

역할을 할당했다면 Lovable에서 연결을 생성합니다.

Connectors에서 Azure Cloud API 열기

Connectors를 열고 Azure Cloud API를 선택합니다. 카탈로그를 여는 다른 위치는 커넥터를 찾을 수 있는 곳을 참조하세요. 커넥터 페이지에는 API 작업이 비용과 리소스에 미치는 영향을 알리는 Use responsibly 안내가 표시됩니다.

연결 추가

Add connection을 클릭하고 App + chat connector를 선택합니다. 양식은 접을 수 있는 Details, Configure connection, Sharing 세 섹션으로 나뉩니다.

연결 이름 지정

Details 아래에서 Lovable이 연결 이름을 채워 주며 원하는 대로 바꿀 수 있습니다. 이 이름은 Lovable 안에서 연결을 식별하는 데만 사용됩니다.

연결 구성

Configure connection 아래에서 다음을 입력합니다.

  1. Microsoft Entra Tenant ID: 1단계의 Directory (tenant) ID입니다.
  2. Service Principal Client ID: 1단계의 Application (client) ID이며 object ID가 아닙니다.
  3. Client Secret: 1단계의 secret Value입니다.

두 ID는 모두 하이픈이 포함된 36자 식별자이며, Lovable은 다른 형식을 거부합니다.

이 연결을 사용할 수 있는 사람 선택

Sharing 아래에서 연결은 기본적으로 나에게만 비공개이며 Private label이 표시됩니다. 공유하려면 Share with others를 클릭합니다. 그런 다음 이메일로 워크스페이스 멤버를 추가하거나 Invite entire workspace를 클릭해 Lovable 워크스페이스의 모든 사람이 사용할 수 있게 합니다.

연결을 공유받은 모든 사람은 service principal의 접근 권한 전체를 사용하는 기능을 빌드할 수 있습니다.

자세한 내용은 연결과 클라이언트를 사용할 수 있는 사람을 참조하세요.

연결

Connect를 클릭합니다. Lovable은 연결을 저장하기 전에 Microsoft Entra에 Azure Resource Manager용 액세스 토큰을 요청해 자격 증명을 검증합니다. 이 확인은 테넌트 ID, client ID, client secret만 확인하며 역할에 대해서는 아무것도 확인하지 않습니다. 검증이 실패하면 문제 해결을 참조하세요.

연결되면 프로젝트에서 빌드하는 사람은 프로젝트 채팅에서 Lovable에 프로젝트를 Azure Cloud API에 링크해 달라고 요청할 수 있습니다(구성된 연결 수준 접근 권한 기준). 그러면 Lovable 앱이 service principal에 할당된 역할 범위 안에서 커넥터 게이트웨이를 통해 Azure Resource Manager를 호출할 수 있습니다.

제한 사항

Azure Cloud API 커넥터는 다음을 할 수 없습니다.

  • Lovable 안에서 연결을 읽기 전용 작업이나 특정 Azure 서비스로 제한하기. Azure RBAC가 이 연결로 빌드한 앱의 동작 범위를 정하는 유일한 통제 수단입니다.
  • 인증서, managed identity, federated credential로 인증하기. 연결에는 client secret이 필요합니다.
  • Azure Government나 21Vianet이 운영하는 Azure 같은 국가별 클라우드에 접근하기. 연결은 글로벌 Azure Resource Manager 엔드포인트를 사용합니다.
  • Microsoft Graph 호출하기. Microsoft Entra 디렉터리와 Microsoft 365 데이터에는 별도의 Azure Graph & Entra API 연결을 사용하세요.
  • Azure Event Grid 이벤트나 Activity Log 알림처럼 Azure에서 오는 이벤트 수신하기. 연결은 외부로 나가는 호출만 합니다.
  • 최종 사용자별 Azure 로그인 지원하기. 각 연결은 단일 service principal을 나타내며, 연결된 모든 프로젝트가 이를 공유합니다.

client secret이 만료되거나 Microsoft Entra에서 삭제했다면, 연결을 열고 Configure connection 아래에 새 Client Secret을 입력한 뒤 Update를 클릭하세요. Lovable은 저장하기 전에 Microsoft Entra로 새 secret을 검증합니다. 테넌트 ID와 client ID는 그대로 유지됩니다.

문제 해결

연결이 실패하거나 Azure 요청이 예상하지 못한 status를 반환하면 다음을 확인하세요.

Azure Cloud API 연결 관리

연결은 Connectors에서 관리합니다. **Azure Cloud API**를 선택한 뒤 연결을 엽니다.

  • Unlink projects를 사용하면 다른 프로젝트에서는 연결을 계속 쓸 수 있게 두면서 특정 프로젝트에서 Azure Cloud API 접근만 제거할 수 있습니다. 단계는 연결에서 프로젝트 링크 해제를 참조하세요.
  • Delete the connection은 워크스페이스에서 연결을 완전히 제거합니다. 삭제는 영구적입니다. 연결된 모든 프로젝트에서 자격 증명이 제거되고, Azure Cloud API를 사용하는 앱 기능은 새 연결을 추가할 때까지 동작을 멈춥니다. 단계와 삭제 권한은 연결 삭제를 참조하세요.

On this page