피드로 돌아가기
Dev.toSecurity
원문 읽기
OAuth2 비표준 API 연동 시 발생한 3가지 장애 해결 및 분석
Custom connector with OAuth2: three auth pitfalls we debugged
AI 요약
Context
Power Automate의 Custom Connector를 통한 제3자 물류 API 연동 과정에서 발생한 OAuth2 인증 실패 분석. 플랫폼의 표준 OAuth2 구현체와 IdP(Identity Provider)의 비표준 구현 간 간극으로 인해 런타임 오류 및 인증 만료 문제 발생.
Technical Solution
- Tenant별 상이한 Redirect URL 문제를 해결하기 위해 IdP 내 환경별 개별 Redirect URL 등록 및 관리 구조 채택
- Token 만료 후 자동 갱신 실패 방지를 위해 OpenAPI Schema 내 refreshUrl을 명시적으로 설정하여 플랫폼의 Refresh Token 요청 트리거 확보
- OAuth2 표준 외 추가 파라미터(tenant_id) 요구 사항 해결을 위해 Azure Function을 Proxy로 활용한 Token Exchange Layer 설계
- 보안 강화를 위해 Client Secret을 Git에서 제거하고 Azure Key Vault 기반의 환경 변수 참조 방식으로 Secret Management 체계 변경
- Managed Solution 배포 시 Connection Reference를 불변 객체로 취급하여 환경 간 인증 일관성 유지
실천 포인트
1. IdP의 Redirect URL 와일드카드 지원 여부 확인 및 환경별 URL 리스트 확보
2. OpenAPI 정의서 내 refreshUrl 필드 누락 여부 검증
3. Token Exchange 시 표준 외 추가 파라미터 요구 여부 사전 확인
4. Refresh Token Rotation 정책 및 유효 기간 확인을 통한 재인증 주기 설계
5. Client Secret의 Key Vault 저장 및 환경 변수 참조 적용