인증을 위한 Power Platform 커넥터 및 플러그 인 파일 준비
이 프로세스는 인증된 게시자와 독립 게시자 모두를 위한 것입니다.
사용자 지정 커넥터 및/또는 플러그 인 개발을 완료한 후 다음 단계에 따라 인증을 준비하고 Microsoft에 제출할 커넥터 및/또는 플러그 인 파일을 생성합니다.
참고
이 문서에서는 Azure Logic Apps, Power Automate 및 Power Apps의 사용자 지정 커넥터와 Copilot의 플러그 인을 인증하기 위한 정보를 제공합니다. 이 문서의 단계를 수행하기 전에 커넥터 및/또는 플러그 인 인증 받기를 읽어보세요.
1단계: 커넥터 및/또는 플러그 인 등록(독립 게시자에만 해당)
이 섹션은 인증된 판매자에게는 적용되지 않습니다.
인증을 신청하기 위해 사용자 지정 커넥터 및/또는 플러그 인에 대한 개발을 완료할 필요가 없습니다. 인증 프로세스를 시작하려면 등록 양식을 작성하여 인증을 위해 커넥터 및/또는 플러그 인을 등록하세요.
영업일 기준 2일 이내에 다음과 같은 Microsoft 담당자로부터 이메일을 받을 수 있습니다.
- 사용자 지정 커넥터, 커넥터 및/또는 플러그 인을 이해.
- 개발 프로세스에 대해 학습.
- 인증 프로세스에 대한 이메일 전송.
2단계: 커넥터에 대한 제출 요구 사항 충족
인증된 커넥터 간에 높은 수준의 품질과 일관성을 유지하기 위해 Microsoft는 사용자 지정 커넥터가 인증을 위해 준수해야 하는 요구 사항과 지침을 제공합니다.
커넥터에 제목 지정
제목은 다음 요구 사항을 충족해야 합니다.
- 반드시 존재해야 하며 영어로 작성해야 합니다.
- 기존 커넥터 및/또는 플러그 인 제목과 다르고 고유해야 합니다.
- 제품 또는 조직의 이름이어야 합니다.
- 인증된 커넥터 및/또는 플러그 인의 기존 명명 패턴을 따라야 합니다. 독립 게시자의 경우 커넥터 이름은
Connector and/or plugin Name (Independent Publisher)
패턴을 따라야 합니다. - 30자를 초과할 수 없습니다.
- API, 커넥터 또는 Power Platform 제품 이름(예: Power Apps)을 포함할 수 없습니다.
- 캐리지 리턴, 새 줄 또는 공백을 포함하여 영숫자가 아닌 문자로 끝날 수 없습니다.
예제
- 좋은 커넥터 및/또는 플러그 인 제목:
Azure Sentinel*, *Office 365 Outlook
- 나쁜 커넥터 및/또는 플러그 인 제목:
Azure Sentinel's Power Apps Connector
,Office 365 Outlook API
커넥터에 대한 설명 작성
설명은 다음 요건을 충족해야 합니다.
- 반드시 존재해야 하며 영어로 작성해야 합니다.
- 문법 및 맞춤법 오류가 없어야 합니다.
- 커넥터가 제공하는 주요 목적과 가치를 간결하게 설명해야 합니다.
- 30자보다 짧거나 500자보다 길 수 없습니다.
- Power Platform 제품 이름(예: 'Power Apps')을 포함할 수 없습니다.
커넥터 아이콘 디자인(인증된 게시자에게만 해당)
이 섹션은 독립 판매자에게는 적용되지 않습니다.
- 100 x 100 ~ 230 x 230 픽셀 범위 내에서 1:1 크기의 로고를 만듭니다(둥근 모서리 없음).
- 불투명하고 흰색이 아닌 색(#ffffff) 배경과 지정된 아이콘 배경색과 일치하는 기본 색이 아닌 색(#007ee5)을 사용합니다.
- 아이콘이 인증된 다른 커넥터 아이콘에 고유한지 확인합니다.
- 로고를 PNG 형식
<icon>.png
로 제출하세요. - 일관된 배경으로 이미지의 높이와 너비에 대해 로고 크기를 70% 미만으로 설정합니다.
- 브랜드 색상이 유효한 16진수 색상인지 확인하고 흰색(#ffffff) 또는 기본값(#007ee5)이 아니어야 합니다.
작업 및 매개 변수 요약 및 설명 정의
요약 및 설명은 다음 요건을 충족해야 합니다.
- 반드시 존재해야 하며 영어로 작성해야 합니다.
- 문법 및 맞춤법 오류가 없어야 합니다.
- 작업 및 매개변수 요약은 80자 이하의 구문이어야 하며 영숫자 또는 괄호만 포함해야 합니다.
- 작업 및 매개 변수 설명은 완전한 서술형 문장이어야 하며 구두점으로 끝나야 합니다.
- Microsoft Power Platform 제품 이름(예: "Power Apps")을 포함할 수 없습니다.
정확한 작업 응답 정의
작업 응답은 다음 요건을 충족해야 합니다.
- 예상 응답만 있는 정확한 스키마로 작업 응답을 정의하세요.
- 정확한 스키마 정의와 함께 기본 응답을 사용하지 마십시오.
- swagger의 모든 작업에 대해 유효한 응답 스키마 정의를 제공합니다.
- 응답 스키마가 동적인 특별한 경우를 제외하고 빈 응답 스키마는 허용되지 않습니다. 즉, 출력에 동적 콘텐츠가 표시되지 않으며 제작자는 JSON을 사용하여 응답을 구문 분석해야 합니다.
- 빈 작업은 허용되지 않습니다.
- 필요한 경우가 아니면 빈 속성을 제거하십시오.
Swagger 속성 확인
속성은 다음 요건을 충족해야 합니다.
- "openapidefinition"이 올바른 형식의 JSON 파일에 있는지 확인하세요.
- Swagger 정의가 OpenAPI 2.0 표준 및 커넥터의 확장 표준을 준수하는지 확인하십시오.
연결 매개 변수 확인
매개 변수는 다음 요건을 충족해야 합니다.
속성이 "UIDefinition"(표시 이름, 설명)에 대한 적절한 값으로 업데이트되었는지 확인하세요.
연결 매개 변수가 기본 인증을 사용하는 경우 다음 예와 같이 JSON 형식이 올바른지 확인하세요.
{ "username": { "type": "securestring", "uiDefinition": { "displayName": "YourUsernameLabel", "description": "The description of YourUsernameLabel for this api", "tooltip": "Provide the YourUsernameLabel tooltip text", "constraints": { "tabIndex": 2, "clearText": true, "required": "true" } } }, "password": { "type": "securestring", "uiDefinition": { "displayName": "YourPasswordLabel", "description": "The description of YourPasswordLabel for this api", "tooltip": "Provide the YourPasswordLabel tooltip text", "constraints": { "tabIndex": 3, "clearText": false, "required": "true" } } } }
연결 매개 변수에 인증으로 APIKey가 있는 경우 다음 예와 같이 JSON 형식이 올바른지 확인하세요.
{ "api_key": { "type": "securestring", "uiDefinition": { "displayName": "YourApiKeyParameterLabel", "tooltip": "Provide your YourApiKeyParameterLabel tooltip text", "constraints": { "tabIndex": 2, "clearText": false, "required": "true" } } } }
연결 매개 변수에 인증으로 일반 OAuth가 있는 경우 다음 예와 같이 JSON 형식이 올바른지 확인하세요.
{ "token": { "type": "oAuthSetting", "oAuthSettings": { "identityProvider": "oauth2", "scopes": [ "scope1" ], "redirectMode": "GlobalPerConnector", "customParameters": { "AuthorizationUrl": { "value": "https://contoso.com" }, "TokenUrl": { "value": "https://contoso.com" }, "RefreshUrl": { "value": "https://contoso.com" } }, "clientId": "YourClientID" }, "uiDefinition": null } }
연결 매개 변수에 OAuth2 ID 공급자가 있는 경우 해당 ID 공급자가 지원되는 OAuth2 공급자 목록에 있는지 확인하세요. 다음은 GitHub OAuth2 ID 공급자의 예입니다.
{ "token": { "type": "oAuthSetting", "oAuthSettings": { "identityProvider": "github", "scopes": [ "scope1" ], "redirectMode": "GlobalPerConnector", "customParameters": {}, "clientId": "YourClientId" }, "uiDefinition": null } }
연결 매개 변수에 인증으로 Microsoft Entra ID가 있는 경우 다음 예와 같이 JSON 형식이 올바른지 확인하세요.
{ "token": { "type": "oAuthSetting", "oAuthSettings": { "identityProvider": "aad", "scopes": [ "scope1" ], "redirectMode": "GlobalPerConnector", "customParameters": { "LoginUri": { "value": "https://login.microsoftonline.com" }, "TenantId": { "value": "common" }, "ResourceUri": { "value": "resourceUri" }, "EnableOnbehalfOfLogin": { "value": false } }, "clientId": "AzureActiveDirectoryClientId" }, "uiDefinition": null } }
양질의 영어 문자열 만들기
커넥터는 Power Automate 현지화의 일부로 현지화되므로 커넥터를 개발할 때 영어 문자열의 품질이 번역 품질의 핵심입니다. 다음은 제공할 문자열의 값을 생성할 때 집중해야 할 몇 가지 주요 영역입니다.
모든 문자열 값에 오타가 없는지 확인하려면 맞춤법 검사 프로그램을 실행해야 합니다. 불완전한 영어 문자열이 있으면 번역 결과가 불완전하거나 문맥상 정확하지 않습니다.
문장이 완전한 형태인지 확인하세요. 문장이 완전하지 않으면 낮은 품질의 번역이 생성될 수도 있습니다.
문장의 의미가 명확한지 확인하세요. 문장의 의미가 모호하면 품질이 떨어지거나 번역이 잘못될 수도 있습니다.
요약, x-ms-summaries, 설명이 문법적으로 올바른지 확인하십시오. 복사하여 붙여넣지 마십시오. 제품 내에서 어떻게 표시되는지 알아보려면 커넥터 문자열 안내를 참조하세요.
가능하면 런타임 복합 문자열을 사용하지 마세요. 대신 완전한 형식의 문장을 사용하세요. 연결된 문자열이나 문장은 번역을 어렵게 하거나 잘못된 번역을 유발할 수 있습니다.
약어를 사용하는 경우 명확하게 하기 위해 대문자로 표시해야 합니다. 이렇게 하면 인쇄상의 오류로 오인될 가능성이 줄어듭니다.
CaMel 형식의 문자열(예: minimizeHighways 또는 MinimizeHighways)은 일반적으로 변환할 수 없는 것으로 간주됩니다. 문자열 값을 현지화하려면 CaMel 양식 문자열을 수정해야 합니다.
3단계: 솔루션 검사기를 실행하여 커넥터 유효성 검사
솔루션 검사기는 커넥터가 인증을 위해 Microsoft에서 요구하는 표준을 준수하는지 확인하기 위해 정적 분석을 수행하는 메커니즘입니다. Power Automate 또는 Power Apps의 솔루션에 커넥터를 추가하고 솔루션 검사기로 사용자 지정 커넥터 유효성 검사의 지침에 따라 솔루션 검사기를 실행합니다.
비디오 영상을 시청하여 솔루션 검사를 실행하는 방법을 알아보세요.
4단계: 메타데이터 추가
커넥터 아티팩트(파일)에는 커넥터 및 해당 엔드 서비스를 설명하는 특정 메타데이터가 포함되어야 합니다. 메타데이터로 제공되는 정보는 커넥터 설명서에 게시되며 모든 사용자가 공개적으로 액세스할 수 있습니다. 개인 정보나 기밀 정보를 제공하지 말고, 이 정보를 제공하는 데 문제가 있는 경우 Microsoft 담당자를 통해 알려주십시오. 메타데이터를 문서화하는 방법을 학습하려면 커넥터 참조 아래의 커넥터별 설명서 페이지 중 하나를 방문하세요.
4a단계: 판매자 및 stackOwner 속성
- "판매자" 는 회사 또는 조직의 이름입니다. 전체 회사 이름을 제공합니다(예: "Contoso Corporation"). 영숫자 형식이어야 합니다.
- "stackOwner" 는 커넥터가 연결되는 백엔드 서비스 스택의 소유 회사 또는 조직입니다. 영숫자 형식이어야 합니다.
게시자 | Description | 예 |
---|---|---|
확인됨 | ISV가 stackOwner를 대신하여 커넥터를 구축하지 않는 한 publisher와 stackOwner는 동일합니다. | "게시자": "Tesla", "stackOwner": "Tesla" |
독립 | 스택 소유자와 게시자 소유자를 제공해야 합니다. | "게시자": "Nirmal Kumar", "stackOwner": "ITGlue" |
파일 위치: openapidefinition.json
구문: publisher 와 stackOwner 속성은 openapidefinition.json 파일 내에서 최상위 속성으로 존재합니다. 다음과 같이 강조 표시된 줄을 추가합니다. 표시된 대로 특성 이름과 스키마를 정확히 입력했는지 확인하십시오.
빨간색으로 강조 표시된 접점 개체를 정의하는 블록을 보여주는 코드입니다. 이 블록은 설명 바로 아래에 있어야 합니다. 또 다른 블록인 x-ms-connector-metadata도 빨간색으로 강조 표시됩니다. 이 블록은 paths: {} 바로 아래에 있어야 합니다.
4c단계: 샘플 코드 조각
다음 코드 조각을 사용하여 정보를 복사하고 입력할 수 있습니다. 이전 섹션에서 설명한 대로 올바른 위치의 올바른 파일에 코드 조각을 추가했는지 확인하십시오.
"publisher": "_____",
"stackOwner": "_____"
"contact": {
"name": "_____",
"url": "_____",
"email": "_____"
}
"x-ms-connector-metadata": [
{
"propertyName": "Website",
"propertyValue": "_____"
},
{
"propertyName": "Privacy policy",
"propertyValue": "_____"
},
{
"propertyName": "Categories",
"propertyValue": "_____;_____"
}
]
참고
현재 stackOwner속성 및 Paconn CLI 도구 사용에 제한이 있습니다. 자세한 내용은 README 파일의 제한 사항 에서 확인하세요.
4d단계: JSON 파일 형식 및 제한 사항
속성이 올바르게 정렬되었는지 확인합니다.
JSON을 Visual Studio Code에 붙여넣습니다. 맞춤법 검사기와 같은 확장자 및 JSON 플러그 인과 같은 플러그 인을 자유롭게 사용하십시오.
Swagger 파일은 1MB를 초과할 수 없습니다.
- 커넥터 구축을 시작하기 전에 커넥터 디자인을 고려하십시오. 커넥터를 2개 이상의 커넥터로 분류해야 하는지 판단하십시오.
- 더 큰 Swagger 파일은 커넥터를 사용할 때 지연을 일으킬 수 있습니다.
예를 들어 플랫폼에 3개의 서로 다른 HubSpot 커넥터가 있습니다.
5단계: 플러그 인 제출 요구사항 충족
이 섹션은 인증을 위해 연결된 커넥터 플러그 인도 제출하는 경우에 적용됩니다.
- Microsoft Copilot용 AI 플러그 인 만들기(프리뷰)의 지침에 따라 플러그 인을 작성했는지 확인하세요.
- 제출된 모든 AI 플러그 인은 100.10 부적절한 콘텐츠에 강조된 표준을 준수해야 합니다.
- 모든 AI 플러그 인은 책임 있는 AI 지침을 따릅니다.
- 플러그 인은 100.10 부적절한 콘텐츠에 설명된 기존 상업용 마켓플레이스 정책에 따라 부적절하거나 유해하거나 공격적인 인공 지능(AI) 생성 콘텐츠를 생성, 포함하거나 이에 대한 액세스를 제공해서는 안 됩니다.
6단계: 커넥터 및/또는 플러그 인 아티팩트 준비
참고
- 인증에 앞서 사양을 준수했고 커넥터 및/또는 플러그인의 품질이 보장되었는지 확인하세요. 이렇게 하지 않으면 변경하라는 메시지가 표시되기 때문에 인증이 지연됩니다.
- 호스트 URL의 프로덕션 버전을 제공하십시오. 준비, 개발 및 테스트 호스트 URL은 허용되지 않습니다.
귀하는 메이커 포털이나 Microsoft Copilot Studio 에서 생성된 솔루션인 파일 세트를 Microsoft에 제출하고 있습니다. 파일을 패키징하려면 이 섹션의 단계를 따라와하세요.
커넥터 및 플러그 인 패키징 가이드
이 섹션의 절차는 다양한 패키징 시나리오를 안내합니다. 사용자 정의 커넥터만 패키징하려면 첫 번째 시나리오를 사용하세요. 사용자 정의 커넥터 와 플러그인을 모두 패키징하려면 두 번째 시나리오를 사용하세요. 기존 커넥터와 플러그인을 패키징하려면 마지막 시나리오를 사용하세요.
사용자 지정 커넥터를 패키징하고 인증을 위해 제출
1단계의 커넥터 솔루션에서 솔루션 검사기를 실행하세요.
커넥터 솔루션을 내보냅니다.
흐름 솔루션을 내보냅니다.
3단계와 5단계의 솔루션이 포함된 패키지를 만듭니다.
최종 패키지를 다음 형식의 Zip 파일로 생성합니다.
참고
The names of the folder and files outside the solution are only for reference—you can choose as per your requirements. However, don't manipulate the files inside the solution.
- 패키지를 저장소 Blob에 업로드하고 SAS URL을 생성합니다. SAS URI가 최소 15일 이상 유효한지 확인하세요.
- 패키지를 파트너 센터에 제출하세요.
인증을 위해 사용자 지정 커넥터 및 플러그 인 패키징
이 문서의 사용자 지정 커넥터 패키징 및 인증을 위해 제출의 1~5단계를 따르세요.
다음에서 패키지를 만듭니다.
- 솔루션 검사기 실행(사용자 지정 커넥터 패키징 및 인증을 위해 제출의 2단계).
- 흐름 솔루션 내보내기(사용자 지정 커넥터 패키징 및 인증을 위해 제출의 5단계).
- Microsoft Copilot Studio에서 플러그 인을 만들고 솔루션으로 내보내기(이 절차의 2단계).
최종 패키지를 다음 형식의 Zip 파일로 생성합니다.
참고
The names of the folder and files outside the solution are only for reference—you can choose as per your requirements. However, don't manipulate the files inside the solution.
- 패키지를 저장소 Blob에 업로드하고 SAS URL을 생성합니다. SAS URI가 최소 15일 이상 유효한지 확인하세요.
- 패키지를 파트너 센터에 제출하세요.
인증을 위해 기존 인증된 커넥터 및 플러그 인 패키징
Power Automate에서 솔루션을 만들고 이미 인증된 커넥터를 추가하세요.
이 문서의 사용자 지정 커넥터 패키징 및 인증을 위해 제출의 2~4단계를 따르세요.
플러그 인을 솔루션으로 내보냅니다.
다음에서 패키지를 만듭니다.
- 커넥터 솔루션에서 솔루션 검사기 실행(이 문서의 사용자 지정 커넥터 패키징 및 인증을 위해 제출의 2단계).
- Copilot Studio에서 플러그 인을 만들고 솔루션으로 내보내기(이 절차의 3단계).
- Copilot Studio에서 플러그 인을 만들고 솔루션으로 내보내기(이 절차의 4단계).
최종 패키지를 다음 형식의 Zip 파일로 생성합니다.
참고
The names of the folder and files outside the solution are only for reference—you can choose as per your requirements. However, don't manipulate the files inside the solution.
- 패키지를 저장소 Blob에 업로드하고 SAS URL을 생성합니다. SAS URI가 최소 15일 이상 유효한지 확인하세요.
- 패키지를 파트너 센터에 제출하세요.
검증된 게시자와 독립적인 게시자 모두 아티팩트를 다운로드합니다. openapidefinition.json
이 파일에서 IconBrandColor를 설정해야 합니다.
- 검증된 게시자: openapidefinition 파일에서 iconBrandColor를 귀하의 브랜드 색상으로 설정하세요.
- 독립 출판사: openapidefinition 파일에서 iconBrandColor를 "#da3b01"로 설정합니다.
intro.md 아티팩트 만들기
intro.md 파일은 독립 게시자와 인증된 게시자 모두에 필요합니다. 커넥터의 기능을 문서화하려면 intro.md 파일을 만들어야 합니다. 포함할 문서의 예를 보려면 Readme.md 예로 이동하세요. intro.md 파일 작성에 대해 알아보려면 GitHub 리포지토리에서 다른 intro.md 파일(Readme.md 파일이라고도 함)을 살펴보세요.
독립 게시자이고 커넥터가 OAuth를 사용하는 경우 자격 증명을 얻는 방법에 대한 지침을 포함해야 합니다.
팁
알려진 문제와 제한은 사용자를 최신 상태로 유지하기 위한 훌륭한 섹션입니다.
단계 7: 구조에 대한 패키지 검증
패키지 검증 스크립트는 패키지 구조를 검증하고 인증에 적합한 형식으로 패키지를 생성하는 데 도움을 줍니다. 다음 링크를 사용하여 패키지 검증기 스크립트를 다운로드하세요: ConnectorPackageValidator.ps1.
스크립트를 실행하려면 다음 단계를 따르세요.
관리자 모드에서 Windows PowerShell을 엽니다.
cd /
를 입력하여 드라이브 위치를 변경하세요.다음 예에서는
C:\
를 사용합니다.패키지 검증 스크립트를 다운로드한 경로로 이동합니다.
예를 들어, 경로가
C:\Users\user01\Downloads
인 경우cd .\Users\user01\Downloads\
를 입력합니다.다음 명령을 입력하여 실행 정책을 제한 없음으로 설정합니다.
Set-ExecutionPolicy -ExecutionPolicy Unrestricted
이 명령을 사용하면 PowerShell을 아무런 제한 없이 실행할 수 있습니다.
Y 를 입력하여 입력을 확인하세요. 이는 예 를 의미합니다.
다음 단계에 따라 ConnectorPackageValidator.ps1 을 실행합니다.
- 커넥터 패키지가 포함된 zip 파일 경로를 입력하세요.
- AI 플러그 인가 활성화되어 있는지 여부를 지정합니다.
다음 예에서 보듯이 첫 번째 인수는 패키지가 들어 있는 유효한 zip 파일 경로입니다. 두 번째 인수는
yes
/y
AI 플러그 인가 활성화되어 있음을 나타내거나no
/n
비활성화되어 있음을 나타냅니다.패키지 구조가 올바르면 다음과 같은 성공 메시지가 표시됩니다.
패키지 구조에 문제가 있는 경우 스크립트는 패키지 구조의 결함을 감지하고 강조 표시하여 문제에 대한 세부 정보를 제공합니다.
단계 8: 인증을 위해 커넥터 및/또는 플러그인을 제출하세요
제출 과정에서 커넥터 및 플러그 인을 당사 Microsoft Power Platform 커넥터 리포지토리에 오픈 소싱하게 됩니다.
(독립 게시자의 경우) 인증을 위해 패키지를 Microsoft에 제출하려면 독립 게시자 인증 프로세스의 지침을 따르세요.
(인증된 게시자의 경우) 파트너 센터 인증을 위해 패키지를 Microsoft에 제출하려면 인증된 게시자 인증 프로세스의 지침을 따르세요.
인증된 게시자인 경우 사용자 지정 코드를 사용하는 경우 script.csx 파일을 제출해야 합니다.
커넥터에 OAuth가 있는 경우 파트너 센터에서 클라이언트 ID와 비밀번호를 제공하세요. 또한 앱을 업데이트하려면 커넥터 제출 요청에서 API 이름을 가져오세요.
제출의 일부로 Microsoft는 커넥터를 인증 및/또는 플러그 인합니다. Swagger 오류를 해결해야 하는 경우 Swagger 유효성 검사기 오류 수정으로 이동합니다.
제출 전 체크리스트
Microsoft 인증을 위한 커넥터 제출로 이동하기 전에 다음을 확인하십시오.
커넥터 및/또는 플러그 인은 2단계: 커넥터 제출 요구 사항 충족, 5단계: 플러그 인 제출 요구 사항 충족, 4단계: 메타데이터 추가에 설정된 모든 표준을 충족합니다.
작업이 예상대로 작동하는지 확인하기 위해 사용자 지정 커넥터 및/또는 플러그 인을 테스트했습니다(작업당 10번 이상 성공적인 호출).
런타임 또는 스키마 유효성 검사 오류가 사용자 지정 커넥터 마법사의 테스트 섹션에 나타납니다.
팁