gluu
公開メンバ関数 | 静的公開メンバ関数 | 静的公開変数類 | 限定公開変数類 | 非公開変数類 | 静的非公開変数類 | 全メンバ一覧
org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest クラス
org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest の継承関係図
Inheritance graph
org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest 連携図
Collaboration graph

公開メンバ関数

void omittedRequestObjectSigningAlgStep1 (final String registerPath, final String redirectUris, final String jwksUri) throws Exception
 
void omittedRequestObjectSigningAlgStep2 (final String registerPath) throws Exception
 
void omittedRequestObjectSigningAlgStep3NONE (final String authorizePath, final String userId, final String userSecret, final String redirectUri) throws Exception
 
void omittedRequestObjectSigningAlgStep3HS256 (final String authorizePath, final String userId, final String userSecret, final String redirectUri) throws Exception
 
void omittedRequestObjectSigningAlgStep3HS384 (final String authorizePath, final String userId, final String userSecret, final String redirectUri) throws Exception
 
void omittedRequestObjectSigningAlgStep3HS512 (final String authorizePath, final String userId, final String userSecret, final String redirectUri) throws Exception
 
void omittedRequestObjectSigningAlgStep3RS256 (final String authorizePath, final String userId, final String userSecret, final String redirectUri, final String keyId, final String dnName, final String keyStoreFile, final String keyStoreSecret) throws Exception
 
void omittedRequestObjectSigningAlgStep3RS384 (final String authorizePath, final String userId, final String userSecret, final String redirectUri, final String keyId, final String dnName, final String keyStoreFile, final String keyStoreSecret) throws Exception
 
void omittedRequestObjectSigningAlgStep3RS512 (final String authorizePath, final String userId, final String userSecret, final String redirectUri, final String keyId, final String dnName, final String keyStoreFile, final String keyStoreSecret) throws Exception
 
void omittedRequestObjectSigningAlgStep3ES256 (final String authorizePath, final String userId, final String userSecret, final String redirectUri, final String keyId, final String dnName, final String keyStoreFile, final String keyStoreSecret) throws Exception
 
void omittedRequestObjectSigningAlgStep3ES384 (final String authorizePath, final String userId, final String userSecret, final String redirectUri, final String keyId, final String dnName, final String keyStoreFile, final String keyStoreSecret) throws Exception
 
void omittedRequestObjectSigningAlgStep3ES512 (final String authorizePath, final String userId, final String userSecret, final String redirectUri, final String keyId, final String dnName, final String keyStoreFile, final String keyStoreSecret) throws Exception
 
void requestObjectSigningAlgNoneStep1 (final String registerPath, final String redirectUris, final String jwksUri) throws Exception
 
void requestObjectSigningAlgNoneStep2 (final String registerPath) throws Exception
 
void requestObjectSigningAlgNoneStep3 (final String authorizePath, final String userId, final String userSecret, final String redirectUri) throws Exception
 
void requestObjectSigningAlgHS256Step1 (final String registerPath, final String redirectUris) throws Exception
 
void requestObjectSigningAlgHS384Step1 (final String registerPath, final String redirectUris) throws Exception
 
void requestObjectSigningAlgHS512Step1 (final String registerPath, final String redirectUris) throws Exception
 
void requestObjectSigningAlgRS256Step1 (final String registerPath, final String redirectUris, final String jwksUri) throws Exception
 
void requestObjectSigningAlgRS384Step1 (final String registerPath, final String redirectUris, final String jwksUri) throws Exception
 
void requestObjectSigningAlgRS512Step1 (final String registerPath, final String redirectUris, final String jwksUri) throws Exception
 
void requestObjectSigningAlgES256Step1 (final String registerPath, final String redirectUris, final String jwksUri) throws Exception
 
void requestObjectSigningAlgES384Step1 (final String registerPath, final String redirectUris, final String jwksUri) throws Exception
 
void initTestSuite (ITestContext context) throws FileNotFoundException, IOException
 
WebDriver getDriver ()
 
void setDriver (WebDriver driver)
 
String getAuthorizationEndpoint ()
 
void setAuthorizationEndpoint (String authorizationEndpoint)
 
String getTokenEndpoint ()
 
void setTokenEndpoint (String tokenEndpoint)
 
String getUserInfoEndpoint ()
 
void setUserInfoEndpoint (String userInfoEndpoint)
 
String getClientInfoEndpoint ()
 
void setClientInfoEndpoint (String clientInfoEndpoint)
 
String getCheckSessionIFrame ()
 
void setCheckSessionIFrame (String checkSessionIFrame)
 
String getEndSessionEndpoint ()
 
void setEndSessionEndpoint (String endSessionEndpoint)
 
String getJwksUri ()
 
void setJwksUri (String jwksUri)
 
String getRegistrationEndpoint ()
 
void setRegistrationEndpoint (String registrationEndpoint)
 
String getIntrospectionEndpoint ()
 
void setIntrospectionEndpoint (String p_introspectionEndpoint)
 
Map< String, List< String > > getScopeToClaimsMapping ()
 
void setScopeToClaimsMapping (Map< String, List< String >> p_scopeToClaimsMapping)
 
String getIdGenEndpoint ()
 
void setIdGenEndpoint (String p_idGenEndpoint)
 
String getConfigurationEndpoint ()
 
void setConfigurationEndpoint (String configurationEndpoint)
 
void startSelenium ()
 
void stopSelenium ()
 
AuthorizationResponse authenticateResourceOwnerAndGrantAccess (String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
 
AuthorizationResponse authenticateResourceOwnerAndGrantAccess (String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret, boolean cleanupCookies)
 
AuthorizationResponse authenticateResourceOwnerAndGrantAccess (String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret, boolean cleanupCookies, boolean useNewDriver)
 
AuthorizationResponse authenticateResourceOwnerAndGrantAccess (String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret, boolean cleanupCookies, boolean useNewDriver, int authzSteps)
 
AuthorizationResponse authenticateResourceOwnerAndDenyAccess (String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
 
AuthorizationResponse authorizationRequestAndGrantAccess (String authorizeUrl, AuthorizationRequest authorizationRequest)
 
AuthorizationResponse authorizationRequestAndDenyAccess (String authorizeUrl, AuthorizationRequest authorizationRequest)
 
AuthorizationResponse authenticateResourceOwner (String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret, boolean cleanupCookies)
 
String waitForResourceOwnerAndGrantLoginForm (String authorizeUrl, AuthorizationRequest authorizationRequest, boolean cleanupCookies)
 
String waitForResourceOwnerAndGrantLoginForm (String authorizeUrl, AuthorizationRequest authorizationRequest)
 
void discovery (ITestContext context) throws Exception
 
void showTitle (String title)
 
void showTitle (String title)
 
void showEntity (String entity)
 
void showResponse (String title, Response response)
 

静的公開メンバ関数

static void showClient (BaseClient client)
 
static void showClient (BaseClient client, CookieStore cookieStore)
 
static void showClientUserAgent (BaseClient client)
 
static void assertErrorResponse (BaseResponseWithErrors p_response, IErrorType p_errorType)
 
static DefaultHttpClient createHttpClient ()
 
static DefaultHttpClient createHttpClient (HostnameVerifierType p_verifierType)
 
static ClientExecutor clientExecutor () throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException
 
static ClientExecutor clientExecutor (boolean trustAll) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException
 
static HttpClient createHttpClientTrustAll () throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException
 
static void showResponse (String title, Response response, Object entity)
 
static void fails (Throwable e)
 
static void output (String p_msg)
 
static Archive<?> createDeployment ()
 

静的公開変数類

static FileConfiguration testData
 

限定公開変数類

WebDriver driver
 
String authorizationEndpoint
 
String authorizationPageEndpoint
 
String gluuConfigurationEndpoint
 
String tokenEndpoint
 
String userInfoEndpoint
 
String clientInfoEndpoint
 
String checkSessionIFrame
 
String endSessionEndpoint
 
String jwksUri
 
String registrationEndpoint
 
String configurationEndpoint
 
String idGenEndpoint
 
String introspectionEndpoint
 
Map< String, List< String > > scopeToClaimsMapping
 

非公開変数類

URI url
 

静的非公開変数類

static String clientId1
 
static String clientSecret1
 
static String registrationAccessToken1
 
static String registrationClientUri1
 
static String clientId2
 
static String clientSecret2
 
static String registrationAccessToken2
 
static String registrationClientUri2
 
static String clientId3
 
static String clientSecret3
 
static String registrationAccessToken3
 
static String clientId4
 
static String clientSecret4
 
static String registrationAccessToken4
 
static String clientId5
 
static String clientSecret5
 
static String registrationAccessToken5
 
static String clientId6
 
static String clientSecret6
 
static String registrationAccessToken6
 
static String clientId7
 
static String clientSecret7
 
static String registrationAccessToken7
 
static String clientId8
 
static String clientSecret8
 
static String registrationAccessToken8
 
static String clientId9
 
static String clientSecret9
 
static String registrationAccessToken9
 
static String clientId10
 
static String clientSecret10
 
static String registrationAccessToken10
 
static String clientId11
 
static String clientSecret11
 
static String registrationAccessToken11
 

詳解

著者
Javier Rojas Blum
バージョン
November 29, 2017

関数詳解

◆ assertErrorResponse()

static void org.xdi.oxauth.BaseTest.assertErrorResponse ( BaseResponseWithErrors  p_response,
IErrorType  p_errorType 
)
inlinestaticinherited
787  {
788  assertEquals(p_response.getStatus(), 400, "Unexpected response code. Entity: " + p_response.getEntity());
789  assertNotNull(p_response.getEntity(), "The entity is null");
790  assertEquals(p_response.getErrorType(), p_errorType);
791  assertTrue(StringUtils.isNotBlank(p_response.getErrorDescription()));
792  }
T getErrorType()
Definition: BaseResponseWithErrors.java:48
String getEntity()
Definition: BaseResponse.java:85
int getStatus()
Definition: BaseResponse.java:49
String getErrorDescription()
Definition: BaseResponseWithErrors.java:40

◆ authenticateResourceOwner()

AuthorizationResponse org.xdi.oxauth.BaseTest.authenticateResourceOwner ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest,
String  userId,
String  userSecret,
boolean  cleanupCookies 
)
inlineinherited

The authorization server authenticates the resource owner (via the user-agent) No authorization page.

556  {
557  String authorizationRequestUrl = authorizeUrl + "?" + authorizationRequest.getQueryString();
558 
559  AuthorizeClient authorizeClient = new AuthorizeClient(authorizeUrl);
560  authorizeClient.setRequest(authorizationRequest);
561 
562  System.out.println("authenticateResourceOwner: authorizationRequestUrl:" + authorizationRequestUrl);
563  startSelenium();
564  if (cleanupCookies) {
565  System.out.println("authenticateResourceOwner: Cleaning cookies");
567  }
568 // try {
569  driver.navigate().to(authorizationRequestUrl);
570 // } catch (WebDriverException ex) {
571 // if (ex.getCause() instanceof ScriptException) {
572 // System.out.println("authenticateResourceOwner: Script error: " + ex.getMessage());
573 // } else {
574 // throw ex;
575 // }
576 // }
577 
578  if (userSecret != null) {
579  if (userId != null) {
580  WebElement usernameElement = driver.findElement(By.name(loginFormUsername));
581  usernameElement.sendKeys(userId);
582  }
583 
584  WebElement passwordElement = driver.findElement(By.name(loginFormPassword));
585  passwordElement.sendKeys(userSecret);
586 
587  WebElement loginButton = driver.findElement(By.name(loginFormLoginButton));
588 
589  loginButton.click();
590  }
591 
592  String authorizationResponseStr = driver.getCurrentUrl();
593 
594  Cookie sessionStateCookie = driver.manage().getCookieNamed("session_state");
595  String sessionState = null;
596  if (sessionStateCookie != null) {
597  sessionState = sessionStateCookie.getValue();
598  }
599  System.out.println("authenticateResourceOwner: sessionState:" + sessionState);
600 
601  stopSelenium();
602 
603  AuthorizationResponse authorizationResponse = new AuthorizationResponse(authorizationResponseStr);
604  if (authorizationRequest.getRedirectUri() != null && authorizationRequest.getRedirectUri().equals(authorizationResponseStr)) {
605  authorizationResponse.setResponseMode(ResponseMode.FORM_POST);
606  }
607  authorizeClient.setResponse(authorizationResponse);
608  showClientUserAgent(authorizeClient);
609 
610  return authorizationResponse;
611  }
FORM_POST
Definition: ResponseMode.java:33
String loginFormUsername
Definition: BaseTest.java:88
String loginFormPassword
Definition: BaseTest.java:89
void deleteAllCookies()
Definition: BaseTest.java:661
void stopSelenium()
Definition: BaseTest.java:243
Definition: AuthorizeClient.java:29
Definition: ResponseMode.java:16
void startSelenium()
Definition: BaseTest.java:230
String loginFormLoginButton
Definition: BaseTest.java:90
String getRedirectUri()
Definition: AuthorizationRequest.java:184
void setResponseMode(ResponseMode responseMode)
Definition: AuthorizationResponse.java:228
void setRequest(T request)
Definition: BaseClient.java:68
void setResponse(V response)
Definition: BaseClient.java:76
WebDriver driver
Definition: BaseTest.java:70
Definition: AuthorizationResponse.java:32
String getQueryString()
Definition: AuthorizationRequest.java:486
static void showClientUserAgent(BaseClient client)
Definition: BaseTest.java:783

◆ authenticateResourceOwnerAndDenyAccess()

AuthorizationResponse org.xdi.oxauth.BaseTest.authenticateResourceOwnerAndDenyAccess ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest,
String  userId,
String  userSecret 
)
inlineinherited
408  {
409  String authorizationRequestUrl = authorizeUrl + "?" + authorizationRequest.getQueryString();
410 
411  AuthorizeClient authorizeClient = new AuthorizeClient(authorizeUrl);
412  authorizeClient.setRequest(authorizationRequest);
413 
414  System.out.println("authenticateResourceOwnerAndDenyAccess: authorizationRequestUrl:" + authorizationRequestUrl);
415  startSelenium();
416  driver.navigate().to(authorizationRequestUrl);
417 
418  WebElement usernameElement = driver.findElement(By.name(loginFormUsername));
419  WebElement passwordElement = driver.findElement(By.name(loginFormPassword));
420  WebElement loginButton = driver.findElement(By.name(loginFormLoginButton));
421 
422  if (userId != null) {
423  usernameElement.sendKeys(userId);
424  }
425  passwordElement.sendKeys(userSecret);
426  loginButton.click();
427 
428  String authorizationResponseStr = driver.getCurrentUrl();
429 
430  WebElement doNotAllowButton = driver.findElement(By.id(authorizeFormDoNotAllowButton));
431 
432  final String previousURL = driver.getCurrentUrl();
433  doNotAllowButton.click();
434  WebDriverWait wait = new WebDriverWait(driver, 10);
435  wait.until(new ExpectedCondition<Boolean>() {
436  public Boolean apply(WebDriver d) {
437  return (d.getCurrentUrl() != previousURL);
438  }
439  });
440 
441  authorizationResponseStr = driver.getCurrentUrl();
442 
443  Cookie sessionIdCookie = driver.manage().getCookieNamed("session_id");
444  String sessionId = null;
445  if (sessionIdCookie != null) {
446  sessionId = sessionIdCookie.getValue();
447  }
448  System.out.println("authenticateResourceOwnerAndDenyAccess: sessionId:" + sessionId);
449 
450  stopSelenium();
451 
452  AuthorizationResponse authorizationResponse = new AuthorizationResponse(authorizationResponseStr);
453  if (authorizationRequest.getRedirectUri() != null && authorizationRequest.getRedirectUri().equals(authorizationResponseStr)) {
454  authorizationResponse.setResponseMode(ResponseMode.FORM_POST);
455  }
456  authorizationResponse.setSessionId(sessionId);
457  authorizeClient.setResponse(authorizationResponse);
458  showClientUserAgent(authorizeClient);
459 
460  return authorizationResponse;
461  }
FORM_POST
Definition: ResponseMode.java:33
String loginFormUsername
Definition: BaseTest.java:88
String loginFormPassword
Definition: BaseTest.java:89
void stopSelenium()
Definition: BaseTest.java:243
String authorizeFormDoNotAllowButton
Definition: BaseTest.java:92
void setSessionId(String p_sessionId)
Definition: AuthorizationResponse.java:212
Definition: AuthorizeClient.java:29
Definition: ResponseMode.java:16
void startSelenium()
Definition: BaseTest.java:230
String loginFormLoginButton
Definition: BaseTest.java:90
String getRedirectUri()
Definition: AuthorizationRequest.java:184
void setResponseMode(ResponseMode responseMode)
Definition: AuthorizationResponse.java:228
void setRequest(T request)
Definition: BaseClient.java:68
void setResponse(V response)
Definition: BaseClient.java:76
WebDriver driver
Definition: BaseTest.java:70
Definition: AuthorizationResponse.java:32
String getQueryString()
Definition: AuthorizationRequest.java:486
static void showClientUserAgent(BaseClient client)
Definition: BaseTest.java:783

◆ authenticateResourceOwnerAndGrantAccess() [1/4]

AuthorizationResponse org.xdi.oxauth.BaseTest.authenticateResourceOwnerAndGrantAccess ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest,
String  userId,
String  userSecret 
)
inlineinherited

The authorization server authenticates the resource owner (via the user-agent) and establishes whether the resource owner grants or denies the client's access request.

253  {
254  return authenticateResourceOwnerAndGrantAccess(authorizeUrl, authorizationRequest, userId, userSecret, true);
255  }
AuthorizationResponse authenticateResourceOwnerAndGrantAccess(String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
Definition: BaseTest.java:252

◆ authenticateResourceOwnerAndGrantAccess() [2/4]

AuthorizationResponse org.xdi.oxauth.BaseTest.authenticateResourceOwnerAndGrantAccess ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest,
String  userId,
String  userSecret,
boolean  cleanupCookies 
)
inlineinherited

The authorization server authenticates the resource owner (via the user-agent) and establishes whether the resource owner grants or denies the client's access request.

262  {
263  return authenticateResourceOwnerAndGrantAccess(authorizeUrl, authorizationRequest, userId, userSecret, cleanupCookies, false);
264  }
AuthorizationResponse authenticateResourceOwnerAndGrantAccess(String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
Definition: BaseTest.java:252

◆ authenticateResourceOwnerAndGrantAccess() [3/4]

AuthorizationResponse org.xdi.oxauth.BaseTest.authenticateResourceOwnerAndGrantAccess ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest,
String  userId,
String  userSecret,
boolean  cleanupCookies,
boolean  useNewDriver 
)
inlineinherited

The authorization server authenticates the resource owner (via the user-agent) and establishes whether the resource owner grants or denies the client's access request.

272  {
273  return authenticateResourceOwnerAndGrantAccess(authorizeUrl, authorizationRequest, userId, userSecret, cleanupCookies, useNewDriver, 1);
274  }
AuthorizationResponse authenticateResourceOwnerAndGrantAccess(String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
Definition: BaseTest.java:252

◆ authenticateResourceOwnerAndGrantAccess() [4/4]

AuthorizationResponse org.xdi.oxauth.BaseTest.authenticateResourceOwnerAndGrantAccess ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest,
String  userId,
String  userSecret,
boolean  cleanupCookies,
boolean  useNewDriver,
int  authzSteps 
)
inlineinherited

The authorization server authenticates the resource owner (via the user-agent) and establishes whether the resource owner grants or denies the client's access request.

282  {
283  WebDriver currentDriver = initWebDriver(useNewDriver, cleanupCookies);
284 
285  AuthorizeClient authorizeClient = processAuthentication(currentDriver, authorizeUrl, authorizationRequest,
286  userId, userSecret);
287 
288  int remainAuthzSteps = authzSteps;
289 
290  String authorizationResponseStr = null;
291  do {
292  authorizationResponseStr = acceptAuthorization(currentDriver);
293  remainAuthzSteps--;
294  } while (remainAuthzSteps >= 1);
295 
296  AuthorizationResponse authorizationResponse = buildAuthorizationResponse(authorizationRequest, useNewDriver,
297  currentDriver, authorizeClient, authorizationResponseStr);
298 
299  stopWebDriver(useNewDriver, currentDriver);
300 
301  return authorizationResponse;
302  }
AuthorizationResponse buildAuthorizationResponse(AuthorizationRequest authorizationRequest, boolean useNewDriver, WebDriver currentDriver, AuthorizeClient authorizeClient, String authorizationResponseStr)
Definition: BaseTest.java:387
String acceptAuthorization(WebDriver currentDriver)
Definition: BaseTest.java:358
AuthorizeClient processAuthentication(WebDriver currentDriver, String authorizeUrl, AuthorizationRequest authorizationRequest, String userId, String userSecret)
Definition: BaseTest.java:330
Definition: AuthorizeClient.java:29
WebDriver initWebDriver(boolean useNewDriver, boolean cleanupCookies)
Definition: BaseTest.java:304
Definition: AuthorizationResponse.java:32
void stopWebDriver(boolean useNewDriver, WebDriver currentDriver)
Definition: BaseTest.java:321

◆ authorizationRequestAndDenyAccess()

AuthorizationResponse org.xdi.oxauth.BaseTest.authorizationRequestAndDenyAccess ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest 
)
inlineinherited
509  {
510  String authorizationRequestUrl = authorizeUrl + "?" + authorizationRequest.getQueryString();
511 
512  AuthorizeClient authorizeClient = new AuthorizeClient(authorizeUrl);
513  authorizeClient.setRequest(authorizationRequest);
514 
515  System.out.println("authorizationRequestAndDenyAccess: authorizationRequestUrl:" + authorizationRequestUrl);
516  startSelenium();
517  driver.navigate().to(authorizationRequestUrl);
518 
519  WebElement doNotAllowButton = driver.findElement(By.id(authorizeFormDoNotAllowButton));
520 
521  final String previousURL = driver.getCurrentUrl();
522  doNotAllowButton.click();
523  WebDriverWait wait = new WebDriverWait(driver, 10);
524  wait.until(new ExpectedCondition<Boolean>() {
525  public Boolean apply(WebDriver d) {
526  return (d.getCurrentUrl() != previousURL);
527  }
528  });
529 
530  String authorizationResponseStr = driver.getCurrentUrl();
531 
532  Cookie sessionStateCookie = driver.manage().getCookieNamed("session_state");
533  String sessionState = null;
534  if (sessionStateCookie != null) {
535  sessionState = sessionStateCookie.getValue();
536  }
537  System.out.println("authorizationRequestAndDenyAccess: sessionState:" + sessionState);
538 
539  stopSelenium();
540 
541  AuthorizationResponse authorizationResponse = new AuthorizationResponse(authorizationResponseStr);
542  if (authorizationRequest.getRedirectUri() != null && authorizationRequest.getRedirectUri().equals(authorizationResponseStr)) {
543  authorizationResponse.setResponseMode(ResponseMode.FORM_POST);
544  }
545  authorizeClient.setResponse(authorizationResponse);
546  showClientUserAgent(authorizeClient);
547 
548  return authorizationResponse;
549  }
FORM_POST
Definition: ResponseMode.java:33
void stopSelenium()
Definition: BaseTest.java:243
String authorizeFormDoNotAllowButton
Definition: BaseTest.java:92
Definition: AuthorizeClient.java:29
Definition: ResponseMode.java:16
void startSelenium()
Definition: BaseTest.java:230
String getRedirectUri()
Definition: AuthorizationRequest.java:184
void setResponseMode(ResponseMode responseMode)
Definition: AuthorizationResponse.java:228
void setRequest(T request)
Definition: BaseClient.java:68
void setResponse(V response)
Definition: BaseClient.java:76
WebDriver driver
Definition: BaseTest.java:70
Definition: AuthorizationResponse.java:32
String getQueryString()
Definition: AuthorizationRequest.java:486
static void showClientUserAgent(BaseClient client)
Definition: BaseTest.java:783

◆ authorizationRequestAndGrantAccess()

AuthorizationResponse org.xdi.oxauth.BaseTest.authorizationRequestAndGrantAccess ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest 
)
inlineinherited
464  {
465  String authorizationRequestUrl = authorizeUrl + "?" + authorizationRequest.getQueryString();
466 
467  AuthorizeClient authorizeClient = new AuthorizeClient(authorizeUrl);
468  authorizeClient.setRequest(authorizationRequest);
469 
470  System.out.println("authorizationRequestAndGrantAccess: authorizationRequestUrl:" + authorizationRequestUrl);
471  startSelenium();
472  driver.navigate().to(authorizationRequestUrl);
473 
474  String authorizationResponseStr = driver.getCurrentUrl();
475 
476  WebElement allowButton = driver.findElement(By.id(authorizeFormAllowButton));
477 
478  final String previousURL = driver.getCurrentUrl();
479  allowButton.click();
480  WebDriverWait wait = new WebDriverWait(driver, 10);
481  wait.until(new ExpectedCondition<Boolean>() {
482  public Boolean apply(WebDriver d) {
483  return (d.getCurrentUrl() != previousURL);
484  }
485  });
486 
487  authorizationResponseStr = driver.getCurrentUrl();
488 
489  Cookie sessionStateCookie = driver.manage().getCookieNamed("session_state");
490  String sessionState = null;
491  if (sessionStateCookie != null) {
492  sessionState = sessionStateCookie.getValue();
493  }
494  System.out.println("authorizationRequestAndGrantAccess: sessionState:" + sessionState);
495 
496  stopSelenium();
497 
498  AuthorizationResponse authorizationResponse = new AuthorizationResponse(authorizationResponseStr);
499  if (authorizationRequest.getRedirectUri() != null && authorizationRequest.getRedirectUri().equals(authorizationResponseStr)) {
500  authorizationResponse.setResponseMode(ResponseMode.FORM_POST);
501  }
502  authorizeClient.setResponse(authorizationResponse);
503  showClientUserAgent(authorizeClient);
504 
505  return authorizationResponse;
506  }
FORM_POST
Definition: ResponseMode.java:33
void stopSelenium()
Definition: BaseTest.java:243
Definition: AuthorizeClient.java:29
Definition: ResponseMode.java:16
void startSelenium()
Definition: BaseTest.java:230
String getRedirectUri()
Definition: AuthorizationRequest.java:184
void setResponseMode(ResponseMode responseMode)
Definition: AuthorizationResponse.java:228
void setRequest(T request)
Definition: BaseClient.java:68
void setResponse(V response)
Definition: BaseClient.java:76
WebDriver driver
Definition: BaseTest.java:70
Definition: AuthorizationResponse.java:32
String getQueryString()
Definition: AuthorizationRequest.java:486
static void showClientUserAgent(BaseClient client)
Definition: BaseTest.java:783
String authorizeFormAllowButton
Definition: BaseTest.java:91

