2016-12-20 4 views
1

가 나는 AAA Policy의 일환으로 JWT Generator을 만들어만들기 JWT 사용자 정의 주장

데이터 파워 7.5.2.0에서 실행하고 잘 작동, 나는 문제없이 함께 JWT를 생성 확인 외부 후 서명 할 수 있어요 .

는 지금은 JWT에 사용자 지정 클레임을 추가하려면, 그래서 Custom의 상자를 쳤다 다음이 게이트웨이 스크립트 파일 업로드 :

var claim = { 
    "result" : { 
     "user" : "hardcode" 
    } 
}; 
session.output.write(claim); 

을 그리고 그것은 user 속성과 올바른 JWT를 생성합니다. 그러나 나는 그렇게처럼에 두 번째 값을 추가하려고하면

var claim = { 
    "result" : { 
     "user" : "hardcode", 
     "name" : "myname" 
    } 
}; 
session.output.write(claim); 
지금이 오류를 얻을

:

[Error: Required CustomClaim Name or Value field missing] errorMessage: 'Required CustomClaim Name or Value field missing', errorCode: '0x8580005c', errorDescription: 'GatewayScript console log message.', errorSuggestion: 'GatewayScript console log message. Refer to the message for more information.' 

I 출력을 설정했다 내가 실현하기 전에 내가 가진 동일한 메시지가 정보 센터의 모호한 문서에서 result으로 변경하십시오.

어떻게 JWT Generator 게이트웨이 스크립트에 여러 개의 사용자 지정 클레임을 추가합니까 ??

답변

1

데이터 파워는 단일 사용자 지정 클레임을 추가 할 수 있습니다 것으로 생각된다, 그래서 당신은 단지 복잡한 오브젝트과 같이 있는지 확인해야합니다

var claim = { 
    "result" : { 
     "claim" : { 
      "user" : "hardcode", 
      "one" : true, 
      "clientId" : "asdf-asdf-asdf", 
      "endpoint" : "http://192.168.142:8080/member/ws" 
     } 
    } 
}; 
session.output.write(claim); 

이 다음 둥지 주장과 올바른 JWT를 생성합니다.

eyJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJhcGljIiwic3ViIjoiYWRtaW4iLCJleHAiOjE0ODIyNjU5ODQsImlhdCI6MTQ4MjI2MjM4NCwianRpIjoiZDhjNTE1ZDEtZmVjMS00ZGVmLThiNDctZmYzY2E2OWVjOWRiIiwibm9uY2UiOiJtN2lVZlBqTCIsImF1ZCI6ImlkMSIsImNsYWltIjp7InVzZXIiOiJmcmVkIiwib25lIjp0cnVlLCJjbGllbnRJZCI6ImFzZGYtYXNkZi1hc2RmIiwiZW5kcG9pbnQiOiJodHRwOi8vMTkyLjE2OC4xNDI6ODA4MC9tZW1iZXIvd3MifX0.viakwnM5bhhmGIn0QmDJTmsWCuIciO2BOdUVyxYpsFA