Azure Logic Apps에서 토큰의 진위를 확인하려면 토큰이 올바른 청중을 위해 올바르게 발행되고 의도 된 것을 보장합니다. 다음과 같은 방법은 다음과 같습니다.
1. 토큰 획득 : 먼저 AAD (Azure Active Directory)를 사용하여 토큰을 올바르게 구입해야합니다. 여기에는 일반적으로`https : // login.microsoftonline.com/tenantid/oauth2/token`가`client_id`,`client_secret`,`grant_type = client_credentitys`와 같은 매개 변수가있는`https : // login.microsoftonline.com/tenantid/oauth2/token에 게시 요청을 보내는 것이 포함됩니다.
2. 로직 앱에서의 토큰 유효성 검사 : HTTP 트리거가있는 로직 앱에 요청이 이루어지면 '인증'헤더를 확인하여 토큰을 확인할 수 있습니다. 이 헤더에는 예상 대상 및 발급자에 대해 확인할 수있는 베어러 토큰이 포함되어야합니다. 로직 앱에서 조건을 사용하여 '권한 부인'헤더가 "Bearer"로 시작하는지 확인할 수 있습니다 [5].
3. 잠재 고객 및 발행자 검증 : 토큰의 잠재 고객이 논리 앱에서 기대하는 것을 일치하도록하십시오. 청중이 일치하지 않으면 "invalidauthenticationtokenaudience"와 같은 오류가 발생합니다 [4]. 또한 올바른 Azure Ad Tenant로부터 오는지 확인하기 위해 발행인을 확인해야합니다.
4. Azure AD 정책 사용 : 로직 앱 내에서 Azure AD 정책을 구성하여 예상 발급자 및 잠재 고객을 지정할 수 있습니다. 여기에는 로직 앱의 트리거 설정에서 올바른 발행자 및 잠재 고객으로 AAD 정책을 설정하는 것이 포함됩니다 [1].
5. 관리 ID : 보안 향상을 위해 관리 된 ID를 사용하여 Microsoft Entra 보호 자원에 대한 액세스를 인증하는 것을 고려하십시오. 이것은 로직 앱 워크 플로우에서 토큰 관리 및 검증을 단순화 할 수 있습니다 [6] [8].
이 단계를 수행하면 Azure Logic 앱에서 토큰의 진위를 효과적으로 검증 할 수 있습니다.
인용 :
[1] https://demiliani.com/2023/12/28/azure-logic-apps-securing-http-triggers-with-microsoft-entra-id-authentication/
[2] https://turbo360.com/blog/validating-json-message-against-schema-in-logic-apps
[3] https://www.mikaelsand.se/2023/01/getting-a-bearer-token-from-aad-using-logic-apps/
[4] https://stackoverflow.com/questions/75551840/invalidauthenticationtokenaudence-authentication-for-logic-apps
[5] https://www.linkedin.com/pulse/securing-request 기반 Triggered-logic-apps-using-azure-senih
[6] https://learn.microsoft.com/en-us/azure/logic-apps/authenticate-with-managed-identity
[7] https://gotoguy.blog/2020/12/05/blog-series-powering-ug-home-lights-part-4-using-logic-apps-to-get-access-token-renew-acces-ccces-token-if-neededed/comment-page-1/1/
[8] https://docs.azure.cn/en-us/logic-apps/logic-apps-securing-a-logic-app