◆ clientExecutor() [1/2]

static ClientExecutor org.xdi.oxauth.BaseTest.clientExecutor ( ) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException
inlinestaticinherited
822  {
823  return clientExecutor(false);
824  }
static ClientExecutor clientExecutor()
Definition: BaseTest.java:822

◆ clientExecutor() [2/2]

static ClientExecutor org.xdi.oxauth.BaseTest.clientExecutor ( boolean  trustAll) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException
inlinestaticinherited
826  {
827  if (trustAll) {
828  return new ApacheHttpClient4Executor(createHttpClientTrustAll());
829  }
830  return ClientRequest.getDefaultExecutor();
831  }
static HttpClient createHttpClientTrustAll()
Definition: BaseTest.java:833

◆ createDeployment()

static Archive<?> org.xdi.oxauth.ConfigurableTest.createDeployment ( )
inlinestaticinherited
40  {
41  return Deployments.createDeployment();
42  }

◆ createHttpClient() [1/2]

static DefaultHttpClient org.xdi.oxauth.BaseTest.createHttpClient ( )
inlinestaticinherited
794  {
795  return createHttpClient(HostnameVerifierType.DEFAULT);
796  }
static DefaultHttpClient createHttpClient()
Definition: BaseTest.java:794

◆ createHttpClient() [2/2]

static DefaultHttpClient org.xdi.oxauth.BaseTest.createHttpClient ( HostnameVerifierType  p_verifierType)
inlinestaticinherited
798  {
799  if (p_verifierType != null && p_verifierType != HostnameVerifierType.DEFAULT) {
800  switch (p_verifierType) {
801  case ALLOW_ALL:
802  HostnameVerifier hostnameVerifier = org.apache.http.conn.ssl.SSLSocketFactory.ALLOW_ALL_HOSTNAME_VERIFIER;
803 
804  DefaultHttpClient client = new DefaultHttpClient();
805 
806  SchemeRegistry registry = new SchemeRegistry();
807  SSLSocketFactory socketFactory = SSLSocketFactory.getSocketFactory();
808  socketFactory.setHostnameVerifier((X509HostnameVerifier) hostnameVerifier);
809  registry.register(new Scheme("https", socketFactory, 443));
810  SingleClientConnManager mgr = new SingleClientConnManager(client.getParams(), registry);
811 
812  // Set verifier
813  HttpsURLConnection.setDefaultHostnameVerifier(hostnameVerifier);
814  return new DefaultHttpClient(mgr, client.getParams());
815  case DEFAULT:
816  return new DefaultHttpClient();
817  }
818  }
819  return new DefaultHttpClient();
820  }

◆ createHttpClientTrustAll()

static HttpClient org.xdi.oxauth.BaseTest.createHttpClientTrustAll ( ) throws NoSuchAlgorithmException, KeyManagementException, KeyStoreException, UnrecoverableKeyException
inlinestaticinherited
833  {
834  SSLSocketFactory sf = new SSLSocketFactory(new TrustStrategy() {
835  @Override
836  public boolean isTrusted(X509Certificate[] chain, String authType) throws CertificateException {
837  return true;
838  }
839  }, new AllowAllHostnameVerifier());
840 
841  SchemeRegistry registry = new SchemeRegistry();
842  registry.register(new Scheme("http", 80, PlainSocketFactory.getSocketFactory()));
843  registry.register(new Scheme("https", 443, sf));
844  ClientConnectionManager ccm = new PoolingClientConnectionManager(registry);
845  return new DefaultHttpClient(ccm);
846  }

◆ discovery()

void org.xdi.oxauth.BaseTest.discovery ( ITestContext  context) throws Exception
inlineinherited
670  {
671  // Load Form Interaction
672  loginFormUsername = context.getCurrentXmlTest().getParameter("loginFormUsername");
673  loginFormPassword = context.getCurrentXmlTest().getParameter("loginFormPassword");
674  loginFormLoginButton = context.getCurrentXmlTest().getParameter("loginFormLoginButton");
675  authorizeFormAllowButton = context.getCurrentXmlTest().getParameter("authorizeFormAllowButton");
676  authorizeFormDoNotAllowButton = context.getCurrentXmlTest().getParameter("authorizeFormDoNotAllowButton");
677 
678  String resource = context.getCurrentXmlTest().getParameter("swdResource");
679 
680  if (StringUtils.isNotBlank(resource)) {
681 
682  showTitle("OpenID Connect Discovery");
683 
684  OpenIdConnectDiscoveryClient openIdConnectDiscoveryClient = new OpenIdConnectDiscoveryClient(resource);
685  OpenIdConnectDiscoveryResponse openIdConnectDiscoveryResponse = openIdConnectDiscoveryClient.exec(clientExecutor(true));
686 
687  showClient(openIdConnectDiscoveryClient);
688  assertEquals(openIdConnectDiscoveryResponse.getStatus(), 200, "Unexpected response code");
689  assertNotNull(openIdConnectDiscoveryResponse.getSubject());
690  assertTrue(openIdConnectDiscoveryResponse.getLinks().size() > 0);
691 
692  configurationEndpoint = openIdConnectDiscoveryResponse.getLinks().get(0).getHref() +
693  "/.well-known/openid-configuration";
694 
695  System.out.println("OpenID Connect Configuration");
696 
697  OpenIdConfigurationClient client = new OpenIdConfigurationClient(configurationEndpoint);
698  client.setExecutor(clientExecutor(true));
700 
701  showClient(client);
702  assertEquals(response.getStatus(), 200, "Unexpected response code");
703  assertNotNull(response.getIssuer(), "The issuer is null");
704  assertNotNull(response.getAuthorizationEndpoint(), "The authorizationEndpoint is null");
705  assertNotNull(response.getTokenEndpoint(), "The tokenEndpoint is null");
706  assertNotNull(response.getUserInfoEndpoint(), "The userInfoEndPoint is null");
707  assertNotNull(response.getJwksUri(), "The jwksUri is null");
708  assertNotNull(response.getRegistrationEndpoint(), "The registrationEndpoint is null");
709 
710  assertTrue(response.getScopesSupported().size() > 0, "The scopesSupported is empty");
711  assertTrue(response.getScopeToClaimsMapping().size() > 0, "The scope to claims mapping is empty");
712  assertTrue(response.getResponseTypesSupported().size() > 0, "The responseTypesSupported is empty");
713  assertTrue(response.getGrantTypesSupported().size() > 0, "The grantTypesSupported is empty");
714  assertTrue(response.getAcrValuesSupported().size() >= 0, "The acrValuesSupported is empty");
715  assertTrue(response.getSubjectTypesSupported().size() > 0, "The subjectTypesSupported is empty");
716  assertTrue(response.getIdTokenSigningAlgValuesSupported().size() > 0, "The idTokenSigningAlgValuesSupported is empty");
717  assertTrue(response.getRequestObjectSigningAlgValuesSupported().size() > 0, "The requestObjectSigningAlgValuesSupported is empty");
718  assertTrue(response.getTokenEndpointAuthMethodsSupported().size() > 0, "The tokenEndpointAuthMethodsSupported is empty");
719  assertTrue(response.getClaimsSupported().size() > 0, "The claimsSupported is empty");
720 
722  tokenEndpoint = response.getTokenEndpoint();
727  jwksUri = response.getJwksUri();
732  gluuConfigurationEndpoint = determineGluuConfigurationEndpoint(openIdConnectDiscoveryResponse.getLinks().get(0).getHref());
733  } else {
734  showTitle("Loading configuration endpoints from properties file");
735 
736  authorizationEndpoint = context.getCurrentXmlTest().getParameter("authorizationEndpoint");
737  tokenEndpoint = context.getCurrentXmlTest().getParameter("tokenEndpoint");
738  userInfoEndpoint = context.getCurrentXmlTest().getParameter("userInfoEndpoint");
739  clientInfoEndpoint = context.getCurrentXmlTest().getParameter("clientInfoEndpoint");
740  checkSessionIFrame = context.getCurrentXmlTest().getParameter("checkSessionIFrame");
741  endSessionEndpoint = context.getCurrentXmlTest().getParameter("endSessionEndpoint");
742  jwksUri = context.getCurrentXmlTest().getParameter("jwksUri");
743  registrationEndpoint = context.getCurrentXmlTest().getParameter("registrationEndpoint");
744  configurationEndpoint = context.getCurrentXmlTest().getParameter("configurationEndpoint");
745  idGenEndpoint = context.getCurrentXmlTest().getParameter("idGenEndpoint");
746  introspectionEndpoint = context.getCurrentXmlTest().getParameter("introspectionEndpoint");
747  scopeToClaimsMapping = new HashMap<String, List<String>>();
748  }
749 
751  }
String registrationEndpoint
Definition: BaseTest.java:81
String getIntrospectionEndpoint()
Definition: OpenIdConfigurationResponse.java:343
List< String > getTokenEndpointAuthMethodsSupported()
Definition: OpenIdConfigurationResponse.java:642
String determineAuthorizationPageEndpoint(String authorizationEndpoint)
Definition: BaseTest.java:753
String jwksUri
Definition: BaseTest.java:80
String getRegistrationEndpoint()
Definition: OpenIdConfigurationResponse.java:310
String clientInfoEndpoint
Definition: BaseTest.java:77
String getCheckSessionIFrame()
Definition: OpenIdConfigurationResponse.java:248
String authorizationPageEndpoint
Definition: BaseTest.java:73
String idGenEndpoint
Definition: BaseTest.java:83
String getIdGenerationEndpoint()
Definition: OpenIdConfigurationResponse.java:327
static void showClient(BaseClient client)
Definition: BaseTest.java:775
List< String > getRequestObjectSigningAlgValuesSupported()
Definition: OpenIdConfigurationResponse.java:579
String loginFormUsername
Definition: BaseTest.java:88
String loginFormPassword
Definition: BaseTest.java:89
String configurationEndpoint
Definition: BaseTest.java:82
List< String > getSubjectTypesSupported()
Definition: OpenIdConfigurationResponse.java:438
String getEndSessionEndpoint()
Definition: OpenIdConfigurationResponse.java:268
String tokenEndpoint
Definition: BaseTest.java:75
String authorizeFormDoNotAllowButton
Definition: BaseTest.java:92
List< String > getAcrValuesSupported()
Definition: OpenIdConfigurationResponse.java:418
String getClientInfoEndpoint()
Definition: OpenIdConfigurationResponse.java:228
List< String > getGrantTypesSupported()
Definition: OpenIdConfigurationResponse.java:398
String checkSessionIFrame
Definition: BaseTest.java:78
void setExecutor(ClientExecutor executor)
Definition: BaseClient.java:84
OpenIdConfigurationResponse execOpenIdConfiguration()
Definition: OpenIdConfigurationClient.java:47
String loginFormLoginButton
Definition: BaseTest.java:90
String gluuConfigurationEndpoint
Definition: BaseTest.java:74
Map< String, List< String > > getScopeToClaimsMapping()
Definition: OpenIdConfigurationResponse.java:136
String getJwksUri()
Definition: OpenIdConfigurationResponse.java:289
String getTokenEndpoint()
Definition: OpenIdConfigurationResponse.java:192
List< String > getIdTokenSigningAlgValuesSupported()
Definition: OpenIdConfigurationResponse.java:519
Definition: OpenIdConnectDiscoveryClient.java:29
String introspectionEndpoint
Definition: BaseTest.java:84
void showTitle(String title)
Definition: BaseTest.java:761
List< String > getResponseTypesSupported()
Definition: OpenIdConfigurationResponse.java:378
String endSessionEndpoint
Definition: BaseTest.java:79
String getSubject()
Definition: OpenIdConnectDiscoveryResponse.java:32
List< String > getScopesSupported()
Definition: OpenIdConfigurationResponse.java:360
String determineGluuConfigurationEndpoint(String host)
Definition: BaseTest.java:757
OpenIdConnectDiscoveryResponse exec()
Definition: OpenIdConnectDiscoveryClient.java:47
String getAuthorizationEndpoint()
Definition: OpenIdConfigurationResponse.java:174
String userInfoEndpoint
Definition: BaseTest.java:76
Definition: OpenIdConfigurationClient.java:27
int getStatus()
Definition: BaseResponse.java:49
List< WebFingerLink > getLinks()
Definition: OpenIdConnectDiscoveryResponse.java:40
List< String > getClaimsSupported()
Definition: OpenIdConfigurationResponse.java:728
Definition: OpenIdConnectDiscoveryResponse.java:17
String authorizationEndpoint
Definition: BaseTest.java:72
String getUserInfoEndpoint()
Definition: OpenIdConfigurationResponse.java:210
Definition: OpenIdConfigurationResponse.java:26
static ClientExecutor clientExecutor()
Definition: BaseTest.java:822
Map< String, List< String > > scopeToClaimsMapping
Definition: BaseTest.java:85
String authorizeFormAllowButton
Definition: BaseTest.java:91
String getIssuer()
Definition: OpenIdConfigurationResponse.java:156

◆ fails()

static void org.xdi.oxauth.BaseTest.fails ( Throwable  e)
inlinestaticinherited
50  {
51  Assert.fail(e.getMessage(), e);
52  }

◆ getAuthorizationEndpoint()

String org.xdi.oxauth.BaseTest.getAuthorizationEndpoint ( )
inlineinherited
134  {
135  return authorizationEndpoint;
136  }
String authorizationEndpoint
Definition: BaseTest.java:72

◆ getCheckSessionIFrame()

