gluu
公開メンバ関数 | 静的公開メンバ関数 | 非公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.xdi.oxauth.model.crypto.binding.TokenBindingMessage クラス
org.xdi.oxauth.model.crypto.binding.TokenBindingMessage 連携図
Collaboration graph

公開メンバ関数

 TokenBindingMessage (String base64urlencoded) throws TokenBindingParseException
 
 TokenBindingMessage (byte[] raw) throws TokenBindingParseException
 
 TokenBindingMessage (List< TokenBinding > tokenBindings)
 
List< TokenBindinggetTokenBindings ()
 
TokenBinding getFirstTokenBindingByType (TokenBindingType type)
 
String toString ()
 

静的公開メンバ関数

static Function< JsonWebResponse, Void > createIdTokenTokingBindingPreprocessing (String tokenBindingMessageAsString, final String rpTokenBindingMessageHashClaimKey) throws TokenBindingParseException
 
static void setCnfClaim (JsonWebResponse jsonWebResponse, String tokenBindingIdHash, String rpTokenBindingMessageHashClaimKey)
 
static String getTokenBindingIdHashFromTokenBindingMessage (String tokenBindingMessageAsString, final String rpTokenBindingMessageHashClaimKey) throws TokenBindingParseException
 

非公開変数類

List< TokenBindingtokenBindings = new ArrayList<TokenBinding>()
 

静的非公開変数類

static final Logger log = Logger.getLogger(TokenBindingMessage.class)
 

詳解

struct {
    TokenBinding tokenbindings<132..2^16-1>;
} TokenBindingMessage;
著者
Yuriy Zabrovarnyy

構築子と解体子

◆ TokenBindingMessage() [1/3]

org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.TokenBindingMessage ( String  base64urlencoded) throws TokenBindingParseException
inline
28  {
29  this(TokenBindingMessageParser.parseBase64UrlEncoded(base64urlencoded));
30  }

◆ TokenBindingMessage() [2/3]

org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.TokenBindingMessage ( byte []  raw) throws TokenBindingParseException
inline
32  {
33  this(TokenBindingMessageParser.parseBytes(raw));
34  }

◆ TokenBindingMessage() [3/3]

org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.TokenBindingMessage ( List< TokenBinding tokenBindings)
inline
36  {
38  }
List< TokenBinding > tokenBindings
Definition: TokenBindingMessage.java:26

関数詳解

◆ createIdTokenTokingBindingPreprocessing()

static Function<JsonWebResponse, Void> org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.createIdTokenTokingBindingPreprocessing ( String  tokenBindingMessageAsString,
final String  rpTokenBindingMessageHashClaimKey 
) throws TokenBindingParseException
inlinestatic
53  {
54  final boolean tokenBindingMessagePresent = StringUtils.isNotBlank(tokenBindingMessageAsString);
55  final boolean rpKeyPresent = StringUtils.isNotBlank(rpTokenBindingMessageHashClaimKey);
56 
57  log.trace("TokenBindingMessage present: " + tokenBindingMessagePresent + ", rpCnfKey: " + rpTokenBindingMessageHashClaimKey);
58 
59  if (tokenBindingMessagePresent && rpKeyPresent) {
60  TokenBindingMessage message = new TokenBindingMessage(tokenBindingMessageAsString);
61  final TokenBinding referredBinding = message.getFirstTokenBindingByType(TokenBindingType.REFERRED_TOKEN_BINDING);
62  return new Function<JsonWebResponse, Void>() {
63  @Override
64  public Void apply(JsonWebResponse jsonWebResponse) {
65  setCnfClaim(jsonWebResponse, referredBinding.getTokenBindingID().sha256base64url(), rpTokenBindingMessageHashClaimKey);
66  return null;
67  }
68  };
69  }
70  return null;
71  }
static final Logger log
Definition: TokenBindingMessage.java:24
static void setCnfClaim(JsonWebResponse jsonWebResponse, String tokenBindingIdHash, String rpTokenBindingMessageHashClaimKey)
Definition: TokenBindingMessage.java:73
TokenBindingMessage(String base64urlencoded)
Definition: TokenBindingMessage.java:28

◆ getFirstTokenBindingByType()

TokenBinding org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.getFirstTokenBindingByType ( TokenBindingType  type)
inline
44  {
45  for (TokenBinding binding : tokenBindings) {
46  if (binding.getTokenBindingType() == type) {
47  return binding;
48  }
49  }
50  return null;
51  }
List< TokenBinding > tokenBindings
Definition: TokenBindingMessage.java:26

◆ getTokenBindingIdHashFromTokenBindingMessage()

static String org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.getTokenBindingIdHashFromTokenBindingMessage ( String  tokenBindingMessageAsString,
final String  rpTokenBindingMessageHashClaimKey 
) throws TokenBindingParseException
inlinestatic
87  {
88  if (StringUtils.isNotBlank(tokenBindingMessageAsString) && StringUtils.isNotBlank(rpTokenBindingMessageHashClaimKey)) {
89  TokenBindingMessage message = new TokenBindingMessage(tokenBindingMessageAsString);
90  final TokenBinding referredBinding = message.getFirstTokenBindingByType(TokenBindingType.REFERRED_TOKEN_BINDING);
91  return referredBinding.getTokenBindingID().sha256base64url();
92  }
93  return null;
94  }
TokenBindingMessage(String base64urlencoded)
Definition: TokenBindingMessage.java:28

◆ getTokenBindings()

List<TokenBinding> org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.getTokenBindings ( )
inline
40  {
41  return tokenBindings;
42  }
List< TokenBinding > tokenBindings
Definition: TokenBindingMessage.java:26

◆ setCnfClaim()

static void org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.setCnfClaim ( JsonWebResponse  jsonWebResponse,
String  tokenBindingIdHash,
String  rpTokenBindingMessageHashClaimKey 
)
inlinestatic
73  {
74  try {
75  JSONObject value = jsonWebResponse.getClaims().getClaimAsJSON("cnf");
76  if (value == null) {
77  value = new JSONObject();
78  }
79  value.put(rpTokenBindingMessageHashClaimKey, tokenBindingIdHash);
80 
81  jsonWebResponse.getClaims().setClaim("cnf", value);
82  } catch (JSONException e) {
83  log.error("Failed to create cnf JSON object", e);
84  }
85  }
static final Logger log
Definition: TokenBindingMessage.java:24

◆ toString()

String org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.toString ( )
inline
97  {
98  return "TokenBindingMessage{" +
99  "tokenBindings=" + tokenBindings +
100  '}';
101  }
List< TokenBinding > tokenBindings
Definition: TokenBindingMessage.java:26

メンバ詳解

◆ log

final Logger org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.log = Logger.getLogger(TokenBindingMessage.class)
staticprivate

◆ tokenBindings

List<TokenBinding> org.xdi.oxauth.model.crypto.binding.TokenBindingMessage.tokenBindings = new ArrayList<TokenBinding>()
private

このクラス詳解は次のファイルから抽出されました: