2016-11-21 5 views
0

내 애플리케이션에서 OAuth 2 인증을 사용하고 8 시간 후에 만료되는 액세스 코드에서 액세스 토큰을받습니다. 이 만료 시간을 늘릴 수있는 방법이 있습니까? 기본 만료 시간은 28800 (8 시간)입니다. 30 일 또는 60 일 동안 사용하고 싶습니다. 가능한가? 나는 암묵적 승인 흐름에서 이것이 가능하다는 것을 알고 있지만 승인 코드 부여 흐름을 계속하고자한다면 가능한가?OAuth 2에서 승인 코드 부여 플로우에서 생성 된 액세스 토큰의 만료 시간을 명시 적으로 변경할 수 있습니까?

감사합니다.

답변

1

보안상의 이유로 특정 제한을 초과하여 액세스 토큰의 수명을 늘릴 수 없습니다. 이 토큰은 수명이 짧습니다. 할 수있는 한 가지 방법은 오프라인 액세스를 위해 새로 고침 토큰을 발급하는 것입니다. 따라서 액세스 토큰이 만료/만료 될 때 클라이언트 (보안)는 권한 부여 서버와 통신하여 새로운 액세스 토큰을 발급받을 수 있습니다.

1

발급 받기 전에 STS에서 서명 한대로 토큰 자체를 수정할 수 없습니다. 필드 자체를 수정하는 경우 토큰을 가졌을 때 서명 유효성 검사가 실패합니다. dvsakgec이 말했듯이,이 토큰은 수명이 짧으며 올바른 패턴은 새로 고침 토큰을 사용하여 만료되었을 때 새로운 액세스 토큰을 얻는 것입니다. 대부분의 ID 공급자의 경우 새로 고침 토큰이 만료되지 않으므로 항상 새 액세스 토큰을 얻을 수 있습니다.

이제 일부 ID 공급자는 개발자 도구를 통해 토큰을 구성 할 수있게되었습니다. 공급자에 따라 다릅니다. 토큰 만료에 대한 하드 라인 가이드는 없으며, ID 제공자가 결정하는 것은 무엇이든합니다.