IdentityServer를 사용하여 API에 대한 액세스를 제어하고 있습니다. 나는 토큰을 발행하고 보안 API에 대한 액세스 요청의 유효성을 확인하는 별도의 인증 API를 가지고있다.Identity Server 새로 고침 토큰 리소스 소유자 비밀번호 자격증 명 흐름
사용자에게 보안 웹 응용 프로그램을 통해 액세스 토큰을 생성 할 수있는 권한을 부여합니다. 리소스 소유자 암호 자격 증명 흐름을 사용하고 있습니다.
사용자가 로그인하여 요청하지 않고 새로 고침 토큰을 발행 할 수있는 방법이 있습니까? 아니면 초기 액세스 토큰의 만료를 설정할 수있는 방법이 있습니까?
코드
이
내가 토큰을 생성하기 위해 사용하고 코드입니다.DiscoveryResponse disco = await DiscoveryClient.GetAsync("http://localhost:27144");
TokenClient tokenClient = new TokenClient(disco.TokenEndpoint, "My Client", "MySecret");
TokenResponse tokenResponse = await tokenClient.RequestResourceOwnerPasswordAsync("testUser", "testPassword");
자세한 정보를 제공해 주시겠습니까? 'AllowOfflineAccess = True'를 설정하면 IdentityServer는 자동으로'refresh_token'을 반환합니다. 당신은 또한'AccessTokenLifetime'을 설정할 수 있습니다 ... – moritzg
@moritzg allowOfflineAccess 플래그를 true로 설정하고 absoluteRefreshTokenLifetime을 31540000으로 설정합니다.이 값은 1 년이어야합니다. 그러나 토큰 응답 오브젝트는 expiresIn 특성에 대해 3600을 리턴합니다. refresh_token도 반환되는 것을 볼 수 있습니다. 권한 부여 헤더에이를 전달합니까? –
"토큰 응답 객체"는 어떤 토큰을 의미합니까? – moritzg