DNS / 도메인 준비
Frame MCP app 의 Application ID URI 를 https://{customer}.axelabs.ai/frame/mcp 형식으로 등록하려면, 귀사 tenant 에 해당 도메인을 검증 해야 합니다.
왜 검증이 필요한가
Microsoft Entra ID 의 보안 정책:
api://...형식: 검증 불필요 (임의 문자열 허용)https://...형식: 도메인 검증 필수 (도메인 소유 증명)
https:// 형식이 필요한 이유:
- Anthropic Claude 가
resource파라미터로 MCP server URL (https://...) 을 그대로 사용 - Microsoft 가
resource와scope의 URI prefix 일치 검사 (AADSTS9010010) - → Application ID URI 도
https://로 통일해야 prefix 일치
Zone 책임 모델 (먼저 확인)
| 도메인 | Zone 소유자 | 누가 TXT 추가 |
|---|---|---|
{customer}.axelabs.ai (서비스 노출용, 예: realchoice.axelabs.ai) | 액스코퍼레이션 주식회사 (운영 주체) | 운영자가 추가 — 귀사 IT 는 안내 메시지만 전달 |
귀사 corporate domain (예: realchoice.co.kr) | 귀사 IT (Cloudflare / Route53 / 가비아 등) | 귀사 IT 직접 (Microsoft 365 verified domain 등록 시) |
본 페이지는 두 경로 다 다룹니다. 둘 중 어느 쪽이 필요한지 운영자와 확인 후 진행.
⚠️ Microsoft Entra ID 의 Application ID URI 검증에는
{customer}.axelabs.ai만 충분 (Frame MCP app 의https://{customer}.axelabs.ai/frame/mcp). 코퍼레이트 도메인은 SSO 사용자 식별 (이메일 verified) 용도이며, M365 tenant 가 이미 가지고 있을 확률이 높음 — 기 검증 상태면 본 페이지 §B 는 skip.
A. {customer}.axelabs.ai 검증 — 운영자 처리, 귀사 IT 1 분
이 도메인 zone (axelabs.ai) 은 운영 주체 (액스코퍼레이션 주식회사) 가 Cloudflare 에서 관리합니다. 귀사 IT 는 다음만 하면 됩니다.
A-1. Azure 에서 도메인 추가
Azure portal → Microsoft Entra ID → Custom domain names → + Add custom domain
- 입력:
{customer}.axelabs.ai(예:realchoice.axelabs.ai) - Add
- Microsoft 가 화면에 TXT record 표시:
Type: TXT Name: @ Value: MS=ms<숫자> (예: MS=ms10433167) TTL: 3600
A-2. 운영자에게 한 줄 전달
평문 메일 / Teams 채팅 등 어떤 채널이라도 가능 (TXT 값은 비밀 아님):
운영자께,
axelabs.ai zone 의 realchoice 서브도메인에 다음 TXT 추가 부탁드립니다 (M365 tenant 검증용):
Type: TXT
Name: realchoice ← @ 아님, customer ID
Value: MS=ms10433167 ← Azure 가 표시한 값
운영자가 추가 후 알려주시면 Verify 클릭하겠습니다. — {customer} IT운영자가 Cloudflare API (POST /zones/{ZONE_ID}/dns_records) 로 추가 (~30초). 운영자가 “추가됨” 회신.
A-3. propagation 확인 (귀사 IT)
운영자 회신 후:
dig +short TXT {customer}.axelabs.ai @1.1.1.1
# 예상: "MS=ms10433167"1~5 분 소요. 비어 있으면 좀 더 대기.
A-4. Azure 에서 Verify
Azure portal 의 Custom domain names 페이지 → 추가한 도메인 → Verify 클릭. ✓ “Verified” 표시되면 완료.
B. 귀사 corporate domain 을 M365 verified domain 으로 추가 (선택)
귀사 M365 tenant 가 {customer}.onmicrosoft.com 만 가지고 있고 회사 도메인 (예: realchoice.co.kr) 이 아직 verified 가 아닌 경우 — 직원 이메일 ([email protected]) 로 SSO 로그인하기 위해 필요.
이 작업은 귀사 zone (귀사 DNS provider) 에서 귀사 IT 가 직접 추가합니다.
B-1. Azure 에서 도메인 추가
Azure portal → Microsoft Entra ID → Custom domain names → + Add custom domain
- 입력:
realchoice.co.kr - Add → Microsoft 가 TXT record 표시:
Type: TXT Name: @ Value: MS=ms<숫자>
B-2. 귀사 DNS provider 에 TXT 추가
귀사가 Cloudflare 를 쓴다고 가정 (다른 provider 도 동일 개념):
| 필드 | 값 |
|---|---|
| Type | TXT |
| Name | @ (zone root — Cloudflare 는 zone 이름 자동 채움) |
| Content | MS=ms<숫자> |
| TTL | Auto |
| Proxy status | DNS only |
Route53 / 가비아 / 후이즈 등 다른 provider 도 root TXT 로 동일.
B-3. propagation + Verify
dig +short TXT realchoice.co.kr @1.1.1.1OK 면 Azure 측 Verify 클릭.
검증 후 Application ID URI 등록
이제 Frame MCP app 의 Expose an API 탭에서:
Application ID URI: https://{customer}.axelabs.ai/frame/mcpAzure 가 검증된 도메인으로 인식하여 허용. Frame MCP 등록 §3-3 계속.
DNS record 종합 (참고)
운영자 측 (axelabs.ai zone) 에 자동 등록되는 record 들 (axe onboard 의 step 4~5 가 Cloudflare API 호출):
| Type | Name | Content | 용도 |
|---|---|---|---|
| CNAME | {customer} | <tunnel-uuid>.cfargotunnel.com | 트래픽 라우팅 (cloudflared tunnel) |
| TXT | {customer} | MS=ms<숫자> | Microsoft 도메인 검증 (§A) |
귀사 corporate domain (예: realchoice.co.kr) 은 별도 zone — §B 에서 처리 (또는 이미 verified 상태일 가능성).
함정
§A ({customer}.axelabs.ai — 운영자 측):
| 함정 | 결과 | 회피 |
|---|---|---|
| customer 가 운영자에게 안 알리고 zone 직접 만지려 함 | 권한 없어 실패 | §A-2 — 운영자에게 한 줄 전달 |
| propagation 대기 안 함 (즉시 verify) | Microsoft 가 TXT 못 찾음 | 1~5 분 대기 후 verify |
§B (귀사 corporate domain — 귀사 측):
| 함정 | 결과 | 회피 |
|---|---|---|
| Cloudflare Proxy status orange-cloud | TXT lookup 차단 | DNS only (회색 구름) |
@ 외에 다른 Name (mail, www 등) | zone root 가 아니라 서브에 붙음 | @ 사용 |
| 가비아 / 후이즈에서 TXT @ 입력 시 호스트명 빈칸 처리 | record 가 등록되지 않음 | provider 별 매뉴얼 확인 (대개 빈칸 = root) |
| M365 tenant 가 이미 같은 도메인 verified — 중복 추가 | ”domain already exists” 오류 | tenant 의 Custom domain names 에서 기 등록 여부 사전 확인 |
다음: 운영자에게 넘길 값 →