String org.xdi.oxauth.BaseTest.getCheckSessionIFrame ( )
inlineinherited
166  {
167  return checkSessionIFrame;
168  }
String checkSessionIFrame
Definition: BaseTest.java:78

◆ getClientInfoEndpoint()

String org.xdi.oxauth.BaseTest.getClientInfoEndpoint ( )
inlineinherited
158  {
159  return clientInfoEndpoint;
160  }
String clientInfoEndpoint
Definition: BaseTest.java:77

◆ getConfigurationEndpoint()

String org.xdi.oxauth.BaseTest.getConfigurationEndpoint ( )
inlineinherited
222  {
223  return configurationEndpoint;
224  }
String configurationEndpoint
Definition: BaseTest.java:82

◆ getDriver()

WebDriver org.xdi.oxauth.BaseTest.getDriver ( )
inlineinherited
126  {
127  return driver;
128  }
WebDriver driver
Definition: BaseTest.java:70

◆ getEndSessionEndpoint()

String org.xdi.oxauth.BaseTest.getEndSessionEndpoint ( )
inlineinherited
174  {
175  return endSessionEndpoint;
176  }
String endSessionEndpoint
Definition: BaseTest.java:79

◆ getIdGenEndpoint()

String org.xdi.oxauth.BaseTest.getIdGenEndpoint ( )
inlineinherited
214  {
215  return idGenEndpoint;
216  }
String idGenEndpoint
Definition: BaseTest.java:83

◆ getIntrospectionEndpoint()

String org.xdi.oxauth.BaseTest.getIntrospectionEndpoint ( )
inlineinherited
198  {
199  return introspectionEndpoint;
200  }
String introspectionEndpoint
Definition: BaseTest.java:84

◆ getJwksUri()

String org.xdi.oxauth.BaseTest.getJwksUri ( )
inlineinherited
182  {
183  return jwksUri;
184  }
String jwksUri
Definition: BaseTest.java:80

◆ getRegistrationEndpoint()

String org.xdi.oxauth.BaseTest.getRegistrationEndpoint ( )
inlineinherited
190  {
191  return registrationEndpoint;
192  }
String registrationEndpoint
Definition: BaseTest.java:81

◆ getScopeToClaimsMapping()

Map<String, List<String> > org.xdi.oxauth.BaseTest.getScopeToClaimsMapping ( )
inlineinherited
206  {
207  return scopeToClaimsMapping;
208  }
Map< String, List< String > > scopeToClaimsMapping
Definition: BaseTest.java:85

◆ getTokenEndpoint()

String org.xdi.oxauth.BaseTest.getTokenEndpoint ( )
inlineinherited
142  {
143  return tokenEndpoint;
144  }
String tokenEndpoint
Definition: BaseTest.java:75

◆ getUserInfoEndpoint()

String org.xdi.oxauth.BaseTest.getUserInfoEndpoint ( )
inlineinherited
150  {
151  return userInfoEndpoint;
152  }
String userInfoEndpoint
Definition: BaseTest.java:76

◆ initTestSuite()

void org.xdi.oxauth.BaseTest.initTestSuite ( ITestContext  context) throws FileNotFoundException, IOException
inlineinherited
95  {
96  SecurityProviderUtility.installBCProvider();
97 
98  Reporter.log("Invoked init test suite method \n", true);
99 
100  String propertiesFile = context.getCurrentXmlTest().getParameter("propertiesFile");
101  if (StringHelper.isEmpty(propertiesFile)) {
102  propertiesFile = "target/test-classes/testng.properties";
103  //propertiesFile = "U:\\own\\project\\git\\oxAuth\\Client\\src\\test\\resources\\testng_yuriy.properties";
104  //propertiesFile = "/Users/JAVIER/IdeaProjects/oxAuth/Client/target/test-classes/testng.properties";
105  }
106 
107  FileInputStream conf = new FileInputStream(propertiesFile);
108  Properties prop = new Properties();
109  prop.load(conf);
110 
111  Map<String, String> parameters = new HashMap<String, String>();
112  for (Entry<Object, Object> entry : prop.entrySet()) {
113  Object key = entry.getKey();
114  Object value = entry.getValue();
115 
116  if (StringHelper.isEmptyString(key) || StringHelper.isEmptyString(value)) {
117  continue;
118  }
119  parameters.put(key.toString(), value.toString());
120  }
121 
122  // Overrided test paramters
123  context.getSuite().getXmlSuite().setParameters(parameters);
124  }

◆ omittedRequestObjectSigningAlgStep1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep1 ( final String  registerPath,
final String  redirectUris,
final String  jwksUri 
) throws Exception
inline

Register a client without specify a Request Object Signing Alg.

121  {
122  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
123 
124  String registerRequestContent = null;
125  try {
126  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
127  StringUtils.spaceSeparatedToList(redirectUris));
128  registerRequest.setJwksUri(jwksUri);
129  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
130  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
131 
132  registerRequestContent = registerRequest.getJSONParameters().toString(4);
133  } catch (JSONException e) {
134  e.printStackTrace();
135  fail(e.getMessage());
136  }
137 
138  Response response = request.post(Entity.json(registerRequestContent));
139  String entity = response.readEntity(String.class);
140 
141  showResponse("omittedRequestObjectSigningAlgStep1", response, entity);
142 
143  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
144  assertNotNull(entity, "Unexpected result: " + entity);
145  try {
146  JSONObject jsonObj = new JSONObject(entity);
147  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
148  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
149  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
150  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
151  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
152  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
153 
154  clientId1 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
155  clientSecret1 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
156  registrationAccessToken1 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
157  registrationClientUri1 = jsonObj.getString(RegisterResponseParam.REGISTRATION_CLIENT_URI.toString());
158  } catch (JSONException e) {
159  e.printStackTrace();
160  fail(e.getMessage() + "\nResponse was: " + entity);
161  }
162  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
String jwksUri
Definition: BaseTest.java:80
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
static String clientSecret1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:70
static String registrationAccessToken1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:71
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String registrationClientUri1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:72

◆ omittedRequestObjectSigningAlgStep2()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep2 ( final String  registerPath) throws Exception
inline

Read client to check whether it is using the default Request Object Signing Alg null.

170  {
171  RegisterRequest registerRequest = new RegisterRequest(null);
172 
173  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath + "?"
174  + registrationClientUri1.substring(registrationClientUri1.indexOf("?") + 1)).request();
175  request.header("Authorization", "Bearer " + registrationAccessToken1);
176 
177  Response response = request.get();
178  String entity = response.readEntity(String.class);
179 
180  showResponse("omittedRequestObjectSigningAlgStep2", response, entity);
181 
182  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
183  assertNotNull(entity, "Unexpected result: " + entity);
184  try {
185  JSONObject jsonObj = new JSONObject(entity);
186  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
187  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
188  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
189  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
190 
191  // Registered Metadata
192  assertFalse(jsonObj.has(REQUEST_OBJECT_SIGNING_ALG.toString()));
193  assertTrue(jsonObj.has(APPLICATION_TYPE.toString()));
194  assertTrue(jsonObj.has(RESPONSE_TYPES.toString()));
195  assertTrue(jsonObj.has(REDIRECT_URIS.toString()));
196  assertTrue(jsonObj.has(APPLICATION_TYPE.toString()));
197  assertTrue(jsonObj.has(CLIENT_NAME.toString()));
198  assertTrue(jsonObj.has(ID_TOKEN_SIGNED_RESPONSE_ALG.toString()));
199  assertTrue(jsonObj.has(SCOPE.toString()));
200  } catch (JSONException e) {
201  e.printStackTrace();
202  fail(e.getMessage() + "\nResponse was: " + entity);
203  }
204  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String registrationAccessToken1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:71
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String registrationClientUri1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:72

◆ omittedRequestObjectSigningAlgStep3ES256()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3ES256 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri,
final String  keyId,
final String  dnName,
final String  keyStoreFile,
final String  keyStoreSecret 
) throws Exception
inline

Request authorization with Request Object Signing Alg ES256.

724  {
725  Builder request = null;
726  try {
727  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider(keyStoreFile, keyStoreSecret, dnName);
728 
729  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN);
730  List<String> scopes = Arrays.asList("openid");
731  String nonce = UUID.randomUUID().toString();
732  String state = UUID.randomUUID().toString();
733 
734  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
735  redirectUri, nonce);
736  authorizationRequest.setState(state);
737  authorizationRequest.getPrompts().add(Prompt.NONE);
738  authorizationRequest.setAuthUsername(userId);
739  authorizationRequest.setAuthPassword(userSecret);
740 
741  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
742  SignatureAlgorithm.ES256, cryptoProvider);
743  jwtAuthorizationRequest.setKeyId(keyId);
744  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
745  jwtAuthorizationRequest
746  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
747  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
748  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
749  jwtAuthorizationRequest
750  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
751  jwtAuthorizationRequest
752  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
753  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
754  ClaimValue.createValueList(new String[]{"2"})));
755  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
756  authorizationRequest.setRequest(authJwt);
757  System.out.println("Request JWT: " + authJwt);
758 
759  request = ResteasyClientBuilder.newClient()
760  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
761  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
762  request.header("Accept", MediaType.TEXT_PLAIN);
763  } catch (Exception e) {
764  fail(e.getMessage(), e);
765  }
766 
767  Response response = request.get();
768  String entity = response.readEntity(String.class);
769 
770  showResponse("omittedRequestObjectSigningAlgStep3ES256", response, entity);
771 
772  assertEquals(response.getStatus(), 302, "Unexpected response code.");
773  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
774 
775  try {
776  URI uri = new URI(response.getLocation().toString());
777  assertNotNull(uri.getFragment(), "Query string is null");
778 
779  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
780 
781  assertNotNull(params.get("access_token"), "The accessToken is null");
782  assertNotNull(params.get("scope"), "The scope is null");
783  assertNotNull(params.get("state"), "The state is null");
784  } catch (URISyntaxException e) {
785  e.printStackTrace();
786  fail("Response URI is not well formed");
787  }
788  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3ES384()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3ES384 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri,
final String  keyId,
final String  dnName,
final String  keyStoreFile,
final String  keyStoreSecret 
) throws Exception
inline

Request authorization with Request Object Signing Alg ES384.

798  {
799  Builder request = null;
800  try {
801  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider(keyStoreFile, keyStoreSecret, dnName);
802 
803  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN);
804  List<String> scopes = Arrays.asList("openid");
805  String nonce = UUID.randomUUID().toString();
806  String state = UUID.randomUUID().toString();
807 
808  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
809  redirectUri, nonce);
810  authorizationRequest.setState(state);
811  authorizationRequest.getPrompts().add(Prompt.NONE);
812  authorizationRequest.setAuthUsername(userId);
813  authorizationRequest.setAuthPassword(userSecret);
814 
815  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
816  SignatureAlgorithm.ES384, cryptoProvider);
817  jwtAuthorizationRequest.setKeyId(keyId);
818  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
819  jwtAuthorizationRequest
820  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
821  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
822  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
823  jwtAuthorizationRequest
824  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
825  jwtAuthorizationRequest
826  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
827  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
828  ClaimValue.createValueList(new String[]{"2"})));
829  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
830  authorizationRequest.setRequest(authJwt);
831  System.out.println("Request JWT: " + authJwt);
832 
833  request = ResteasyClientBuilder.newClient()
834  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
835  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
836  request.header("Accept", MediaType.TEXT_PLAIN);
837  } catch (Exception e) {
838  fail(e.getMessage(), e);
839  }
840 
841  Response response = request.get();
842  String entity = response.readEntity(String.class);
843 
844  showResponse("omittedRequestObjectSigningAlgStep3ES384", response, entity);
845 
846  assertEquals(response.getStatus(), 302, "Unexpected response code.");
847  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
848 
849  try {
850  URI uri = new URI(response.getLocation().toString());
851  assertNotNull(uri.getFragment(), "Query string is null");
852 
853  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
854 
855  assertNotNull(params.get("access_token"), "The accessToken is null");
856  assertNotNull(params.get("scope"), "The scope is null");
857  assertNotNull(params.get("state"), "The state is null");
858  } catch (URISyntaxException e) {
859  e.printStackTrace();
860  fail("Response URI is not well formed");
861  }
862  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3ES512()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3ES512 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri,
final String  keyId,
final String  dnName,
final String  keyStoreFile,
final String  keyStoreSecret 
) throws Exception
inline

Request authorization with Request Object Signing Alg ES512.

872  {
873  Builder request = null;
874  try {
875  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider(keyStoreFile, keyStoreSecret, dnName);
876 
877  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN);
878  List<String> scopes = Arrays.asList("openid");
879  String nonce = UUID.randomUUID().toString();
880  String state = UUID.randomUUID().toString();
881 
882  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
883  redirectUri, nonce);
884  authorizationRequest.setState(state);
885  authorizationRequest.getPrompts().add(Prompt.NONE);
886  authorizationRequest.setAuthUsername(userId);
887  authorizationRequest.setAuthPassword(userSecret);
888 
889  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
890  SignatureAlgorithm.ES512, cryptoProvider);
891  jwtAuthorizationRequest.setKeyId(keyId);
892  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
893  jwtAuthorizationRequest
894  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
895  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
896  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
897  jwtAuthorizationRequest
898  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
899  jwtAuthorizationRequest
900  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
901  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
902  ClaimValue.createValueList(new String[]{"2"})));
903  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
904  authorizationRequest.setRequest(authJwt);
905  System.out.println("Request JWT: " + authJwt);
906 
907  request = ResteasyClientBuilder.newClient()
908  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
909  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
910  request.header("Accept", MediaType.TEXT_PLAIN);
911  } catch (Exception e) {
912  fail(e.getMessage(), e);
913  }
914 
915  Response response = request.get();
916  String entity = response.readEntity(String.class);
917 
918  showResponse("omittedRequestObjectSigningAlgStep3ES512", response, entity);
919 
920  assertEquals(response.getStatus(), 302, "Unexpected response code.");
921  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
922 
923  try {
924  URI uri = new URI(response.getLocation().toString());
925  assertNotNull(uri.getFragment(), "Query string is null");
926 
927  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
928 
929  assertNotNull(params.get("access_token"), "The accessToken is null");
930  assertNotNull(params.get("scope"), "The scope is null");
931  assertNotNull(params.get("state"), "The state is null");
932  } catch (URISyntaxException e) {
933  e.printStackTrace();
934  fail("Response URI is not well formed");
935  }
936  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3HS256()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3HS256 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri 
) throws Exception
inline

