@@ -353,9 +353,10 @@ public void testAwsRoleArnSessionNameAndStsRegion() {
353
353
354
354
MSKCredentialProvider .ProviderBuilder providerBuilder = new MSKCredentialProvider .ProviderBuilder (optionsMap ) {
355
355
StsAssumeRoleCredentialsProvider createSTSRoleCredentialProvider (String roleArn ,
356
- String sessionName , String stsRegion ) {
356
+ String sessionName , String stsRegion , Boolean shouldUseFips ) {
357
357
assertEquals (TEST_ROLE_ARN , roleArn );
358
358
assertEquals (TEST_ROLE_SESSION_NAME , sessionName );
359
+ assertEquals (false , shouldUseFips );
359
360
assertEquals ("eu-west-1" , stsRegion );
360
361
URI endpointConfiguration = buildEndpointConfiguration (Region .of (stsRegion ));
361
362
assertEquals ("https://sts.eu-west-1.amazonaws.com" , endpointConfiguration .toString ());
@@ -372,6 +373,41 @@ StsAssumeRoleCredentialsProvider createSTSRoleCredentialProvider(String roleArn,
372
373
Mockito .verify (mockStsRoleProvider , times (1 )).close ();
373
374
}
374
375
376
+ @ Test
377
+ public void testAwsRoleArnSessionNameAndStsRegionAndShouldUseFIPs () {
378
+ StsAssumeRoleCredentialsProvider mockStsRoleProvider = Mockito
379
+ .mock (StsAssumeRoleCredentialsProvider .class );
380
+ Mockito .when (mockStsRoleProvider .resolveIdentity ())
381
+ .thenAnswer (i -> CompletableFuture .completedFuture (AwsSessionCredentials .create (ACCESS_KEY_VALUE , SECRET_KEY_VALUE , SESSION_TOKEN )));
382
+
383
+ Map <String , String > optionsMap = new HashMap <>();
384
+ optionsMap .put (AWS_ROLE_ARN , TEST_ROLE_ARN );
385
+ optionsMap .put ("awsRoleSessionName" , TEST_ROLE_SESSION_NAME );
386
+ optionsMap .put ("awsStsRegion" , "eu-west-1" );
387
+ optionsMap .put ("awsShouldUseFips" , "true" );
388
+
389
+ MSKCredentialProvider .ProviderBuilder providerBuilder = new MSKCredentialProvider .ProviderBuilder (optionsMap ) {
390
+ StsAssumeRoleCredentialsProvider createSTSRoleCredentialProvider (String roleArn ,
391
+ String sessionName , String stsRegion , Boolean shouldUseFips ) {
392
+ assertEquals (TEST_ROLE_ARN , roleArn );
393
+ assertEquals (TEST_ROLE_SESSION_NAME , sessionName );
394
+ assertEquals ("eu-west-1" , stsRegion );
395
+ assertEquals (true , shouldUseFips );
396
+ URI endpointConfiguration = buildEndpointConfiguration (Region .of (stsRegion ));
397
+ assertEquals ("https://sts.eu-west-1.amazonaws.com" , endpointConfiguration .toString ());
398
+ return mockStsRoleProvider ;
399
+ }
400
+ };
401
+ MSKCredentialProvider provider = new MSKCredentialProvider (providerBuilder );
402
+ assertFalse (provider .getShouldDebugCreds ());
403
+
404
+ AwsCredentials credentials = provider .resolveCredentials ();
405
+ validateBasicSessionCredentials (credentials );
406
+
407
+ provider .close ();
408
+ Mockito .verify (mockStsRoleProvider , times (1 )).close ();
409
+ }
410
+
375
411
@ Test
376
412
public void testAwsRoleArnSessionNameStsRegionAndExternalId () {
377
413
StsAssumeRoleCredentialsProvider mockStsRoleProvider = Mockito
@@ -389,11 +425,13 @@ public void testAwsRoleArnSessionNameStsRegionAndExternalId() {
389
425
StsAssumeRoleCredentialsProvider createSTSRoleCredentialProvider (String roleArn ,
390
426
String externalId ,
391
427
String sessionName ,
392
- String stsRegion ) {
428
+ String stsRegion ,
429
+ Boolean shouldUseFips ) {
393
430
assertEquals (TEST_ROLE_ARN , roleArn );
394
431
assertEquals (TEST_ROLE_EXTERNAL_ID , externalId );
395
432
assertEquals (TEST_ROLE_SESSION_NAME , sessionName );
396
433
assertEquals ("eu-west-1" , stsRegion );
434
+ assertEquals (false , shouldUseFips );
397
435
URI endpointConfiguration = buildEndpointConfiguration (Region .of (stsRegion ));
398
436
assertEquals ("https://sts.eu-west-1.amazonaws.com" , endpointConfiguration .toString ());
399
437
return mockStsRoleProvider ;
@@ -429,9 +467,10 @@ ProfileCredentialsProvider createEnhancedProfileCredentialsProvider(String profi
429
467
}
430
468
431
469
StsAssumeRoleCredentialsProvider createSTSRoleCredentialProvider (String roleArn ,
432
- String sessionName , String stsRegion ) {
470
+ String sessionName , String stsRegion , Boolean shouldUseFips ) {
433
471
assertEquals (TEST_ROLE_ARN , roleArn );
434
472
assertEquals ("aws-msk-iam-auth" , sessionName );
473
+ assertEquals (false , shouldUseFips );
435
474
return mockStsRoleProvider ;
436
475
}
437
476
};
@@ -649,9 +688,10 @@ private MSKCredentialProvider.ProviderBuilder getProviderBuilder(StsAssumeRoleCr
649
688
Map <String , String > optionsMap , String s ) {
650
689
return new MSKCredentialProvider .ProviderBuilder (optionsMap ) {
651
690
StsAssumeRoleCredentialsProvider createSTSRoleCredentialProvider (String roleArn ,
652
- String sessionName , String stsRegion ) {
691
+ String sessionName , String stsRegion , Boolean shouldUseFips ) {
653
692
assertEquals (TEST_ROLE_ARN , roleArn );
654
693
assertEquals (s , sessionName );
694
+ assertEquals (false , shouldUseFips );
655
695
return mockStsRoleProvider ;
656
696
}
657
697
};
@@ -662,9 +702,11 @@ private MSKCredentialProvider.ProviderBuilder getProviderBuilderWithCredentials(
662
702
return new MSKCredentialProvider .ProviderBuilder (optionsMap ) {
663
703
StsAssumeRoleCredentialsProvider createSTSRoleCredentialProvider (String roleArn ,
664
704
String sessionName , String stsRegion ,
665
- AwsCredentialsProvider credentials ) {
705
+ AwsCredentialsProvider credentials ,
706
+ Boolean shouldUseFips ) {
666
707
assertEquals (TEST_ROLE_ARN , roleArn );
667
708
assertEquals (s , sessionName );
709
+ assertEquals (false , shouldUseFips );
668
710
return mockStsRoleProvider ;
669
711
}
670
712
};
@@ -740,4 +782,4 @@ private URL getProfileResourceURL() {
740
782
return getClass ().getClassLoader ().getResource ("profile_config_file" );
741
783
}
742
784
743
- }
785
+ }
0 commit comments