keycloak
公開メンバ関数 | 非公開変数類 | 全メンバ一覧
org.keycloak.authorization.client.util.HttpMethodAuthenticator< R > クラステンプレート
org.keycloak.authorization.client.util.HttpMethodAuthenticator< R > 連携図
Collaboration graph

公開メンバ関数

 HttpMethodAuthenticator (HttpMethod< R > method, ClientAuthenticator authenticator)
 
HttpMethod< R > client ()
 
HttpMethod< R > oauth2ResourceOwnerPassword (String userName, String password)
 
HttpMethod< R > uma ()
 
HttpMethod< R > uma (AuthorizationRequest request)
 

非公開変数類

final HttpMethod< R > method
 
final ClientAuthenticator authenticator
 

詳解

著者
Pedro Igor

構築子と解体子

◆ HttpMethodAuthenticator()

39  {
40  this.method = method;
42  }
final ClientAuthenticator authenticator
Definition: HttpMethodAuthenticator.java:37
final HttpMethod< R > method
Definition: HttpMethodAuthenticator.java:36

関数詳解

◆ client()

44  {
45  this.method.params.put(OAuth2Constants.GRANT_TYPE, Arrays.asList(OAuth2Constants.CLIENT_CREDENTIALS));
46  authenticator.configureClientCredentials(this.method.params, this.method.headers);
47  return this.method;
48  }
void configureClientCredentials(Map< String, List< String >> requestParams, Map< String, String > requestHeaders)
final ClientAuthenticator authenticator
Definition: HttpMethodAuthenticator.java:37
final HttpMethod< R > method
Definition: HttpMethodAuthenticator.java:36

◆ oauth2ResourceOwnerPassword()

HttpMethod<R> org.keycloak.authorization.client.util.HttpMethodAuthenticator< R >.oauth2ResourceOwnerPassword ( String  userName,
String  password 
)
inline
50  {
51  client();
52  this.method.params.put(OAuth2Constants.GRANT_TYPE, Arrays.asList(OAuth2Constants.PASSWORD));
53  this.method.params.put("username", Arrays.asList(userName));
54  this.method.params.put("password", Arrays.asList(password));
55  return this.method;
56  }
HttpMethod< R > client()
Definition: HttpMethodAuthenticator.java:44
final HttpMethod< R > method
Definition: HttpMethodAuthenticator.java:36

◆ uma() [1/2]

58  {
59  // if there is an authorization bearer header authenticate using bearer token
60  Header authorizationHeader = method.builder.getFirstHeader("Authorization");
61 
62  if (!(authorizationHeader != null && authorizationHeader.getValue().toLowerCase().startsWith("bearer"))) {
63  client();
64  }
65 
66  method.params.put(OAuth2Constants.GRANT_TYPE, Arrays.asList(OAuth2Constants.UMA_GRANT_TYPE));
67  return method;
68  }
HttpMethod< R > client()
Definition: HttpMethodAuthenticator.java:44
final HttpMethod< R > method
Definition: HttpMethodAuthenticator.java:36

◆ uma() [2/2]

70  {
71  String ticket = request.getTicket();
72  PermissionTicketToken permissions = request.getPermissions();
73 
74  if (ticket == null && permissions == null) {
75  throw new IllegalArgumentException("You must either provide a permission ticket or the permissions you want to request.");
76  }
77 
78  uma();
79  method.param("ticket", ticket);
80  method.param("claim_token", request.getClaimToken());
81  method.param("claim_token_format", request.getClaimTokenFormat());
82  method.param("pct", request.getPct());
83  method.param("rpt", request.getRptToken());
84  method.param("scope", request.getScope());
85  method.param("audience", request.getAudience());
86  method.param("subject_token", request.getSubjectToken());
87 
88  if (permissions != null) {
89  for (Permission permission : permissions.getPermissions()) {
90  String resourceId = permission.getResourceId();
91  Set<String> scopes = permission.getScopes();
92  StringBuilder value = new StringBuilder();
93 
94  if (resourceId != null) {
95  value.append(resourceId);
96  }
97 
98  if (scopes != null && !scopes.isEmpty()) {
99  value.append("#");
100  for (String scope : scopes) {
101  if (!value.toString().endsWith("#")) {
102  value.append(",");
103  }
104  value.append(scope);
105  }
106  }
107 
108  method.params("permission", value.toString());
109  }
110  }
111 
112  Metadata metadata = request.getMetadata();
113 
114  if (metadata != null) {
115  if (metadata.getIncludeResourceName() != null) {
116  method.param("response_include_resource_name", metadata.getIncludeResourceName().toString());
117  }
118 
119  if (metadata.getLimit() != null) {
120  method.param("response_permissions_limit", metadata.getLimit().toString());
121  }
122  }
123 
124  return method;
125  }
HttpMethod< R > uma()
Definition: HttpMethodAuthenticator.java:58
final HttpMethod< R > method
Definition: HttpMethodAuthenticator.java:36

メンバ詳解

◆ authenticator

◆ method


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