Request authorization with Request Object Signing Alg HS256.

284  {
285  Builder request = null;
286  try {
287  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN);
288  List<String> scopes = Arrays.asList("openid", "profile", "address", "email");
289  String nonce = UUID.randomUUID().toString();
290  String state = UUID.randomUUID().toString();
291 
292  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
293  redirectUri, nonce);
294  authorizationRequest.setState(state);
295  authorizationRequest.getPrompts().add(Prompt.NONE);
296  authorizationRequest.setAuthUsername(userId);
297  authorizationRequest.setAuthPassword(userSecret);
298 
299  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider();
300 
301  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
302  SignatureAlgorithm.HS256, clientSecret1, cryptoProvider);
303  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
304  jwtAuthorizationRequest
305  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
306  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
307  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
308  jwtAuthorizationRequest
309  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
310  jwtAuthorizationRequest
311  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
312  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
313  ClaimValue.createValueList(new String[]{"2"})));
314  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
315  authorizationRequest.setRequest(authJwt);
316  System.out.println("Request JWT: " + authJwt);
317 
318  request = ResteasyClientBuilder.newClient()
319  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
320  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
321  request.header("Accept", MediaType.TEXT_PLAIN);
322  } catch (Exception e) {
323  fail(e.getMessage(), e);
324  }
325 
326  Response response = request.get();
327  String entity = response.readEntity(String.class);
328 
329  showResponse("omittedRequestObjectSigningAlgStep3HS256", response, entity);
330 
331  assertEquals(response.getStatus(), 302, "Unexpected response code.");
332  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
333 
334  try {
335  URI uri = new URI(response.getLocation().toString());
336  assertNotNull(uri.getFragment(), "Query string is null");
337 
338  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
339 
340  assertNotNull(params.get("access_token"), "The accessToken is null");
341  assertNotNull(params.get("id_token"), "The idToken is null");
342  assertNotNull(params.get("scope"), "The scope is null");
343  assertNotNull(params.get("state"), "The state is null");
344  } catch (URISyntaxException e) {
345  e.printStackTrace();
346  fail("Response URI is not well formed");
347  }
348  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
static String clientSecret1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:70
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3HS384()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3HS384 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri 
) throws Exception
inline

Request authorization with Request Object Signing Alg HS384.

356  {
357  Builder request = null;
358  try {
359  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN);
360  List<String> scopes = Arrays.asList("openid", "profile", "address", "email");
361  String nonce = UUID.randomUUID().toString();
362  String state = UUID.randomUUID().toString();
363 
364  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
365  redirectUri, nonce);
366  authorizationRequest.setState(state);
367  authorizationRequest.getPrompts().add(Prompt.NONE);
368  authorizationRequest.setAuthUsername(userId);
369  authorizationRequest.setAuthPassword(userSecret);
370 
371  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider();
372 
373  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
374  SignatureAlgorithm.HS384, clientSecret1, cryptoProvider);
375  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
376  jwtAuthorizationRequest
377  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
378  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
379  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
380  jwtAuthorizationRequest
381  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
382  jwtAuthorizationRequest
383  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
384  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
385  ClaimValue.createValueList(new String[]{"2"})));
386  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
387  authorizationRequest.setRequest(authJwt);
388  System.out.println("Request JWT: " + authJwt);
389 
390  request = ResteasyClientBuilder.newClient()
391  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
392  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
393  request.header("Accept", MediaType.TEXT_PLAIN);
394  } catch (Exception e) {
395  fail(e.getMessage(), e);
396  }
397 
398  Response response = request.get();
399  String entity = response.readEntity(String.class);
400 
401  showResponse("omittedRequestObjectSigningAlgStep3HS384", response, entity);
402 
403  assertEquals(response.getStatus(), 302, "Unexpected response code.");
404  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
405 
406  try {
407  URI uri = new URI(response.getLocation().toString());
408  assertNotNull(uri.getFragment(), "Query string is null");
409 
410  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
411 
412  assertNotNull(params.get("access_token"), "The accessToken is null");
413  assertNotNull(params.get("id_token"), "The idToken is null");
414  assertNotNull(params.get("scope"), "The scope is null");
415  assertNotNull(params.get("state"), "The state is null");
416  } catch (URISyntaxException e) {
417  e.printStackTrace();
418  fail("Response URI is not well formed");
419  }
420  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
static String clientSecret1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:70
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3HS512()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3HS512 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri 
) throws Exception
inline

Request authorization with Request Object Signing Alg HS512.

428  {
429  Builder request = null;
430  try {
431  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN);
432  List<String> scopes = Arrays.asList("openid", "profile", "address", "email");
433  String nonce = UUID.randomUUID().toString();
434  String state = UUID.randomUUID().toString();
435 
436  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
437  redirectUri, nonce);
438  authorizationRequest.setState(state);
439  authorizationRequest.getPrompts().add(Prompt.NONE);
440  authorizationRequest.setAuthUsername(userId);
441  authorizationRequest.setAuthPassword(userSecret);
442 
443  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider();
444 
445  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
446  SignatureAlgorithm.HS512, clientSecret1, cryptoProvider);
447  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
448  jwtAuthorizationRequest
449  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
450  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
451  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
452  jwtAuthorizationRequest
453  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
454  jwtAuthorizationRequest
455  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
456  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
457  ClaimValue.createValueList(new String[]{"2"})));
458  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
459  authorizationRequest.setRequest(authJwt);
460  System.out.println("Request JWT: " + authJwt);
461 
462  request = ResteasyClientBuilder.newClient()
463  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
464  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
465  request.header("Accept", MediaType.TEXT_PLAIN);
466  } catch (Exception e) {
467  fail(e.getMessage(), e);
468  }
469 
470  Response response = request.get();
471  String entity = response.readEntity(String.class);
472 
473  showResponse("omittedRequestObjectSigningAlgStep3HS512", response, entity);
474 
475  assertEquals(response.getStatus(), 302, "Unexpected response code.");
476  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
477 
478  try {
479  URI uri = new URI(response.getLocation().toString());
480  assertNotNull(uri.getFragment(), "Query string is null");
481 
482  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
483 
484  assertNotNull(params.get("access_token"), "The accessToken is null");
485  assertNotNull(params.get("id_token"), "The idToken is null");
486  assertNotNull(params.get("scope"), "The scope is null");
487  assertNotNull(params.get("state"), "The state is null");
488  } catch (URISyntaxException e) {
489  e.printStackTrace();
490  fail("Response URI is not well formed");
491  }
492  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
static String clientSecret1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:70
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3NONE()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3NONE ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri 
) throws Exception
inline

Request authorization with Request Object Signing Alg NONE.

212  {
213  Builder request = null;
214  try {
215  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN);
216  List<String> scopes = Arrays.asList("openid", "profile", "address", "email");
217  String nonce = UUID.randomUUID().toString();
218  String state = UUID.randomUUID().toString();
219 
220  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
221  redirectUri, nonce);
222  authorizationRequest.setState(state);
223  authorizationRequest.getPrompts().add(Prompt.NONE);
224  authorizationRequest.setAuthUsername(userId);
225  authorizationRequest.setAuthPassword(userSecret);
226 
227  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider();
228 
229  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
230  SignatureAlgorithm.NONE, cryptoProvider);
231  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
232  jwtAuthorizationRequest
233  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
234  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
235  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
236  jwtAuthorizationRequest
237  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
238  jwtAuthorizationRequest
239  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
240  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
241  ClaimValue.createValueList(new String[]{"2"})));
242  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
243  authorizationRequest.setRequest(authJwt);
244  System.out.println("Request JWT: " + authJwt);
245 
246  request = ResteasyClientBuilder.newClient()
247  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
248  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
249  request.header("Accept", MediaType.TEXT_PLAIN);
250  } catch (Exception e) {
251  fail(e.getMessage(), e);
252  }
253 
254  Response response = request.get();
255  String entity = response.readEntity(String.class);
256 
257  showResponse("omittedRequestObjectSigningAlgStep3NONE", response, entity);
258 
259  assertEquals(response.getStatus(), 302, "Unexpected response code.");
260  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
261 
262  try {
263  URI uri = new URI(response.getLocation().toString());
264  assertNotNull(uri.getFragment(), "Query string is null");
265 
266  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
267 
268  assertNotNull(params.get("access_token"), "The accessToken is null");
269  assertNotNull(params.get("id_token"), "The idToken is null");
270  assertNotNull(params.get("scope"), "The scope is null");
271  assertNotNull(params.get("state"), "The state is null");
272  } catch (URISyntaxException e) {
273  e.printStackTrace();
274  fail("Response URI is not well formed");
275  }
276  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3RS256()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3RS256 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri,
final String  keyId,
final String  dnName,
final String  keyStoreFile,
final String  keyStoreSecret 
) throws Exception
inline

Request authorization with Request Object Signing Alg RS256.

502  {
503  Builder request = null;
504  try {
505  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider(keyStoreFile, keyStoreSecret, dnName);
506 
507  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN);
508  List<String> scopes = Arrays.asList("openid");
509  String nonce = UUID.randomUUID().toString();
510  String state = UUID.randomUUID().toString();
511 
512  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
513  redirectUri, nonce);
514  authorizationRequest.setState(state);
515  authorizationRequest.getPrompts().add(Prompt.NONE);
516  authorizationRequest.setAuthUsername(userId);
517  authorizationRequest.setAuthPassword(userSecret);
518 
519  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
520  SignatureAlgorithm.RS256, cryptoProvider);
521  jwtAuthorizationRequest.setKeyId(keyId);
522  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
523  jwtAuthorizationRequest
524  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
525  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
526  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
527  jwtAuthorizationRequest
528  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
529  jwtAuthorizationRequest
530  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
531  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
532  ClaimValue.createValueList(new String[]{"2"})));
533  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
534  authorizationRequest.setRequest(authJwt);
535  System.out.println("Request JWT: " + authJwt);
536 
537  request = ResteasyClientBuilder.newClient()
538  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
539  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
540  request.header("Accept", MediaType.TEXT_PLAIN);
541  } catch (Exception e) {
542  fail(e.getMessage(), e);
543  }
544 
545  Response response = request.get();
546  String entity = response.readEntity(String.class);
547 
548  showResponse("omittedRequestObjectSigningAlgStep3RS256", response, entity);
549 
550  assertEquals(response.getStatus(), 302, "Unexpected response code.");
551  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
552 
553  try {
554  URI uri = new URI(response.getLocation().toString());
555  assertNotNull(uri.getFragment(), "Query string is null");
556 
557  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
558 
559  assertNotNull(params.get("access_token"), "The accessToken is null");
560  assertNotNull(params.get("scope"), "The scope is null");
561  assertNotNull(params.get("state"), "The state is null");
562  } catch (URISyntaxException e) {
563  e.printStackTrace();
564  fail("Response URI is not well formed");
565  }
566  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3RS384()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3RS384 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri,
final String  keyId,
final String  dnName,
final String  keyStoreFile,
final String  keyStoreSecret 
) throws Exception
inline

Request authorization with Request Object Signing Alg RS384.

576  {
577  Builder request = null;
578  try {
579  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider(keyStoreFile, keyStoreSecret, dnName);
580 
581  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN);
582  List<String> scopes = Arrays.asList("openid");
583  String nonce = UUID.randomUUID().toString();
584  String state = UUID.randomUUID().toString();
585 
586  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
587  redirectUri, nonce);
588  authorizationRequest.setState(state);
589  authorizationRequest.getPrompts().add(Prompt.NONE);
590  authorizationRequest.setAuthUsername(userId);
591  authorizationRequest.setAuthPassword(userSecret);
592 
593  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
594  SignatureAlgorithm.RS384, cryptoProvider);
595  jwtAuthorizationRequest.setKeyId(keyId);
596  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
597  jwtAuthorizationRequest
598  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
599  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
600  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
601  jwtAuthorizationRequest
602  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
603  jwtAuthorizationRequest
604  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
605  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
606  ClaimValue.createValueList(new String[]{"2"})));
607  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
608  authorizationRequest.setRequest(authJwt);
609  System.out.println("Request JWT: " + authJwt);
610 
611  request = ResteasyClientBuilder.newClient()
612  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
613  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
614  request.header("Accept", MediaType.TEXT_PLAIN);
615  } catch (Exception e) {
616  fail(e.getMessage(), e);
617  }
618 
619  Response response = request.get();
620  String entity = response.readEntity(String.class);
621 
622  showResponse("omittedRequestObjectSigningAlgStep3RS384", response, entity);
623 
624  assertEquals(response.getStatus(), 302, "Unexpected response code.");
625  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
626 
627  try {
628  URI uri = new URI(response.getLocation().toString());
629  assertNotNull(uri.getFragment(), "Query string is null");
630 
631  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
632 
633  assertNotNull(params.get("access_token"), "The accessToken is null");
634  assertNotNull(params.get("scope"), "The scope is null");
635  assertNotNull(params.get("state"), "The state is null");
636  } catch (URISyntaxException e) {
637  e.printStackTrace();
638  fail("Response URI is not well formed");
639  }
640  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ omittedRequestObjectSigningAlgStep3RS512()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.omittedRequestObjectSigningAlgStep3RS512 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri,
final String  keyId,
final String  dnName,
final String  keyStoreFile,
final String  keyStoreSecret 
) throws Exception
inline

