--Task-- name: Validation_user_idm enabled: True class_name: CheckUserTask source_name: idm source_namespace: >default< target_name: idm target_namespace: >default< start: 0 stop: None timeout: not yet initialized for this Task as timeout was not explicitly defined, see updates bellow loop: False interval: None dependencies: [] wait_for: [] options: {} group_name: None Current dir: /mnt/disks/data/xslou/lodestar-fork/pyrock ________________________________________________________________________________ [11/Aug/2023 15:27:47] Validation_user_idm pre : N/A ________________________________________________________________________________ [11/Aug/2023 15:27:47] - INFO: Timeout for this Task has changed to 8h (28800 seconds) [11/Aug/2023 15:27:47] - INFO: timeout was set to Task default (2x global_duration or 300 seconds (whatever is higher)), because it was unset ________________________________________________________________________________ [11/Aug/2023 15:27:47] Validation_user_idm step1 : Make sure we can create a user ________________________________________________________________________________ [LoginSession] Get "access_token" token for user "amadmin" [LoginSession] Obtaining new "access_token" token from server because it was not obtained yet for the user [LoginSession] Get "token_id" token for user "amadmin" [LoginSession] re-using "token_id" token that remains valid for 22m 27s Obtain Oauth2 authz code via REST Oauth2 authorize for access token [http_cmd]: curl --header "Content-Type: application/x-www-form-urlencoded" --request POST --cookie "amlbcookie=01" --cookie "iPlanetDirectoryPro=UtPL0Uxtnjh651KYPea7l_AbrGU.*AAJTSQACMDIAAlNLABxuWEtMOUFscTJ1dHZ0dXNUb1c5TFA3ZHpWNGc9AAR0eXBlAANDVFMAAlMxAAIwMQ..*" --cookie "route=1691767226.022.25779.696605|f60edb382037eb2df1e800d563ad78a7" --data '{"decision": "Allow", "csrf": "UtPL0Uxtnjh651KYPea7l_AbrGU.*AAJTSQACMDIAAlNLABxuWEtMOUFscTJ1dHZ0dXNUb1c5TFA3ZHpWNGc9AAR0eXBlAANDVFMAAlMxAAIwMQ..*"}' "https://xlou.iam.xlou-cdm.engineeringpit.com/am/oauth2/authorize?client_id=smokeclient&scope=fr:idm:*&redirect_uri=https://fake.com&response_type=code&realm=/" [http_cmd]: http status code OK --- status code --- http status code is 302 (expected 302) --- http response --- {'Date': 'Fri, 11 Aug 2023 15:27:47 GMT', 'Content-Length': '0', 'Connection': 'keep-alive', 'X-Frame-Options': 'SAMEORIGIN', 'X-Content-Type-Options': 'nosniff', 'Cache-Control': 'no-store', 'Location': 'https://fake.com?code=SL3XiJ1du3yc2JhGQqIaKWeStWc&iss=https%3A%2F%2Fxlou.iam.xlou-cdm.engineeringpit.com%2Fam%2Foauth2&client_id=smokeclient', 'Pragma': 'no-cache', 'Set-Cookie': 'OAUTH_REQUEST_ATTRIBUTES=DELETED; Expires=Thu, 01 Jan 1970 00:00:00 GMT; Path=/; Secure; HttpOnly; SameSite=none', 'Strict-Transport-Security': 'max-age=15724800; includeSubDomains', 'X-ForgeRock-TransactionId': '389b4bd6f75f02a3171bf0010ee3cb5b'} Oauth2 exchange authorize code for access token [http_cmd]: curl --header "Content-Type: application/x-www-form-urlencoded" -L --request POST --data '{"grant_type": "authorization_code", "redirect_uri": "https://fake.com", "client_id": "smokeclient", "code": "SL3XiJ1du3yc2JhGQqIaKWeStWc"}' "https://xlou.iam.xlou-cdm.engineeringpit.com/am/oauth2/access_token?realm=/" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- { "access_token": "q5VLw4TQV1rP1rhd7i3CSheS0Tk", "scope": "fr:idm:*", "token_type": "Bearer", "expires_in": 3599 } [http_cmd]: curl --header "Authorization: Bearer q5VLw4TQV1rP1rhd7i3CSheS0Tk" --header "Content-Type: application/json" --insecure -L --request POST --data '{"userName": "SpiderMan_on_idm_20230811143543", "givenName": "Peter", "sn": "Parker", "password": "T35tr0ck123", "telephoneNumber": "6669876987", "description": "IDM Test User", "roles": [], "mail": "SpiderMan_on_idm_20230811143543@forgerock.com"}' "https://xlou.iam.xlou-cdm.engineeringpit.com/openidm/managed/user?_action=create" [http_cmd]: http status code OK --- status code --- http status code is 201 (expected [200, 201]) --- http response --- [print_head_tail]: Print head (10 lines) and tail (10 lines) of input string (33 lines): ----- output ----- { "_id": "6dca5463-fc3c-4d08-b268-2f536dc27397", "_rev": "2f5fb877-b147-4748-a9f6-c42be11c3cde-376", "country": null, "telephoneNumber": "6669876987", "mail": "SpiderMan_on_idm_20230811143543@forgerock.com", "memberOfOrgIDs": [], "city": null, "displayName": null, "assignedDashboard": [], [...] "effectiveGroups": [], "preferences": null, "organizationName": null, "givenName": "Peter", "stateProvince": null, "userName": "SpiderMan_on_idm_20230811143543", "postalAddress": null, "effectiveRoles": [], "activateAccount": null } ________________________________________________________________________________ [11/Aug/2023 15:27:49] Validation_user_idm step2 : Make sure we can search the user both in IDM ________________________________________________________________________________ Create new LoginSession for user "SpiderMan_on_idm_20230811143543" [LoginSession] Get "access_token" token for user "SpiderMan_on_idm_20230811143543" [LoginSession] Obtaining new "access_token" token from server because it was not obtained yet for the user [LoginSession] Get "token_id" token for user "SpiderMan_on_idm_20230811143543" [LoginSession] Obtaining new "token_id" token from server because it was not obtained yet for the user Authenticate user SpiderMan_on_idm_20230811143543 via REST [http_cmd]: curl --header "X-OpenAM-Username: SpiderMan_on_idm_20230811143543" --header "X-OpenAM-Password: T35tr0ck123" --header "Content-Type: application/json" --header "Accept-API-Version: resource=2.0, protocol=1.0" -L --request POST "https://xlou.iam.xlou-cdm.engineeringpit.com/am/json/authenticate?realm=/" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- { "tokenId": "X9gTTIwMjCGN6ACxaieGxZVa95U.*AAJTSQACMDIAAlNLABxlaVFxTWU3azNkTkRtT2diQzI3YmdYUUhzV1E9AAR0eXBlAANDVFMAAlMxAAIwMQ..*", "successUrl": "/am/console", "realm": "/" } [LoginSession] Obtaining session info [http_cmd]: curl --header "iPlanetDirectoryPro: X9gTTIwMjCGN6ACxaieGxZVa95U.*AAJTSQACMDIAAlNLABxlaVFxTWU3azNkTkRtT2diQzI3YmdYUUhzV1E9AAR0eXBlAANDVFMAAlMxAAIwMQ..*" --header "Content-Type: application/json" --header "Accept-API-Version: resource=3.0, protocol=2.1" --header "filters_cookie: X9gTTIwMjCGN6ACxaieGxZVa95U.*AAJTSQACMDIAAlNLABxlaVFxTWU3azNkTkRtT2diQzI3YmdYUUhzV1E9AAR0eXBlAANDVFMAAlMxAAIwMQ..*" -L --request POST "https://xlou.iam.xlou-cdm.engineeringpit.com/am/json/realms/root/sessions?_action=getSessionInfo" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- { "username": "6dca5463-fc3c-4d08-b268-2f536dc27397", "universalId": "id=6dca5463-fc3c-4d08-b268-2f536dc27397,ou=user,ou=am-config", "realm": "/", "latestAccessTime": "2023-08-11T15:27:50Z", "maxIdleExpirationTime": "2023-08-11T15:57:50Z", "maxSessionExpirationTime": "2023-08-11T17:27:49Z", "properties": { "AMCtxId": "da57f671-339f-4bab-aca3-792f114e6c8b-648" } } Obtain Oauth2 authz code via REST Oauth2 authorize for access token [http_cmd]: curl --header "Content-Type: application/x-www-form-urlencoded" --request POST --cookie "amlbcookie=01" --cookie "iPlanetDirectoryPro=X9gTTIwMjCGN6ACxaieGxZVa95U.*AAJTSQACMDIAAlNLABxlaVFxTWU3azNkTkRtT2diQzI3YmdYUUhzV1E9AAR0eXBlAANDVFMAAlMxAAIwMQ..*" --cookie "route=1691767670.807.26144.184813|f60edb382037eb2df1e800d563ad78a7" --data '{"decision": "Allow", "csrf": "X9gTTIwMjCGN6ACxaieGxZVa95U.*AAJTSQACMDIAAlNLABxlaVFxTWU3azNkTkRtT2diQzI3YmdYUUhzV1E9AAR0eXBlAANDVFMAAlMxAAIwMQ..*"}' "https://xlou.iam.xlou-cdm.engineeringpit.com/am/oauth2/authorize?client_id=smokeclient&scope=fr:idm:*&redirect_uri=https://fake.com&response_type=code&realm=/" [http_cmd]: http status code OK --- status code --- http status code is 302 (expected 302) --- http response --- {'Date': 'Fri, 11 Aug 2023 15:27:50 GMT', 'Content-Length': '0', 'Connection': 'keep-alive', 'X-Frame-Options': 'SAMEORIGIN', 'X-Content-Type-Options': 'nosniff', 'Cache-Control': 'no-store', 'Location': 'https://fake.com?code=M9CknEj0IK06iy1EZpngxmcLm3w&iss=https%3A%2F%2Fxlou.iam.xlou-cdm.engineeringpit.com%2Fam%2Foauth2&client_id=smokeclient', 'Pragma': 'no-cache', 'Set-Cookie': 'OAUTH_REQUEST_ATTRIBUTES=DELETED; Expires=Thu, 01 Jan 1970 00:00:00 GMT; Path=/; Secure; HttpOnly; SameSite=none', 'Strict-Transport-Security': 'max-age=15724800; includeSubDomains', 'X-ForgeRock-TransactionId': 'e4709bf0b1e671f419021fdc145e1689'} Oauth2 exchange authorize code for access token [http_cmd]: curl --header "Content-Type: application/x-www-form-urlencoded" -L --request POST --data '{"grant_type": "authorization_code", "redirect_uri": "https://fake.com", "client_id": "smokeclient", "code": "M9CknEj0IK06iy1EZpngxmcLm3w"}' "https://xlou.iam.xlou-cdm.engineeringpit.com/am/oauth2/access_token?realm=/" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- { "access_token": "N7vKKZhCZiGIQTbiegGn4RClQ90", "scope": "fr:idm:*", "token_type": "Bearer", "expires_in": 3599 } [http_cmd]: curl --header "Authorization: Bearer N7vKKZhCZiGIQTbiegGn4RClQ90" --header "Content-Type: application/json" --insecure -L --request GET "https://xlou.iam.xlou-cdm.engineeringpit.com/openidm/managed/user/6dca5463-fc3c-4d08-b268-2f536dc27397" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- [print_head_tail]: Print head (10 lines) and tail (10 lines) of input string (33 lines): ----- output ----- { "_id": "6dca5463-fc3c-4d08-b268-2f536dc27397", "_rev": "2f5fb877-b147-4748-a9f6-c42be11c3cde-376", "country": null, "telephoneNumber": "6669876987", "mail": "SpiderMan_on_idm_20230811143543@forgerock.com", "memberOfOrgIDs": [], "city": null, "displayName": null, "assignedDashboard": [], [...] "effectiveGroups": [], "preferences": null, "organizationName": null, "givenName": "Peter", "stateProvince": null, "userName": "SpiderMan_on_idm_20230811143543", "postalAddress": null, "effectiveRoles": [], "activateAccount": null } ________________________________________________________________________________ [11/Aug/2023 15:27:50] Validation_user_idm step3 : Make sure user can authenticate himself ________________________________________________________________________________ Anonymous POST to Login service endpoint to obtain appropriate callbacks Call to Login Tree [http_cmd]: curl --header "Content-Type: application/json" --header "Accept-API-Version: protocol=2.0,resource=1.0" -L --request POST "https://xlou.iam.xlou-cdm.engineeringpit.com/am/json/realms/root/authenticate?authIndexType=service&authIndexValue=Login" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- [print_head_tail]: Print head (10 lines) and tail (10 lines) of input string (39 lines): ----- output ----- { "authId": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdXRoSW5kZXhWYWx1ZSI6IkxvZ2luIiwib3RrIjoiMnE3bTJmaGI2cGQ1NGRybGFkY3UwbDZmM2MiLCJhdXRoSW5kZXhUeXBlIjoic2VydmljZSIsInJlYWxtIjoiLyIsInNlc3Npb25JZCI6IipBQUpUU1FBQ01ESUFCSFI1Y0dVQUNFcFhWRjlCVlZSSUFBSlRNUUFDTURFLipleUowZVhBaU9pSktWMVFpTENKamRIa2lPaUpLVjFRaUxDSmhiR2NpT2lKSVV6STFOaUo5LlpYbEtNR1ZZUVdsUGFVcExWakZSYVV4RFNteGliVTFwVDJsS1FrMVVTVFJSTUVwRVRGVm9WRTFxVlRKSmFYZHBXVmQ0YmtscWIybGFSMng1U1c0d0xpNW5ZM0ZXTkVwWFoyeEdRMUEwZFRGMFEySXhZMUJuTG1aV2RuZHlibGwwY2tnMlVVZHhSbmhuY0c5VFZsVm9OMEZSZWxCdGRXaE5jVUZrYnpCdFFXSlFNSGg2V0doUlNESXdjM2Q1ZWxWM2MyZElhMUJTZDA5MlpuQnNTMFV0TmpWQ1VHMTRSbVl0ZFVOU1YydDBkRU5WWkZGd1VYQllORTl5YWtOck1FSmlRMEZoWVhCU1oxcFBaVWRFTjJGUlowOTVPWEJXYkVOWlYzUkVjRTl1TFRsNFJuZFVWMkZhZG5wSlRHNHdSM0ZrVXpVM2NucEhVR3RIVVdGVmJqazNUMDFZT0hWMFRIVlBkRGszT1hWVVRUTllNWFJxVFhWa1VUWlhka1ZZVkdGRlZqUm5NbTFKV2xSUGFtZElUV1ZmUlhSeFVsVjBNUzFyYTJwR1JuaHNkMHhDV2s1V1QyaHpOMkpKUVhSWWNWOXliM0F3YlZScVdHa3lVVW80ZDNKUVdVbElTamxRYTNCVlkwSnlZblpxVGpoQmFtbEdPR3BDV0hrNFFrVkJOMnhWVFdNNE5uVkhVMnBKYVc5QmIwaG5jV05rTTJSYWNsUlJhRUZNZHpKdFJFbzFSVWxTZWpsSlJsTXlkMjlEVVhKM2NFUkVRMWRZY0RaNU0yeHBNMlV5VEMxdFNIQjVRVkJSU0dwV1RXbzFWM2xxYVZCSFNFZHplRGhZVWpObVZ6UmhOVlJDVG5aR09XTnROMDlhZDBSQlZ6QlBXbTVxTVZSQ1MzRnRWWFZaY2t4MVlURnNOakZsWmxKMFZIRkdMVmh3VlZGamNFcFphRXQzTVZWNFdrRXplbVpCWDA1dVZscHRVVmhrUlhOeVRtZzRTMEpPT0cwd1gzWTBaWE5STUhRd2JYUnJlaTFoWWtKWWIzSXhjbmhtYWpCM1p6bGZPRTlsWW5KbFNXbDVjMDVTVmpoMllWSjBSbVJrWlZkS01HaHJTbXRZTUdadE1YcEhNRFowV0dGcVMwRmxhbWhuWVRoR1VWWlhWalpoYUdoaFlqSllNbk5JY0VSRVNYUnhlR1J5VUVGclltTktjR3czVldsSk1UZFdPRE5NVmpSTWEwWjRZVFJ6VkROR2IzaEtSRE56WkZkdlgwdGhXamRtUVdneVNHcGthR3hJVjNONE1IRmFiVVJCT1ZaR1JFcFVjSE56YmpONlpWQjNMa05GUW5OclUxTTRjVll5V2tGa2VEZGtNMGQzZWtFLkNJTEVYTHByNlYxa2xEUjNnd2RoUXpmbDNJLXplWjQ3TFRxUC1NOVRGR0EiLCJleHAiOjE2OTE3Njc5NzEsImlhdCI6MTY5MTc2NzY3MX0.3e0ECJZdEdGvJtXxo8wyUQqHo26UEkxrYWfRH5gwIko", "callbacks": [ { "type": "NameCallback", "output": [ { "name": "prompt", "value": "User Name" } [...] "name": "IDToken2", "value": "" } ], "_id": 1 } ], "header": "Sign In", "description": "New here? Create an account
Forgot username? Forgot password?" } Set value for first two callbacks for login Call to Login Tree with input values [http_cmd]: curl --header "Content-Type: application/json" --header "Accept-API-Version: protocol=2.0,resource=1.0" -L --request POST --data '{"authId": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJhdXRoSW5kZXhWYWx1ZSI6IkxvZ2luIiwib3RrIjoiMnE3bTJmaGI2cGQ1NGRybGFkY3UwbDZmM2MiLCJhdXRoSW5kZXhUeXBlIjoic2VydmljZSIsInJlYWxtIjoiLyIsInNlc3Npb25JZCI6IipBQUpUU1FBQ01ESUFCSFI1Y0dVQUNFcFhWRjlCVlZSSUFBSlRNUUFDTURFLipleUowZVhBaU9pSktWMVFpTENKamRIa2lPaUpLVjFRaUxDSmhiR2NpT2lKSVV6STFOaUo5LlpYbEtNR1ZZUVdsUGFVcExWakZSYVV4RFNteGliVTFwVDJsS1FrMVVTVFJSTUVwRVRGVm9WRTFxVlRKSmFYZHBXVmQ0YmtscWIybGFSMng1U1c0d0xpNW5ZM0ZXTkVwWFoyeEdRMUEwZFRGMFEySXhZMUJuTG1aV2RuZHlibGwwY2tnMlVVZHhSbmhuY0c5VFZsVm9OMEZSZWxCdGRXaE5jVUZrYnpCdFFXSlFNSGg2V0doUlNESXdjM2Q1ZWxWM2MyZElhMUJTZDA5MlpuQnNTMFV0TmpWQ1VHMTRSbVl0ZFVOU1YydDBkRU5WWkZGd1VYQllORTl5YWtOck1FSmlRMEZoWVhCU1oxcFBaVWRFTjJGUlowOTVPWEJXYkVOWlYzUkVjRTl1TFRsNFJuZFVWMkZhZG5wSlRHNHdSM0ZrVXpVM2NucEhVR3RIVVdGVmJqazNUMDFZT0hWMFRIVlBkRGszT1hWVVRUTllNWFJxVFhWa1VUWlhka1ZZVkdGRlZqUm5NbTFKV2xSUGFtZElUV1ZmUlhSeFVsVjBNUzFyYTJwR1JuaHNkMHhDV2s1V1QyaHpOMkpKUVhSWWNWOXliM0F3YlZScVdHa3lVVW80ZDNKUVdVbElTamxRYTNCVlkwSnlZblpxVGpoQmFtbEdPR3BDV0hrNFFrVkJOMnhWVFdNNE5uVkhVMnBKYVc5QmIwaG5jV05rTTJSYWNsUlJhRUZNZHpKdFJFbzFSVWxTZWpsSlJsTXlkMjlEVVhKM2NFUkVRMWRZY0RaNU0yeHBNMlV5VEMxdFNIQjVRVkJSU0dwV1RXbzFWM2xxYVZCSFNFZHplRGhZVWpObVZ6UmhOVlJDVG5aR09XTnROMDlhZDBSQlZ6QlBXbTVxTVZSQ1MzRnRWWFZaY2t4MVlURnNOakZsWmxKMFZIRkdMVmh3VlZGamNFcFphRXQzTVZWNFdrRXplbVpCWDA1dVZscHRVVmhrUlhOeVRtZzRTMEpPT0cwd1gzWTBaWE5STUhRd2JYUnJlaTFoWWtKWWIzSXhjbmhtYWpCM1p6bGZPRTlsWW5KbFNXbDVjMDVTVmpoMllWSjBSbVJrWlZkS01HaHJTbXRZTUdadE1YcEhNRFowV0dGcVMwRmxhbWhuWVRoR1VWWlhWalpoYUdoaFlqSllNbk5JY0VSRVNYUnhlR1J5VUVGclltTktjR3czVldsSk1UZFdPRE5NVmpSTWEwWjRZVFJ6VkROR2IzaEtSRE56WkZkdlgwdGhXamRtUVdneVNHcGthR3hJVjNONE1IRmFiVVJCT1ZaR1JFcFVjSE56YmpONlpWQjNMa05GUW5OclUxTTRjVll5V2tGa2VEZGtNMGQzZWtFLkNJTEVYTHByNlYxa2xEUjNnd2RoUXpmbDNJLXplWjQ3TFRxUC1NOVRGR0EiLCJleHAiOjE2OTE3Njc5NzEsImlhdCI6MTY5MTc2NzY3MX0.3e0ECJZdEdGvJtXxo8wyUQqHo26UEkxrYWfRH5gwIko", "callbacks": [{"type": "NameCallback", "output": [{"name": "prompt", "value": "User Name"}], "input": [{"name": "IDToken1", "value": "SpiderMan_on_idm_20230811143543"}], "_id": 0}, {"type": "PasswordCallback", "output": [{"name": "prompt", "value": "Password"}], "input": [{"name": "IDToken2", "value": "T35tr0ck123"}], "_id": 1}], "header": "Sign In", "description": "New here? Create an account
Forgot username? Forgot password?"}' "https://xlou.iam.xlou-cdm.engineeringpit.com/am/json/realms/root/authenticate?authIndexType=service&authIndexValue=Login" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- { "tokenId": "VR4WcJjau7y_9w_ASiIRBxt3NgM.*AAJTSQACMDIAAlNLABxJMm5tV0xENWdCK1NsdzhQTjJkMDV0Y3lpRmc9AAR0eXBlAANDVFMAAlMxAAIwMQ..*", "successUrl": "/am/console", "realm": "/" } ________________________________________________________________________________ [11/Aug/2023 15:27:53] Validation_user_idm step4 : Make sure we can delete the user ________________________________________________________________________________ [LoginSession] Get "access_token" token for user "amadmin" [LoginSession] re-using "access_token" token that remains valid for 59m 45s [http_cmd]: curl --header "Authorization: Bearer q5VLw4TQV1rP1rhd7i3CSheS0Tk" --header "Content-Type: application/json" --insecure -L --request DELETE "https://xlou.iam.xlou-cdm.engineeringpit.com/openidm/managed/user/6dca5463-fc3c-4d08-b268-2f536dc27397" [http_cmd]: http status code OK --- status code --- http status code is 200 (expected 200) --- http response --- [print_head_tail]: Print head (10 lines) and tail (10 lines) of input string (33 lines): ----- output ----- { "_id": "6dca5463-fc3c-4d08-b268-2f536dc27397", "_rev": "2f5fb877-b147-4748-a9f6-c42be11c3cde-376", "country": null, "telephoneNumber": "6669876987", "mail": "SpiderMan_on_idm_20230811143543@forgerock.com", "memberOfOrgIDs": [], "city": null, "displayName": null, "assignedDashboard": [], [...] "effectiveGroups": [], "preferences": null, "organizationName": null, "givenName": "Peter", "stateProvince": null, "userName": "SpiderMan_on_idm_20230811143543", "postalAddress": null, "effectiveRoles": [], "activateAccount": null } ________________________________________________________________________________ [11/Aug/2023 15:27:53] Validation_user_idm post : Post method ________________________________________________________________________________ Setting result to PASS Task has been successfully stopped