2014-11-07 11 views
0

나는 Katana OpenID Connect 미들웨어를 사용하여 타사 (OpenAM) 제공 업체와 인증하는 프로젝트를 진행하고 있습니다. 공급자가 hmac-sh256으로 JWT에 서명하고 있습니다. OpenID 미들웨어가 ValidateToken에 대한 호출을 통해 JWT의 유효성을 검사 할 때hmac-sh256으로 서명 된 JWT 확인

{ "IDX10503 : Signature validation failed. \ n 'System.IdentityModel.Tokens.X509AsymmetricSecurityKey'\ nSignatureAlgorithm : ... hmac-sha256 ', 확인하려면 \ n'System.InvalidOperationException : IDX10618 : AsymmetricSecurityKey.GetHashAlgorithmForSignature (...) 예외가 발생했습니다. SignatureAlgorithm이 지원되는지 확인하십시오. \ nException : 'System.NotSupportedException :이 알고리즘에서'http://www.w3.org/2001/04/xmldsig-more#hmac-sha256 '암호화 알고리즘이 지원되지 않습니다. \ System \ .. ....

무엇이 누락되었거나 기본 SecurityTokenHandler가 실제로이 알고리즘을 지원하지 않습니까?

감사합니다,

고든

답변

0

나는 카타나에 익숙하지 않아요하지만 잘못된 코드 경로가 트리거처럼 내게 보이는 : 예외가 비대칭 보안 키에 대해 불평하지만, HMAC-SHA256 알고리즘입니다 대칭 키 (예 : 클라이언트 비밀)를 기반으로합니다.

또한 비교적 최근 버전의 OpenAM이 필요합니다. 이는 이전에 HMAC 관련 버그가 포함되어 있었기 때문입니다. https://bugster.forgerock.org/jira/browse/CAF-112; 적어도 OpenAM-12.0.0보다 최근의 것 - SNAPSHOT_20140417