Request authorization with Request Object Signing Alg RS512.

650  {
651  Builder request = null;
652  try {
653  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider(keyStoreFile, keyStoreSecret, dnName);
654 
655  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN);
656  List<String> scopes = Arrays.asList("openid");
657  String nonce = UUID.randomUUID().toString();
658  String state = UUID.randomUUID().toString();
659 
660  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId1, scopes,
661  redirectUri, nonce);
662  authorizationRequest.setState(state);
663  authorizationRequest.getPrompts().add(Prompt.NONE);
664  authorizationRequest.setAuthUsername(userId);
665  authorizationRequest.setAuthPassword(userSecret);
666 
667  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
668  SignatureAlgorithm.RS512, cryptoProvider);
669  jwtAuthorizationRequest.setKeyId(keyId);
670  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
671  jwtAuthorizationRequest
672  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
673  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
674  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
675  jwtAuthorizationRequest
676  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
677  jwtAuthorizationRequest
678  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
679  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
680  ClaimValue.createValueList(new String[]{"2"})));
681  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
682  authorizationRequest.setRequest(authJwt);
683  System.out.println("Request JWT: " + authJwt);
684 
685  request = ResteasyClientBuilder.newClient()
686  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
687  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
688  request.header("Accept", MediaType.TEXT_PLAIN);
689  } catch (Exception e) {
690  fail(e.getMessage(), e);
691  }
692 
693  Response response = request.get();
694  String entity = response.readEntity(String.class);
695 
696  showResponse("omittedRequestObjectSigningAlgStep3RS512", response, entity);
697 
698  assertEquals(response.getStatus(), 302, "Unexpected response code.");
699  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
700 
701  try {
702  URI uri = new URI(response.getLocation().toString());
703  assertNotNull(uri.getFragment(), "Query string is null");
704 
705  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
706 
707  assertNotNull(params.get("access_token"), "The accessToken is null");
708  assertNotNull(params.get("scope"), "The scope is null");
709  assertNotNull(params.get("state"), "The state is null");
710  } catch (URISyntaxException e) {
711  e.printStackTrace();
712  fail("Response URI is not well formed");
713  }
714  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId1
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:69
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ output()

static void org.xdi.oxauth.BaseTest.output ( String  p_msg)
inlinestaticinherited
54  {
55  System.out.println(p_msg);
56  }

◆ requestObjectSigningAlgES256Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgES256Step1 ( final String  registerPath,
final String  redirectUris,
final String  jwksUri 
) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg RS512. Request authorization with Request Object Signing Alg RS512. Fail 1: Request authorization with Request Object Signing Alg NONE. Fail 2: Request authorization with Request Object Signing Alg HS256. Fail 3: Request authorization with Request Object Signing Alg HS384. Fail 4: Request authorization with Request Object Signing Alg HS512. Fail 5: Request authorization with Request Object Signing Alg RS256. Fail 6: Request authorization with Request Object Signing Alg RS384. Fail 7: Request authorization with Request Object Signing Alg ES256. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg ES256.

1769  {
1770  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1771 
1772  String registerRequestContent = null;
1773  try {
1774  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1775  StringUtils.spaceSeparatedToList(redirectUris));
1776  registerRequest.setJwksUri(jwksUri);
1777  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.ES256);
1778  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1779  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1780 
1781  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1782  } catch (JSONException e) {
1783  e.printStackTrace();
1784  fail(e.getMessage());
1785  }
1786 
1787  Response response = request.post(Entity.json(registerRequestContent));
1788  String entity = response.readEntity(String.class);
1789 
1790  showResponse("requestObjectSigningAlgES256Step1", response, entity);
1791 
1792  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1793  assertNotNull(entity, "Unexpected result: " + entity);
1794  try {
1795  JSONObject jsonObj = new JSONObject(entity);
1796  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1797  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1798  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1799  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1800  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1801  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1802 
1803  clientId9 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1804  clientSecret9 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1805  registrationAccessToken9 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1806  } catch (JSONException e) {
1807  e.printStackTrace();
1808  fail(e.getMessage() + "\nResponse was: " + entity);
1809  }
1810  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
String jwksUri
Definition: BaseTest.java:80
static String registrationAccessToken9
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:105
static String clientSecret9
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:104
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String clientId9
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:103

◆ requestObjectSigningAlgES384Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgES384Step1 ( final String  registerPath,
final String  redirectUris,
final String  jwksUri 
) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg ES256. Request authorization with Request Object Signing Alg ES256. Fail 1: Request authorization with Request Object Signing Alg NONE. Fail 2: Request authorization with Request Object Signing Alg HS256. Fail 3: Request authorization with Request Object Signing Alg HS384. Fail 4: Request authorization with Request Object Signing Alg HS512. Fail 5: Request authorization with Request Object Signing Alg RS256. Fail 6: Request authorization with Request Object Signing Alg RS384. Fail 7: Request authorization with Request Object Signing Alg RS512. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg ES384.

1872  {
1873  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1874 
1875  String registerRequestContent = null;
1876  try {
1877  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1878  StringUtils.spaceSeparatedToList(redirectUris));
1879  registerRequest.setJwksUri(jwksUri);
1880  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.ES384);
1881  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1882  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1883 
1884  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1885  } catch (JSONException e) {
1886  e.printStackTrace();
1887  fail(e.getMessage());
1888  }
1889 
1890  Response response = request.post(Entity.json(registerRequestContent));
1891  String entity = response.readEntity(String.class);
1892 
1893  showResponse("requestObjectSigningAlgES256Step1", response, entity);
1894 
1895  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1896  assertNotNull(entity, "Unexpected result: " + entity);
1897  try {
1898  JSONObject jsonObj = new JSONObject(entity);
1899  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1900  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1901  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1902  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1903  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1904  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1905 
1906  clientId10 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1907  clientSecret10 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1908  registrationAccessToken10 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1909  } catch (JSONException e) {
1910  e.printStackTrace();
1911  fail(e.getMessage() + "\nResponse was: " + entity);
1912  }
1913  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
String jwksUri
Definition: BaseTest.java:80
static String clientId10
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:107
static String registrationAccessToken10
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:109
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String clientSecret10
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:108

◆ requestObjectSigningAlgHS256Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgHS256Step1 ( final String  registerPath,
final String  redirectUris 
) throws Exception
inline

Fail 1: Request authorization with Request Object Signing Alg HS256. Fail 2: Request authorization with Request Object Signing Alg HS384. Fail 3: Request authorization with Request Object Signing Alg HS512. Fail 4: Request authorization with Request Object Signing Alg RS256. Fail 5: Request authorization with Request Object Signing Alg RS384. Fail 6: Request authorization with Request Object Signing Alg RS512. Fail 7: Request authorization with Request Object Signing Alg ES256. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg HS256.

1153  {
1154  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1155 
1156  String registerRequestContent = null;
1157  try {
1158  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1159  StringUtils.spaceSeparatedToList(redirectUris));
1160  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.HS256);
1161  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1162  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1163 
1164  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1165  } catch (JSONException e) {
1166  e.printStackTrace();
1167  fail(e.getMessage());
1168  }
1169 
1170  Response response = request.post(Entity.json(registerRequestContent));
1171  String entity = response.readEntity(String.class);
1172 
1173  showResponse("requestObjectSigningAlgHS256Step1", response, entity);
1174 
1175  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1176  assertNotNull(entity, "Unexpected result: " + entity);
1177  try {
1178  JSONObject jsonObj = new JSONObject(entity);
1179  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1180  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1181  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1182  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1183  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1184  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1185 
1186  clientId3 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1187  clientSecret3 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1188  registrationAccessToken3 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1189  } catch (JSONException e) {
1190  e.printStackTrace();
1191  fail(e.getMessage() + "\nResponse was: " + entity);
1192  }
1193  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String registrationAccessToken3
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:81
static String clientId3
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:79
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String clientSecret3
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:80

◆ requestObjectSigningAlgHS384Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgHS384Step1 ( final String  registerPath,
final String  redirectUris 
) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg HS256. Request authorization with Request Object Signing Alg HS256. Fail 1: Request authorization with Request Object Signing Alg NONE. Fail 2: Request authorization with Request Object Signing Alg HS384. Fail 3: Request authorization with Request Object Signing Alg HS512. Fail 4: Request authorization with Request Object Signing Alg RS256. Fail 5: Request authorization with Request Object Signing Alg RS384. Fail 6: Request authorization with Request Object Signing Alg RS512. Fail 7: Request authorization with Request Object Signing Alg ES256. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg HS384.

1255  {
1256  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1257 
1258  String registerRequestContent = null;
1259  try {
1260  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1261  StringUtils.spaceSeparatedToList(redirectUris));
1262  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.HS384);
1263  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1264  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1265 
1266  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1267  } catch (JSONException e) {
1268  e.printStackTrace();
1269  fail(e.getMessage());
1270  }
1271 
1272  Response response = request.post(Entity.json(registerRequestContent));
1273  String entity = response.readEntity(String.class);
1274 
1275  showResponse("requestObjectSigningAlgHS384Step1", response, entity);
1276 
1277  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1278  assertNotNull(entity, "Unexpected result: " + entity);
1279  try {
1280  JSONObject jsonObj = new JSONObject(entity);
1281  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1282  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1283  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1284  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1285  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1286  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1287 
1288  clientId4 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1289  clientSecret4 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1290  registrationAccessToken4 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1291  } catch (JSONException e) {
1292  e.printStackTrace();
1293  fail(e.getMessage() + "\nResponse was: " + entity);
1294  }
1295  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String registrationAccessToken4
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:85
static String clientSecret4
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:84
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String clientId4
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:83

◆ requestObjectSigningAlgHS512Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgHS512Step1 ( final String  registerPath,
final String  redirectUris 
) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg HS384. Request authorization with Request Object Signing Alg HS384. Fail 1: Request authorization with Request Object Signing Alg NONE. Fail 2: Request authorization with Request Object Signing Alg HS256. Fail 3: Request authorization with Request Object Signing Alg HS512. Fail 4: Request authorization with Request Object Signing Alg RS256. Fail 5: Request authorization with Request Object Signing Alg RS384. Fail 6: Request authorization with Request Object Signing Alg RS512. Fail 7: Request authorization with Request Object Signing Alg ES256. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg HS512.

1357  {
1358  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1359 
1360  String registerRequestContent = null;
1361  try {
1362  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1363  StringUtils.spaceSeparatedToList(redirectUris));
1364  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.HS512);
1365  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1366  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1367 
1368  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1369  } catch (JSONException e) {
1370  e.printStackTrace();
1371  fail(e.getMessage());
1372  }
1373 
1374  Response response = request.post(Entity.json(registerRequestContent));
1375  String entity = response.readEntity(String.class);
1376 
1377  showResponse("requestObjectSigningAlgHS512Step1", response, entity);
1378 
1379  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1380  assertNotNull(entity, "Unexpected result: " + entity);
1381  try {
1382  JSONObject jsonObj = new JSONObject(entity);
1383  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1384  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1385  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1386  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1387  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1388  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1389 
1390  clientId5 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1391  clientSecret5 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1392  registrationAccessToken5 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1393  } catch (JSONException e) {
1394  e.printStackTrace();
1395  fail(e.getMessage() + "\nResponse was: " + entity);
1396  }
1397  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId5
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:87
static String clientSecret5
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:88
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String registrationAccessToken5
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:89

◆ requestObjectSigningAlgNoneStep1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgNoneStep1 ( final String  registerPath,
final String  redirectUris,
final String  jwksUri 
) throws Exception
inline

Register a client with Request Object Signing Alg NONE.

944  {
945  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
946 
947  String registerRequestContent = null;
948  try {
949  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
950  StringUtils.spaceSeparatedToList(redirectUris));
951  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.NONE);
952  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
953  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
954 
955  registerRequestContent = registerRequest.getJSONParameters().toString(4);
956  } catch (JSONException e) {
957  e.printStackTrace();
958  fail(e.getMessage());
959  }
960 
961  Response response = request.post(Entity.json(registerRequestContent));
962  String entity = response.readEntity(String.class);
963 
964  showResponse("requestObjectSigningAlgNoneStep1", response, entity);
965 
966  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
967  assertNotNull(entity, "Unexpected result: " + entity);
968  try {
969  JSONObject jsonObj = new JSONObject(entity);
970  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
971  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
972  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
973  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
974  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
975  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
976 
977  clientId2 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
978  clientSecret2 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
979  registrationAccessToken2 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
980  registrationClientUri2 = jsonObj.getString(RegisterResponseParam.REGISTRATION_CLIENT_URI.toString());
981  } catch (JSONException e) {
982  e.printStackTrace();
983  fail(e.getMessage() + "\nResponse was: " + entity);
984  }
985  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String registrationAccessToken2
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:76
static String clientSecret2
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:75
static String registrationClientUri2
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:77
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String clientId2
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:74

