Azure Logic 앱에서 토큰 만료 시간 구성에는 OAUTH 2.0 프레임 워크 내에서 액세스 토큰 및 새로 고침 토큰이 작동하는 방법을 이해하는 것이 포함됩니다. 다음은 토큰 만료를 관리하는 방법에 대한 단계별 가이드입니다.
토큰 수명 이해
- 액세스 토큰 : 보호 된 자원에 액세스하는 데 사용되는 단기 토큰입니다. 그들은 일반적으로 클라이언트 응용 프로그램 및 임차인 설정에 따라 60 ~ 90 분 후에 만료됩니다 [6]. 수명을 직접 연장 할 수는 없지만 새로 고침 토큰을 사용하여 필요할 때 새로운 액세스 토큰을 얻을 수 있습니다.
- 새로 고침 토큰 : 기존 토큰이 만료되면 새로운 액세스 토큰을 얻는 데 사용됩니다. 새로 고침 토큰의 수명이 길고 일반적으로 기본적으로 90 일이 더 길다 [5].
Azure Logic 앱에서 토큰 만료 구성
1. 새로 고침 토큰 사용 :
- 로직 앱에서 Oauth 2.0을 설정하면 액세스 및 새로 고침 토큰을 모두 구성하십시오. 이를 통해 현재 앱이 만료 될 때 앱이 새 액세스 토큰을 자동으로 요청할 수 있습니다 [1] [3].
2. 토큰 갱신 논리 구현 :
- 액세스 토큰이 만료 될 것인지 확인하는 로직 앱 작업을 만듭니다. 그렇다면 새로 고침 토큰을 사용하여 새로운 액세스 토큰을 얻으십시오. 이것은 새로 고침 토큰으로 토큰 엔드 포인트에 HTTP 요청을함으로써 수행 할 수 있습니다 [3].
3. 토큰을 안전하게 저장하십시오.
- Azure Key Vault를 사용하여 클라이언트 ID, 클라이언트 비밀 및 액세스 토큰을 안전하게 저장하십시오. 이를 통해 민감한 정보가 노출되지 않고 토큰이 새로 고침 될 때 쉽게 업데이트 될 수 있습니다 [3].
4. 토큰 만료 모니터 :
- 최대 24 개월 후 만료되는 클라이언트 비밀의 경우 로직 앱을 사용하여 만료 날짜를 모니터링하고 알림을 보냅니다. 이렇게하면 신청이 만료되기 전에 비밀을 업데이트하여 응용 프로그램이 기능적으로 유지되도록합니다 [2].
토큰 갱신에 대한 예제 논리
로직 앱에서 액세스 토큰이 만료 될 것인지 확인하는 단계를 추가 할 수 있습니다. 다음은 사용자 정의 표현식을 사용하여이를 구현할 수있는 방법에 대한 단순화 된 예입니다.
1. 토큰 만료 확인 :
- 조건을 사용하여 만료 시간에 따라 토큰이 만료 될 것인지 확인하십시오.
2. 새로 고침 토큰 :
- 토큰이 곧 만료되면 HTTP 조치를 사용하여 새로 고침 토큰을 사용하여 토큰 엔드 포인트에 요청을 보내십시오. 요청에는 인증을위한 클라이언트 ID 및 클라이언트 비밀이 포함되어야합니다.
3. 토큰 업데이트 :
- 새로운 액세스 토큰을 키 보드에 단단히 저장하고 새 토큰을 사용하기 위해 후속 조치를 업데이트하십시오.
이러한 단계를 구현하면 Azure Logic 앱에서 토큰 만료를 효과적으로 관리하고 워크 플로의 지속적인 작동을 보장 할 수 있습니다.
인용 :
[1] https://devforum.zoom.us/t/access-token-expires-after-one-hour-so-logic-app-flowstep-runs-on-hour-no-renew/99225
[2] https://community.dynamics.com/blogs/post/?postid=662760c7-e0cc-4ca5-b5e4-80962f9b926f
[3] https://gotoguy.blog/2020/12/05/blog-series-powering-ug-home-lights-part-4-using-logic-apps-to-get-access-token-nrenew-accces-token-if-neededed/comment-page-1/1/
[4] https://learnsentinel.blog/2021/12/01/using-logic-apps-and-microsoft-sentinel-ton-alert-on-azure-ad-secrets/
[5] https://learn.microsoft.com/en-us/answers/questions/843346/how-to-change-token-expiration-in-azure-porta
[6] https://docs.azure.cn/en-us/entra/identity-platform/configurable-token-lifetimes
[7] https://community.dynamics.com/forums/thread/details/?threadid=0cedd8c8-4382-4f02-9d86-8cfbcaa41c54
[8] https://www.youtube.com/watch?v=vjpihv2cnwa
[9] https://www.restack.io/p/azure-logic-app-bearer-token-answer-cat-ai