◆ requestObjectSigningAlgNoneStep2()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgNoneStep2 ( final String  registerPath) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg NONE.

993  {
994  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath + "?"
995  + registrationClientUri2.substring(registrationClientUri2.indexOf("?") + 1)).request();
996 
997  request.header("Authorization", "Bearer " + registrationAccessToken2);
998 
999  Response response = request.get();
1000  String entity = response.readEntity(String.class);
1001 
1002  showResponse("requestObjectSigningAlgNoneStep2", response, entity);
1003 
1004  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1005  assertNotNull(entity, "Unexpected result: " + entity);
1006  try {
1007  JSONObject jsonObj = new JSONObject(entity);
1008  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1009  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1010  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1011  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1012 
1013  // Registered Metadata
1014  assertTrue(jsonObj.has(REQUEST_OBJECT_SIGNING_ALG.toString()));
1015  assertEquals(SignatureAlgorithm.fromString(jsonObj.getString(REQUEST_OBJECT_SIGNING_ALG.toString())),
1016  SignatureAlgorithm.NONE);
1017  assertTrue(jsonObj.has(APPLICATION_TYPE.toString()));
1018  assertTrue(jsonObj.has(RESPONSE_TYPES.toString()));
1019  assertTrue(jsonObj.has(REDIRECT_URIS.toString()));
1020  assertTrue(jsonObj.has(APPLICATION_TYPE.toString()));
1021  assertTrue(jsonObj.has(CLIENT_NAME.toString()));
1022  assertTrue(jsonObj.has(ID_TOKEN_SIGNED_RESPONSE_ALG.toString()));
1023  assertTrue(jsonObj.has(SCOPE.toString()));
1024  } catch (JSONException e) {
1025  e.printStackTrace();
1026  fail(e.getMessage() + "\nResponse was: " + entity);
1027  }
1028  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String registrationAccessToken2
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:76
static String registrationClientUri2
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:77
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ requestObjectSigningAlgNoneStep3()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgNoneStep3 ( final String  authorizePath,
final String  userId,
final String  userSecret,
final String  redirectUri 
) throws Exception
inline

Request authorization with Request Object Signing Alg NONE.

1036  {
1037  Builder request = null;
1038  try {
1039  List<ResponseType> responseTypes = Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN);
1040  List<String> scopes = Arrays.asList("openid", "profile", "address", "email");
1041  String nonce = UUID.randomUUID().toString();
1042  String state = UUID.randomUUID().toString();
1043 
1044  AuthorizationRequest authorizationRequest = new AuthorizationRequest(responseTypes, clientId2, scopes,
1045  redirectUri, nonce);
1046  authorizationRequest.setState(state);
1047  authorizationRequest.getPrompts().add(Prompt.NONE);
1048  authorizationRequest.setAuthUsername(userId);
1049  authorizationRequest.setAuthPassword(userSecret);
1050 
1051  OxAuthCryptoProvider cryptoProvider = new OxAuthCryptoProvider();
1052 
1053  JwtAuthorizationRequest jwtAuthorizationRequest = new JwtAuthorizationRequest(authorizationRequest,
1054  SignatureAlgorithm.NONE, cryptoProvider);
1055  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.NAME, ClaimValue.createNull()));
1056  jwtAuthorizationRequest
1057  .addUserInfoClaim(new Claim(JwtClaimName.NICKNAME, ClaimValue.createEssential(false)));
1058  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL, ClaimValue.createNull()));
1059  jwtAuthorizationRequest.addUserInfoClaim(new Claim(JwtClaimName.EMAIL_VERIFIED, ClaimValue.createNull()));
1060  jwtAuthorizationRequest
1061  .addUserInfoClaim(new Claim(JwtClaimName.PICTURE, ClaimValue.createEssential(false)));
1062  jwtAuthorizationRequest
1063  .addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_TIME, ClaimValue.createNull()));
1064  jwtAuthorizationRequest.addIdTokenClaim(new Claim(JwtClaimName.AUTHENTICATION_CONTEXT_CLASS_REFERENCE,
1065  ClaimValue.createValueList(new String[]{"2"})));
1066  String authJwt = jwtAuthorizationRequest.getEncodedJwt();
1067  authorizationRequest.setRequest(authJwt);
1068  System.out.println("Request JWT: " + authJwt);
1069 
1070  request = ResteasyClientBuilder.newClient()
1071  .target(url.toString() + authorizePath + "?" + authorizationRequest.getQueryString()).request();
1072  request.header("Authorization", "Basic " + authorizationRequest.getEncodedCredentials());
1073  request.header("Accept", MediaType.TEXT_PLAIN);
1074  } catch (Exception e) {
1075  fail(e.getMessage(), e);
1076  }
1077 
1078  Response response = request.get();
1079  String entity = response.readEntity(String.class);
1080 
1081  showResponse("requestObjectSigningAlgNoneStep3", response, entity);
1082 
1083  assertEquals(response.getStatus(), 302, "Unexpected response code.");
1084  assertNotNull(response.getLocation(), "Unexpected result: " + response.getLocation());
1085 
1086  try {
1087  URI uri = new URI(response.getLocation().toString());
1088  assertNotNull(uri.getFragment(), "Query string is null");
1089 
1090  Map<String, String> params = QueryStringDecoder.decode(uri.getFragment());
1091 
1092  assertNotNull(params.get("access_token"), "The accessToken is null");
1093  assertNotNull(params.get("id_token"), "The idToken is null");
1094  assertNotNull(params.get("scope"), "The scope is null");
1095  assertNotNull(params.get("state"), "The state is null");
1096  } catch (URISyntaxException e) {
1097  e.printStackTrace();
1098  fail("Response URI is not well formed");
1099  }
1100  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String clientId2
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:74

◆ requestObjectSigningAlgRS256Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgRS256Step1 ( final String  registerPath,
final String  redirectUris,
final String  jwksUri 
) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg HS512. Request authorization with Request Object Signing Alg HS512. Fail 1: Request authorization with Request Object Signing Alg NONE. Fail 2: Request authorization with Request Object Signing Alg HS256. Fail 3: Request authorization with Request Object Signing Alg HS384. Fail 4: Request authorization with Request Object Signing Alg RS256. Fail 5: Request authorization with Request Object Signing Alg RS384. Fail 6: Request authorization with Request Object Signing Alg RS512. Fail 7: Request authorization with Request Object Signing Alg ES256. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg RS256.

1459  {
1460  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1461 
1462  String registerRequestContent = null;
1463  try {
1464  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1465  StringUtils.spaceSeparatedToList(redirectUris));
1466  registerRequest.setJwksUri(jwksUri);
1467  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.RS256);
1468  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1469  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1470 
1471  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1472  } catch (JSONException e) {
1473  e.printStackTrace();
1474  fail(e.getMessage());
1475  }
1476 
1477  Response response = request.post(Entity.json(registerRequestContent));
1478  String entity = response.readEntity(String.class);
1479 
1480  showResponse("requestObjectSigningAlgRS256Step1", response, entity);
1481 
1482  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1483  assertNotNull(entity, "Unexpected result: " + entity);
1484  try {
1485  JSONObject jsonObj = new JSONObject(entity);
1486  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1487  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1488  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1489  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1490  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1491  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1492 
1493  clientId6 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1494  clientSecret6 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1495  registrationAccessToken6 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1496  } catch (JSONException e) {
1497  e.printStackTrace();
1498  fail(e.getMessage() + "\nResponse was: " + entity);
1499  }
1500  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId6
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:91
String jwksUri
Definition: BaseTest.java:80
static String clientSecret6
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:92
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String registrationAccessToken6
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:93

◆ requestObjectSigningAlgRS384Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgRS384Step1 ( final String  registerPath,
final String  redirectUris,
final String  jwksUri 
) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg RS256. Request authorization with Request Object Signing Alg RS256. Fail 1: Request authorization with Request Object Signing Alg NONE. Fail 2: Request authorization with Request Object Signing Alg HS256. Fail 3: Request authorization with Request Object Signing Alg HS384. Fail 4: Request authorization with Request Object Signing Alg HS512. Fail 5: Request authorization with Request Object Signing Alg RS384. Fail 6: Request authorization with Request Object Signing Alg RS512. Fail 7: Request authorization with Request Object Signing Alg ES256. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg RS384.

1562  {
1563  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1564 
1565  String registerRequestContent = null;
1566  try {
1567  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1568  StringUtils.spaceSeparatedToList(redirectUris));
1569  registerRequest.setJwksUri(jwksUri);
1570  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.RS384);
1571  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1572  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1573 
1574  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1575  } catch (JSONException e) {
1576  e.printStackTrace();
1577  fail(e.getMessage());
1578  }
1579 
1580  Response response = request.post(Entity.json(registerRequestContent));
1581  String entity = response.readEntity(String.class);
1582 
1583  showResponse("requestObjectSigningAlgRS384Step1", response, entity);
1584 
1585  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1586  assertNotNull(entity, "Unexpected result: " + entity);
1587  try {
1588  JSONObject jsonObj = new JSONObject(entity);
1589  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1590  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1591  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1592  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1593  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1594  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1595 
1596  clientId7 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1597  clientSecret7 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1598  registrationAccessToken7 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1599  } catch (JSONException e) {
1600  e.printStackTrace();
1601  fail(e.getMessage() + "\nResponse was: " + entity);
1602  }
1603  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
static String clientId7
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:95
String jwksUri
Definition: BaseTest.java:80
static String registrationAccessToken7
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:97
static String clientSecret7
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:96
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ requestObjectSigningAlgRS512Step1()

void org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.requestObjectSigningAlgRS512Step1 ( final String  registerPath,
final String  redirectUris,
final String  jwksUri 
) throws Exception
inline

Read client to check whether it is using the Request Object Signing Alg RS384. Request authorization with Request Object Signing Alg RS384. Fail 1: Request authorization with Request Object Signing Alg NONE. Fail 2: Request authorization with Request Object Signing Alg HS256. Fail 3: Request authorization with Request Object Signing Alg HS384. Fail 4: Request authorization with Request Object Signing Alg HS512. Fail 5: Request authorization with Request Object Signing Alg RS256. Fail 6: Request authorization with Request Object Signing Alg RS512. Fail 7: Request authorization with Request Object Signing Alg ES256. Fail 8: Request authorization with Request Object Signing Alg ES384. Fail 9: Request authorization with Request Object Signing Alg ES512. Register a client with Request Object Signing Alg RS512.

1665  {
1666 
1667  Builder request = ResteasyClientBuilder.newClient().target(url.toString() + registerPath).request();
1668 
1669  String registerRequestContent = null;
1670  try {
1671  RegisterRequest registerRequest = new RegisterRequest(ApplicationType.WEB, "oxAuth test app",
1672  StringUtils.spaceSeparatedToList(redirectUris));
1673  registerRequest.setJwksUri(jwksUri);
1674  registerRequest.setRequestObjectSigningAlg(SignatureAlgorithm.RS512);
1675  registerRequest.setResponseTypes(Arrays.asList(ResponseType.TOKEN, ResponseType.ID_TOKEN));
1676  registerRequest.addCustomAttribute("oxAuthTrustedClient", "true");
1677 
1678  registerRequestContent = registerRequest.getJSONParameters().toString(4);
1679  } catch (JSONException e) {
1680  e.printStackTrace();
1681  fail(e.getMessage());
1682  }
1683 
1684  Response response = request.post(Entity.json(registerRequestContent));
1685  String entity = response.readEntity(String.class);
1686 
1687  showResponse("requestObjectSigningAlgRS512Step1", response, entity);
1688 
1689  assertEquals(response.getStatus(), 200, "Unexpected response code. " + entity);
1690  assertNotNull(entity, "Unexpected result: " + entity);
1691  try {
1692  JSONObject jsonObj = new JSONObject(entity);
1693  assertTrue(jsonObj.has(RegisterResponseParam.CLIENT_ID.toString()));
1694  assertTrue(jsonObj.has(CLIENT_SECRET.toString()));
1695  assertTrue(jsonObj.has(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString()));
1696  assertTrue(jsonObj.has(REGISTRATION_CLIENT_URI.toString()));
1697  assertTrue(jsonObj.has(CLIENT_ID_ISSUED_AT.toString()));
1698  assertTrue(jsonObj.has(CLIENT_SECRET_EXPIRES_AT.toString()));
1699 
1700  clientId8 = jsonObj.getString(RegisterResponseParam.CLIENT_ID.toString());
1701  clientSecret8 = jsonObj.getString(RegisterResponseParam.CLIENT_SECRET.toString());
1702  registrationAccessToken8 = jsonObj.getString(RegisterResponseParam.REGISTRATION_ACCESS_TOKEN.toString());
1703  } catch (JSONException e) {
1704  e.printStackTrace();
1705  fail(e.getMessage() + "\nResponse was: " + entity);
1706  }
1707  }
URI url
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:67
String jwksUri
Definition: BaseTest.java:80
static String registrationAccessToken8
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:101
static String clientSecret8
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:100
void showResponse(String title, Response response)
Definition: BaseTest.java:30
static String clientId8
Definition: RequestObjectSigningAlgRestrictionEmbeddedTest.java:99

◆ setAuthorizationEndpoint()

void org.xdi.oxauth.BaseTest.setAuthorizationEndpoint ( String  authorizationEndpoint)
inlineinherited
138  {
140  }
String authorizationEndpoint
Definition: BaseTest.java:72

◆ setCheckSessionIFrame()

void org.xdi.oxauth.BaseTest.setCheckSessionIFrame ( String  checkSessionIFrame)
inlineinherited
170  {
172  }
String checkSessionIFrame
Definition: BaseTest.java:78

◆ setClientInfoEndpoint()

void org.xdi.oxauth.BaseTest.setClientInfoEndpoint ( String  clientInfoEndpoint)
inlineinherited
162  {
164  }
String clientInfoEndpoint
Definition: BaseTest.java:77

◆ setConfigurationEndpoint()

void org.xdi.oxauth.BaseTest.setConfigurationEndpoint ( String  configurationEndpoint)
inlineinherited
226  {
228  }
String configurationEndpoint
Definition: BaseTest.java:82

◆ setDriver()

void org.xdi.oxauth.BaseTest.setDriver ( WebDriver  driver)
inlineinherited
130  {
131  this.driver = driver;
132  }
WebDriver driver
Definition: BaseTest.java:70

◆ setEndSessionEndpoint()

void org.xdi.oxauth.BaseTest.setEndSessionEndpoint ( String  endSessionEndpoint)
inlineinherited
178  {
180  }
String endSessionEndpoint
Definition: BaseTest.java:79

◆ setIdGenEndpoint()

void org.xdi.oxauth.BaseTest.setIdGenEndpoint ( String  p_idGenEndpoint)
inlineinherited
218  {
219  idGenEndpoint = p_idGenEndpoint;
220  }
String idGenEndpoint
Definition: BaseTest.java:83

◆ setIntrospectionEndpoint()

void org.xdi.oxauth.BaseTest.setIntrospectionEndpoint ( String  p_introspectionEndpoint)
inlineinherited
202  {
203  introspectionEndpoint = p_introspectionEndpoint;
204  }
String introspectionEndpoint
Definition: BaseTest.java:84

◆ setJwksUri()

void org.xdi.oxauth.BaseTest.setJwksUri ( String  jwksUri)
inlineinherited
186  {
187  this.jwksUri = jwksUri;
188  }
String jwksUri
Definition: BaseTest.java:80

◆ setRegistrationEndpoint()

void org.xdi.oxauth.BaseTest.setRegistrationEndpoint ( String  registrationEndpoint)
inlineinherited
194  {
196  }
String registrationEndpoint
Definition: BaseTest.java:81

◆ setScopeToClaimsMapping()

void org.xdi.oxauth.BaseTest.setScopeToClaimsMapping ( Map< String, List< String >>  p_scopeToClaimsMapping)
inlineinherited
210  {
211  scopeToClaimsMapping = p_scopeToClaimsMapping;
212  }
Map< String, List< String > > scopeToClaimsMapping
Definition: BaseTest.java:85

◆ setTokenEndpoint()

void org.xdi.oxauth.BaseTest.setTokenEndpoint ( String  tokenEndpoint)
inlineinherited
146  {
148  }
String tokenEndpoint
Definition: BaseTest.java:75

◆ setUserInfoEndpoint()

void org.xdi.oxauth.BaseTest.setUserInfoEndpoint ( String  userInfoEndpoint)
inlineinherited
154  {
156  }
String userInfoEndpoint
Definition: BaseTest.java:76

◆ showClient() [1/2]

static void org.xdi.oxauth.BaseTest.showClient ( BaseClient  client)
inlinestaticinherited
775  {
776  ClientUtils.showClient(client);
777  }
Definition: ClientUtils.java:17
static void showClient(BaseClient client)
Definition: ClientUtils.java:21

◆ showClient() [2/2]

static void org.xdi.oxauth.BaseTest.showClient ( BaseClient  client,
CookieStore  cookieStore 
)
inlinestaticinherited
779  {
780  ClientUtils.showClient(client, cookieStore);
781  }
Definition: ClientUtils.java:17
static void showClient(BaseClient client)
Definition: ClientUtils.java:21

◆ showClientUserAgent()

static void org.xdi.oxauth.BaseTest.showClientUserAgent ( BaseClient  client)
inlinestaticinherited
783  {
785  }
Definition: ClientUtils.java:17
static void showClientUserAgent(BaseClient client)
Definition: ClientUtils.java:35

◆ showEntity()

void org.xdi.oxauth.BaseTest.showEntity ( String  entity)
inlineinherited
769  {
770  if (entity != null) {
771  System.out.println("Entity: " + entity.replace("\\n", "\n"));
772  }
773  }

◆ showResponse() [1/2]

void org.xdi.oxauth.BaseTest.showResponse ( String  title,
Response  response 
)
inlineinherited
30  {
31  showResponse(title, response, null);
32  }
void showResponse(String title, Response response)
Definition: BaseTest.java:30

◆ showResponse() [2/2]

static void org.xdi.oxauth.BaseTest.showResponse ( String  title,
Response  response,
Object  entity 
)
inlinestaticinherited
34  {
35  System.out.println(" ");
36  System.out.println("RESPONSE FOR: " + title);
37  System.out.println(response.getStatus());
38  for (Entry<String, List<Object>> headers : response.getHeaders().entrySet()) {
39  String headerName = headers.getKey();
40  System.out.println(headerName + ": " + headers.getValue());
41  }
42 
43  if (entity != null) {
44  System.out.println(entity.toString().replace("\\n", "\n"));
45  }
46  System.out.println(" ");
47  System.out.println("Status message: " + response.getStatus());
48  }

◆ showTitle() [1/2]

void org.xdi.oxauth.BaseTest.showTitle ( String  title)
inlineinherited
22  {
23  title = "TEST: " + title;
24 
25  System.out.println("#######################################################");
26  System.out.println(title);
27  System.out.println("#######################################################");
28  }

◆ showTitle() [2/2]

void org.xdi.oxauth.BaseTest.showTitle ( String  title)
inlineinherited
761  {
762  title = "TEST: " + title;
763 
764  System.out.println("#######################################################");
765  System.out.println(title);
766  System.out.println("#######################################################");
767  }

◆ startSelenium()

void org.xdi.oxauth.BaseTest.startSelenium ( )
inlineinherited
230  {
231  //System.setProperty("webdriver.chrome.driver", "/Users/JAVIER/tmp/chromedriver");
232  //driver = new ChromeDriver();
233 
234  //driver = new SafariDriver();
235 
236  //driver = new FirefoxDriver();
237 
238  //driver = new InternetExplorerDriver();
239 
240  driver = new HtmlUnitDriver(true);
241  }
WebDriver driver
Definition: BaseTest.java:70

◆ stopSelenium()

void org.xdi.oxauth.BaseTest.stopSelenium ( )
inlineinherited
243  {
244 // driver.close();
245  driver.quit();
246  }
WebDriver driver
Definition: BaseTest.java:70

◆ waitForResourceOwnerAndGrantLoginForm() [1/2]

String org.xdi.oxauth.BaseTest.waitForResourceOwnerAndGrantLoginForm ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest,
boolean  cleanupCookies 
)
inlineinherited

Try to open login form (via the user-agent)

617  {
618  String authorizationRequestUrl = authorizeUrl + "?" + authorizationRequest.getQueryString();
619 
620  AuthorizeClient authorizeClient = new AuthorizeClient(authorizeUrl);
621  authorizeClient.setRequest(authorizationRequest);
622 
623  System.out.println("waitForResourceOwnerAndGrantLoginForm: authorizationRequestUrl:" + authorizationRequestUrl);
624  startSelenium();
625  if (cleanupCookies) {
626  System.out.println("waitForResourceOwnerAndGrantLoginForm: Cleaning cookies");
628  }
629  driver.navigate().to(authorizationRequestUrl);
630 
631  WebElement usernameElement = driver.findElement(By.name(loginFormUsername));
632  WebElement passwordElement = driver.findElement(By.name(loginFormPassword));
633  WebElement loginButton = driver.findElement(By.name(loginFormLoginButton));
634 
635  if ((usernameElement == null) || (passwordElement == null) || (loginButton == null)) {
636  return null;
637  }
638 
639  Cookie sessionStateCookie = driver.manage().getCookieNamed("session_state");
640  String sessionState = null;
641  if (sessionStateCookie != null) {
642  sessionState = sessionStateCookie.getValue();
643  }
644  System.out.println("waitForResourceOwnerAndGrantLoginForm: sessionState:" + sessionState);
645 
646  stopSelenium();
647 
648  showClientUserAgent(authorizeClient);
649 
650  return sessionState;
651  }
String loginFormUsername
Definition: BaseTest.java:88
String loginFormPassword
Definition: BaseTest.java:89
void deleteAllCookies()
Definition: BaseTest.java:661
void stopSelenium()
Definition: BaseTest.java:243
Definition: AuthorizeClient.java:29
void startSelenium()
Definition: BaseTest.java:230
String loginFormLoginButton
Definition: BaseTest.java:90
void setRequest(T request)
Definition: BaseClient.java:68
WebDriver driver
Definition: BaseTest.java:70
String getQueryString()
Definition: AuthorizationRequest.java:486
static void showClientUserAgent(BaseClient client)
Definition: BaseTest.java:783

◆ waitForResourceOwnerAndGrantLoginForm() [2/2]

String org.xdi.oxauth.BaseTest.waitForResourceOwnerAndGrantLoginForm ( String  authorizeUrl,
AuthorizationRequest  authorizationRequest 
)
inlineinherited

Try to open login form (via the user-agent)

657  {
658  return waitForResourceOwnerAndGrantLoginForm(authorizeUrl, authorizationRequest, true);
659  }
String waitForResourceOwnerAndGrantLoginForm(String authorizeUrl, AuthorizationRequest authorizationRequest, boolean cleanupCookies)
Definition: BaseTest.java:616

メンバ詳解

◆ authorizationEndpoint

String org.xdi.oxauth.BaseTest.authorizationEndpoint
protectedinherited

◆ authorizationPageEndpoint

String org.xdi.oxauth.BaseTest.authorizationPageEndpoint
protectedinherited

◆ checkSessionIFrame

String org.xdi.oxauth.BaseTest.checkSessionIFrame
protectedinherited

◆ clientId1

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId1
staticprivate

◆ clientId10

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId10
staticprivate

◆ clientId11

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId11
staticprivate

◆ clientId2

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId2
staticprivate

◆ clientId3

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId3
staticprivate

◆ clientId4

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId4
staticprivate

◆ clientId5

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId5
staticprivate

◆ clientId6

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId6
staticprivate

◆ clientId7

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId7
staticprivate

◆ clientId8

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId8
staticprivate

◆ clientId9

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientId9
staticprivate

◆ clientInfoEndpoint

String org.xdi.oxauth.BaseTest.clientInfoEndpoint
protectedinherited

◆ clientSecret1

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret1
staticprivate

◆ clientSecret10

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret10
staticprivate

◆ clientSecret11

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret11
staticprivate

◆ clientSecret2

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret2
staticprivate

◆ clientSecret3

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret3
staticprivate

◆ clientSecret4

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret4
staticprivate

◆ clientSecret5

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret5
staticprivate

◆ clientSecret6

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret6
staticprivate

◆ clientSecret7

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret7
staticprivate

◆ clientSecret8

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret8
staticprivate

◆ clientSecret9

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.clientSecret9
staticprivate

◆ configurationEndpoint

String org.xdi.oxauth.BaseTest.configurationEndpoint
protectedinherited

◆ driver

WebDriver org.xdi.oxauth.BaseTest.driver
protectedinherited

◆ endSessionEndpoint

String org.xdi.oxauth.BaseTest.endSessionEndpoint
protectedinherited

◆ gluuConfigurationEndpoint

String org.xdi.oxauth.BaseTest.gluuConfigurationEndpoint
protectedinherited

◆ idGenEndpoint

String org.xdi.oxauth.BaseTest.idGenEndpoint
protectedinherited

◆ introspectionEndpoint

String org.xdi.oxauth.BaseTest.introspectionEndpoint
protectedinherited

◆ jwksUri

String org.xdi.oxauth.BaseTest.jwksUri
protectedinherited

◆ registrationAccessToken1

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken1
staticprivate

◆ registrationAccessToken10

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken10
staticprivate

◆ registrationAccessToken11

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken11
staticprivate

◆ registrationAccessToken2

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken2
staticprivate

◆ registrationAccessToken3

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken3
staticprivate

◆ registrationAccessToken4

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken4
staticprivate

◆ registrationAccessToken5

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken5
staticprivate

◆ registrationAccessToken6

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken6
staticprivate

◆ registrationAccessToken7

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken7
staticprivate

◆ registrationAccessToken8

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken8
staticprivate

◆ registrationAccessToken9

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationAccessToken9
staticprivate

◆ registrationClientUri1

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationClientUri1
staticprivate

◆ registrationClientUri2

String org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.registrationClientUri2
staticprivate

◆ registrationEndpoint

String org.xdi.oxauth.BaseTest.registrationEndpoint
protectedinherited

◆ scopeToClaimsMapping

Map<String, List<String> > org.xdi.oxauth.BaseTest.scopeToClaimsMapping
protectedinherited

◆ testData

FileConfiguration org.xdi.oxauth.ConfigurableTest.testData
staticinherited

◆ tokenEndpoint

String org.xdi.oxauth.BaseTest.tokenEndpoint
protectedinherited

◆ url

URI org.xdi.oxauth.ws.rs.RequestObjectSigningAlgRestrictionEmbeddedTest.url
private

◆ userInfoEndpoint

String org.xdi.oxauth.BaseTest.userInfoEndpoint
protectedinherited

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