From c5ca19852178ea6285e982313b16d66dc1794ec2 Mon Sep 17 00:00:00 2001 From: mmouly Date: Tue, 18 Jun 2024 18:10:19 +0200 Subject: [PATCH] remove iam config --- iam/OdmOidcProvider.json | 14 --- iam/SampleXOM.zip | Bin 485 -> 0 bytes iam/executeApiTests.sh | 80 ------------ iam/group-security-configurations.xml | 17 --- iam/iamclient-delete.sh | 15 --- iam/iamclient-list.sh | 15 --- iam/iamclient-update.sh | 49 -------- iam/keystore.jks | Bin 3081 -> 0 bytes iam/management-ingress-chain.pem | 46 ------- iam/management-ingress.pem | 21 ---- iam/openIdParameters.properties | 9 -- iam/openIdWebSecurity.xml | 25 ---- iam/ruleApp_DeploySample_1.0.jar | Bin 92082 -> 0 bytes iam/token-authorize.sh | 11 -- iam/token-introspect.sh | 11 -- iam/token-password.sh | 18 --- iam/truststore.jks | Bin 7487 -> 0 bytes iam/webSecurity.xml | 28 ----- iam/webSecurityGroup.xml | 19 --- iam/webSecurityUser.xml | 17 --- odm-iam.yml | 173 -------------------------- 21 files changed, 568 deletions(-) delete mode 100644 iam/OdmOidcProvider.json delete mode 100644 iam/SampleXOM.zip delete mode 100755 iam/executeApiTests.sh delete mode 100644 iam/group-security-configurations.xml delete mode 100755 iam/iamclient-delete.sh delete mode 100755 iam/iamclient-list.sh delete mode 100755 iam/iamclient-update.sh delete mode 100644 iam/keystore.jks delete mode 100644 iam/management-ingress-chain.pem delete mode 100644 iam/management-ingress.pem delete mode 100644 iam/openIdParameters.properties delete mode 100644 iam/openIdWebSecurity.xml delete mode 100644 iam/ruleApp_DeploySample_1.0.jar delete mode 100755 iam/token-authorize.sh delete mode 100755 iam/token-introspect.sh delete mode 100755 iam/token-password.sh delete mode 100644 iam/truststore.jks delete mode 100644 iam/webSecurity.xml delete mode 100644 iam/webSecurityGroup.xml delete mode 100644 iam/webSecurityUser.xml delete mode 100755 odm-iam.yml diff --git a/iam/OdmOidcProvider.json b/iam/OdmOidcProvider.json deleted file mode 100644 index 616ad942..00000000 --- a/iam/OdmOidcProvider.json +++ /dev/null @@ -1,14 +0,0 @@ -{ - "providers": [ - { - "name": "ums", - "grantType": "password", - "authorizationURL": "https://cp-console.apps..nip.io/idprovider/v1/auth/authorize", - "tokenURL": "https://cp-console.apps..nip.io/idprovider/v1/auth/identitytoken", - "introspectionURL": "https://cp-console.apps..nip.io/idprovider/v1/auth/introspect", - "clientId": "", - "clientSecret": "<>ODM_OIDC_CLIENT_SECRET>", - "logoutURL": "https://cp-console.apps..nip.io/idprovider/v1/auth/logout" - } - ] -} diff --git a/iam/SampleXOM.zip b/iam/SampleXOM.zip deleted file mode 100644 index f8aeffc814846ef4e04db49bf3d9bdfeb2062c9d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 485 zcmWIWW@Zs#VBp|j*v41o_dhOLBbL2qNY?LmS5;81o-E=@;d+?kDPt9c_^Sy<8JGtc#v>V-< zIc>s}S!$n)-&uaIn>+vh`h14x7S|>wYMlT1<)$$I-{|TEepZ{7`2FDCZu_qP?LK3{ z#S;`yvnL)1c)8X~WyilCO<8@bp6bWm=e6dE+H9)wwd$J&PlkbS&VmC8Ut{9$=q~Hy zc(?O0=gnNRNB1VMuiJAx$*iX6`KDluw1j8fDBHZXFNi_Z=g9>1*EN}IO|Q=t zn(%Q&;&hXlcZ?V6PmZ0M!q;p#L$_(-jzZOFLnX_}e+!%>d+!-J%lC$;$G){(bwU4f z)`hdn=6Y`Z+xckrrl}ccwF3{UtxZd5Xf=Av6TM;1r5-xltb52aoe?pS=|#9h0; z4yC5I0#?3KcZa*L|L$-l&65UXo|h;l8G!U1D5^bKjFwzw8F@}KERui hNrVA+WB}s>31E+!0B=?{kRnDPbOF-cz{q4^008<7!V~}i diff --git a/iam/executeApiTests.sh b/iam/executeApiTests.sh deleted file mode 100755 index a697a0bc..00000000 --- a/iam/executeApiTests.sh +++ /dev/null @@ -1,80 +0,0 @@ -#!/bin/sh - -# The script invokes ODM APIs using a bearer header (or BA) passed as parameter - -# odmhost=https://9.171.58.116:9843 -odm_dc_host=https://localhost:9643 -odm_dsc_host=https://localhost:9843 -odm_dr_host=https://localhost:9743 -odm_dsr_host=https://localhost:9943 - -AUTH="Authorization: Bearer $1" - -echo --------------------------------------------------------------------- -echo Invoking: ${odm_dsc_host}/res/api/ruleapps?count=true -echo Response: -curl -k -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" \ - -H "$AUTH" \ - ${odm_dsc_host}/res/api/ruleapps?count=true -echo "" - -echo --------------------------------------------------------------------- -echo Invoking: ${odm_dsc_host}/res/auth?ping=pong -echo Response: -curl -k -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" \ - -H "$AUTH" \ - ${odm_dsc_host}/res/auth?ping=pong -echo "" - -echo --------------------------------------------------------------------- -echo Invoking: ${odm_dc_host}/decisioncenter-api/v1/about -echo Response: -curl -k \ - -H "$AUTH" \ - ${odm_dc_host}/decisioncenter-api/v1/about 2>&1 -echo "" - -echo --------------------------------------------------------------------- -echo Invoking: ${odm_dc_host}/decisioncenter-api/v1/decisionservices -echo Response: -curl -k \ - -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" \ - -H "$AUTH" \ - ${odm_dc_host}/decisioncenter-api/v1/decisionservices 2>&1 -echo "" - -echo --------------------------------------------------------------------- -echo Invoking: ${odm_dr_host}/DecisionRunner/serverinfo -echo Response: -curl -k -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" \ - -H "$AUTH" \ - ${odm_dr_host}/DecisionRunner/serverinfo -echo "" - -echo --------------------------------------------------------------------- -echo Deploying XOM and the ruleapp... -curl -k -H "Content-Type: application/octet-stream" \ - -H "$AUTH" \ - --data-binary "@/Users/mathiasmouly/testOkta/SampleXOM.zip" \ - ${odm_dsc_host}/res/api/v1/xoms/SampleXOM.zip - -curl -k -H "Content-Type: application/octet-stream" \ - -H "$AUTH" \ - --data-binary "@/Users/mathiasmouly/testOkta/ruleApp_DeploySample_1.0.jar" \ - ${odm_dsc_host}/res/api/v1/ruleapps - -echo --------------------------------------------------------------------- -echo Invoking: ${odm_dsr_host}/DecisionService/rest/DeploySample/1.0/MainOperation/1.0 -echo Response: -curl -k -H "Content-Type: application/json" \ - -H "$AUTH" \ - -d @- "${odm_dsr_host}/DecisionService/rest/DeploySample/1.0/MainOperation/1.0" <<+++ -{ - "__DecisionID__": "string", - "DomainSample": { - "astr": "string", - "bstr": "string" - } -} -+++ -echo diff --git a/iam/group-security-configurations.xml b/iam/group-security-configurations.xml deleted file mode 100644 index f3804458..00000000 --- a/iam/group-security-configurations.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/iam/iamclient-delete.sh b/iam/iamclient-delete.sh deleted file mode 100755 index 974dd57c..00000000 --- a/iam/iamclient-delete.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -export admin_username= -export admin_password= -export registration_url=https://cp-console.apps..nip.io/idauth/oidc/endpoint/OP/registration -export OIDC_CLIENT_ID= - -#curl -k -s -X GET -u ${admin_username}:${admin_password} ${registration_url} -echo "***************" - -#curl -u ${admin_username}:${admin_password} --request GET ${registration_url} --insecure - -echo "***************" - -curl -u ${admin_username}:${admin_password} --request DELETE ${registration_url}/${OIDC_CLIENT_ID} --insecure diff --git a/iam/iamclient-list.sh b/iam/iamclient-list.sh deleted file mode 100755 index c7bff587..00000000 --- a/iam/iamclient-list.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/sh - -export admin_username= -export admin_password= -export registration_url=https://cp-console.apps..nip.io/idauth/oidc/endpoint/OP/registration -export OIDC_CLIENT_ID= - -#curl -k -s -X GET -u ${admin_username}:${admin_password} ${registration_url} -echo "***************" - -#curl -u ${admin_username}:${admin_password} --request GET ${registration_url} --insecure - -echo "***************" - -curl -u ${admin_username}:${admin_password} --request GET ${registration_url}/${OIDC_CLIENT_ID} --insecure diff --git a/iam/iamclient-update.sh b/iam/iamclient-update.sh deleted file mode 100755 index 1cfd13b3..00000000 --- a/iam/iamclient-update.sh +++ /dev/null @@ -1,49 +0,0 @@ -#!/bin/sh - -export admin_username= -export admin_password= -export registration_url=https://cp-console.apps..nip.io/idauth/oidc/endpoint/OP/registration -export client_name= -export client_secret=ODM_OIDC_CLIENT_SECRET> -export client_id= - -# Note: the functional_user_id and functional_user_groupIds are the functional user -# and groups for client_crendetials. This works from 19.0.0.4. - -curl -k -s -X PUT \ - -H "Content-Type:application/json" \ - -u "${admin_username}:${admin_password}" \ - -d @- "${registration_url}/${client_name}" <<+++ -{ - "client_id": "${client_id}", - "client_secret": "${client_secret}", - "token_endpoint_auth_method":"client_secret_basic", - "scope":"openid profile email", - "grant_types":[ - "authorization_code", - "client_credentials", - "implicit", - "refresh_token", - "urn:ietf:params:oauth:grant-type:jwt-bearer", - "password" - ], - "response_types":["code","token","id_token"], - "application_type":"web", - "subject_type":"public", - "preauthorized_scope": "openid profile email", - "introspect_tokens":true, - "allow_regexp_redirects":true, - "appPasswordAllowed":true, - "appTokenAllowed":true, - "hash_itr":0, - "hash_len":0, - "preauthorized_scope": "openid", - "introspect_tokens": true, -<<<<<<< HEAD - "redirect_uris": ["https://localhost:9643/odm/decisioncenter/openid/redirect/odm","https://localhost:9643/decisioncenter/openid/redirect/odm","https://localhost:9743/DecisionRunner/openid/redirect/odm","https://localhost:9843/res/openid/redirect/odm","https://localhost:9943/DecisionService/openid/redirect/odm","https://cpd-odm.apps.9.20.212.178.nip.io/odm/decisioncenter/openid/redirect/odm","https://cpd-odm.apps.9.20.212.178.nip.io/odm/res/openid/redirect/odm","https://cpd-odm.apps.9.20.212.178.nip.io/odm/DecisionRunner/openid/redirect/odm","https://cpd-odm.apps.9.20.212.178.nip.io/odm/DecisionService/openid/redirect/odm","http://127.0.0.1:9081/oidcCallback","http://127.0.0.1:19081/oidcCallback","http://127.0.0.1:29081/oidcCallback","http://127.0.0.1:39081/oidcCallback","https://localhost/tokenreceiver"] -======= - "redirect_uris": ["https://localhost:9643/decisioncenter/openid/redirect/odm","https://localhost:9743/DecisionRunner/openid/redirect/odm","https://localhost:9843/res/openid/redirect/odm","https://localhost:9943/DecisionService/openid/redirect/odm","https://localhost:9444/oidcclient/redirect/odm","http://127.0.0.1:9081/oidcCallback","http://127.0.0.1:19081/oidcCallback","http://127.0.0.1:29081/oidcCallback","http://127.0.0.1:39081/oidcCallback","https://localhost/tokenreceiver"] ->>>>>>> 1282087 (first IAM config) -} -+++ -echo diff --git a/iam/keystore.jks b/iam/keystore.jks deleted file mode 100644 index 39a3831ed0320167d7dd607ca4c723eeee9c0bf8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3081 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 diff --git a/iam/management-ingress-chain.pem b/iam/management-ingress-chain.pem deleted file mode 100644 index ae42028c..00000000 --- a/iam/management-ingress-chain.pem +++ /dev/null @@ -1,46 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDaTCCAlGgAwIBAgIQEpR8f5rJcZ02ZB3k2+/eijANBgkqhkiG9w0BAQsFADAz -MRUwEwYDVQQKEwxjZXJ0LW1hbmFnZXIxGjAYBgNVBAMTEWNzLWNhLWNlcnRpZmlj -YXRlMB4XDTIxMDYzMDE2NTQ0MloXDTIyMDYzMDE2NTQ0MlowNDEVMBMGA1UEChMM -Y2VydC1tYW5hZ2VyMRswGQYDVQQDExJtYW5hZ2VtZW50LWluZ3Jlc3MwggEiMA0G -CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDneDfCNtCT3jy2y/gI4AqZq/N2hn2M -nflB7CubtHKg0oaXl3j3ndBPP1zemnEFnPGXrRtg9RXml2slLOGzbUsVpK9O18cg -akbw1YPyKzMbAarldIoxMDydyy0wHe8jAtCtQlo27r6W4oYz+4l3eCLOh0UCBH/E -AJM54vH9LwojBvGTrdmgFLgdIT/dL1Siu6kVQKysi0iIO8VoYalFVCKwPL1AdE8E -f/Q6QsLIvKmPyu6pvEB/8mGP68vsVFDyg2BLPoRykalw/xXT55WBWc8dGuPursny -ecwMxEtvtHttCWxMbenngMornJlrd1PPefh+dKdZhpi+vVJYJ1RMiGFhAgMBAAGj -eDB2MA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMB -Af8EAjAAMEEGA1UdEQQ6MDiCEm1hbmFnZW1lbnQtaW5ncmVzc4IiY3AtY29uc29s -ZS5hcHBzLjkuMjAuMjEyLjE3Lm5pcC5pbzANBgkqhkiG9w0BAQsFAAOCAQEAduXD -celkBG8m5lRGFJRciuVOO/bEkY9hOXdO55NAGZCmOdDIJL86u4rk96NiqQwkWq5C -5xmGVKVQxT6tP+27Tc/gndRzPXIS/ki50uiNgNBS3fc4ujv2PPn7L1qjMcrcCwtD -JbHSOkCp2eZZqtqlZ6A3olrEu+8UbdllekQVze207v6OASTO+1d3aDslPIxq3xRZ -MAdD1HVXEQawvbjPONs1lCwbIOxzNfBhMcvfsTyG2tnKKIeGtKUvPqCfRueIwGkD -NXGCD/WKyDAidBan1DP9gIMpT5NGgarsfqJKZyXYgQ7fgwy0j8yF/HzqOvM+sdCt -rcAsmRAaNBeqKzroEw== ------END CERTIFICATE----- ------BEGIN CERTIFICATE----- -MIIDMjCCAhqgAwIBAgIRANY9z2ca6p7ZUtZ0VJevAEcwDQYJKoZIhvcNAQELBQAw -MzEVMBMGA1UEChMMY2VydC1tYW5hZ2VyMRowGAYDVQQDExFjcy1jYS1jZXJ0aWZp -Y2F0ZTAeFw0yMTA2MzAxNjU0MDJaFw0yMzA2MzAxNjU0MDJaMDMxFTATBgNVBAoT -DGNlcnQtbWFuYWdlcjEaMBgGA1UEAxMRY3MtY2EtY2VydGlmaWNhdGUwggEiMA0G -CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCxLmoWSpQ7Dr/qyvDCFhsp3ELN0eSN -hRkEIAf8clsQOuU2ZiytV2VUyIdXt/QjsQLAsrDzseStesMu6XrYBNqQpO6U2RlG -+GPZ7MWCe6yPzLwuJR7GHSji87Ww2NERyPUZUyHrmXU+cW+JxmKQIPExK12Wqr2S -lmgq9YrVJmCO6WAz7wXTxk4A+e3F1XTQ3dB1uILhPi8zTz9IpTVqg3e1l3f8+IE+ -XImWjeymAJ5PYexztMRatLLuaXx/Hzv5sZAAyID5FJ1YdN+c+taQ/G3CgG1WH+Ve -ibcPlGVjCN2JBvaD9SC4/Pqetl9BZDaoxCXuf8LnMIT3lZmJ5UtkMYIRAgMBAAGj -QTA/MA4GA1UdDwEB/wQEAwICpDAPBgNVHRMBAf8EBTADAQH/MBwGA1UdEQQVMBOC -EWNzLWNhLWNlcnRpZmljYXRlMA0GCSqGSIb3DQEBCwUAA4IBAQBte1lG7R6BdYHy -MQ+4GA4SLikH2oh/0Ay0JxIkLL+c0kbFp5cYw0dU7njlkWIzLuKP9onPcWoFuoFs -Me692kP7ydPhjJ+xeLGzG7lUY7QFzkVn7smfFEMLZ4LakbEmr62lvJeFsEIHg9kT -5B5K7yby+yDO4mmEH3hsYleq76jMbvP7XGOWZF9NJy/dshNrXtLTYsnwHFCgsqrY -o227+OHgban+oNsXCF0pRMpBRq85jI6EIsZ6KELIvHodlJCgR3LJ3Db6HK+ECg6H -y5Os3jU5/g7Ldzl3Lngdvt9xRrzlxFD1J2VQjt5t5m42ZWz2AnQSu81aFSo0bjhi -6zk/c3n7 -======= -MIIDcDCCAligAwIBAgIQBIh70Y/tX7etyF11bgQL7jANBgkqhkiG9w0BAQsFADAzMRUwEwYDVQQKEwxjZXJ0LW1hbmFnZXIxGjAYBgNVBAMTEWNzLWNhLWNlcnRpZmljYXRlMB4XDTIwMTAyODE4NTAwNloXDTIxMTAyODE4NTAwNlowNDEVMBMGA1UEChMMY2VydC1tYW5hZ2VyMRswGQYDVQQDExJtYW5hZ2VtZW50LWluZ3Jlc3MwggEiMA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDdD9/caytrM8gip7gRSnKtrnEwLHo3GrzUCaFRUmT1NaVbmaY1yct9PYzti6im34C7ztyl0fR+wteREp2HVvrDF68h7Af/tpIGPIWKVNLePN3IFzCtMjvBF8hbzSyPHGtb2efbzDdmIVdtSBs7QlhHQeoG547T1yBHxeGswDCl43Qa1N5yTVnegjMcCHVkZFr7R9mug1AitXOMgjjqqAQCCYY5OE2edQ5uuEOh78m/SIIKGa4cIMl1IH2d24rV3s8GSl2N7wAVHPd4oq1PhtHMlDjdiZaDxRlARbmn8f8ZSVDVCYI9eW3ML9XLY6M1WXdY5D2HjkLYFCxtegjcCKD3AgMBAAGjfzB9MA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMBAf8EAjAAMEgGA1UdEQRBMD+CEm1hbmFnZW1lbnQtaW5ncmVzc4IpY3AtY29uc29sZS5hcHBzLm9jcDQ2MWRiYS5jcC5meXJlLmlibS5jb20wDQYJKoZIhvcNAQELBQADggEBAAce5jL631G/oF6zOKTXxUnnkAIj+g7eC7LiByfZLJmVodv4BuqAOt4MFQkwix0sO86wbKlQLamyX2TlprkceVhS87UxsmuLh8oFb0b3fqdHnkambvWHfMY2BaD3pfFad5+RkcDWTkbbWyn8iHlZedobiG/kLrkQP/aaOsWbgL7VqNK47cnMJeWJvafYMFQtyx4oafkjI5t8mBfZsEMKmLTeq4C2HpoeoKcN8HUS/yN9xLiproncwXLGRX52ZiancDfqZRjQBnWyPRzZcvreP/7q8f7jX1vdM4/n/934uE2d5/ES2sTTzG3UrNqHPpXYsMEhBVVk1Y/JSfuUmsT5Qm4= ------END CERTIFICATE----- ------BEGIN CERTIFICATE----- -MIIDMTCCAhmgAwIBAgIQelTnPx1UM8pzef2p5Dp5IzANBgkqhkiG9w0BAQsFADAzMRUwEwYDVQQKEwxjZXJ0LW1hbmFnZXIxGjAYBgNVBAMTEWNzLWNhLWNlcnRpZmljYXRlMB4XDTIwMTAyODE4NDczOFoXDTIxMDEyNjE4NDczOFowMzEVMBMGA1UEChMMY2VydC1tYW5hZ2VyMRowGAYDVQQDExFjcy1jYS1jZXJ0aWZpY2F0ZTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoCggEBAMWJS4sPE8+0QKUZ1pMZvunpBaGixwOLerNVjnwrBjB80wgaieypTiCIVumvCcj3WfRVB30et9vYVruUoG0abzjM5anfCIhQaPjOVEOgVQfD62RTh56V6Pv2WKtr3lRUOktLeJxf5Z5myggPCBPvOXufqXhBU//nHWZD3Jp6TrGEbSI4N8ApFpiSamJAklkIiQ+XtTdqZrdR6estDfqPRbEJuyh31R7DzBAg5NFkSSihp8TQpsq48357vS1B9jC1eSSPXVTFEe+sDRItU5Jw3GOIqyF4RqEn8UKxhI4p+GwnPQxJ6KVP6EKUWeoobjcFp6BxbTHKSbz5Ml1h0594gnUCAwEAAaNBMD8wDgYDVR0PAQH/BAQDAgKkMA8GA1UdEwEB/wQFMAMBAf8wHAYDVR0RBBUwE4IRY3MtY2EtY2VydGlmaWNhdGUwDQYJKoZIhvcNAQELBQADggEBAKFR8B6+AwxPJX1aY1iFw9gpHO6uKxMoHOPZMU0oUWRrf0uRoXquJGSzTBDkcnFJvdF3dW+kuDQ32sg22RK1FgdZap8SzS5kWYDjuFWopZHJxPRy7UDpeX88rlLSNgvF9UTAsC3zk3XJdv1lkiIyhIilWc4+naROrFnNdk3V5yh7+zbe2Qu1v9eTsvNDAQuSLmnbactoHr4gi5ENiBifrM3npmQ/bPIbxW1ttTd7+phChcAYhrS7vPTXzrkQm1w9Nk5tLjbEvJKjsS6VblqoVDa0xER6FgmFG6JDXoWbkqybB8tkyB4bEeZTUNLfu3iDIjHL5GwieN7OV0xQF6Jfb/o= ------END CERTIFICATE----- diff --git a/iam/management-ingress.pem b/iam/management-ingress.pem deleted file mode 100644 index e8d1d9b8..00000000 --- a/iam/management-ingress.pem +++ /dev/null @@ -1,21 +0,0 @@ ------BEGIN CERTIFICATE----- -MIIDcDCCAligAwIBAgIQBIh70Y/tX7etyF11bgQL7jANBgkqhkiG9w0BAQsFADAz -MRUwEwYDVQQKEwxjZXJ0LW1hbmFnZXIxGjAYBgNVBAMTEWNzLWNhLWNlcnRpZmlj -YXRlMB4XDTIwMTAyODE4NTAwNloXDTIxMTAyODE4NTAwNlowNDEVMBMGA1UEChMM -Y2VydC1tYW5hZ2VyMRswGQYDVQQDExJtYW5hZ2VtZW50LWluZ3Jlc3MwggEiMA0G -CSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQDdD9/caytrM8gip7gRSnKtrnEwLHo3 -GrzUCaFRUmT1NaVbmaY1yct9PYzti6im34C7ztyl0fR+wteREp2HVvrDF68h7Af/ -tpIGPIWKVNLePN3IFzCtMjvBF8hbzSyPHGtb2efbzDdmIVdtSBs7QlhHQeoG547T -1yBHxeGswDCl43Qa1N5yTVnegjMcCHVkZFr7R9mug1AitXOMgjjqqAQCCYY5OE2e -dQ5uuEOh78m/SIIKGa4cIMl1IH2d24rV3s8GSl2N7wAVHPd4oq1PhtHMlDjdiZaD -xRlARbmn8f8ZSVDVCYI9eW3ML9XLY6M1WXdY5D2HjkLYFCxtegjcCKD3AgMBAAGj -fzB9MA4GA1UdDwEB/wQEAwIFoDATBgNVHSUEDDAKBggrBgEFBQcDATAMBgNVHRMB -Af8EAjAAMEgGA1UdEQRBMD+CEm1hbmFnZW1lbnQtaW5ncmVzc4IpY3AtY29uc29s -ZS5hcHBzLm9jcDQ2MWRiYS5jcC5meXJlLmlibS5jb20wDQYJKoZIhvcNAQELBQAD -ggEBAAce5jL631G/oF6zOKTXxUnnkAIj+g7eC7LiByfZLJmVodv4BuqAOt4MFQkw -ix0sO86wbKlQLamyX2TlprkceVhS87UxsmuLh8oFb0b3fqdHnkambvWHfMY2BaD3 -pfFad5+RkcDWTkbbWyn8iHlZedobiG/kLrkQP/aaOsWbgL7VqNK47cnMJeWJvafY -MFQtyx4oafkjI5t8mBfZsEMKmLTeq4C2HpoeoKcN8HUS/yN9xLiproncwXLGRX52 -ZiancDfqZRjQBnWyPRzZcvreP/7q8f7jX1vdM4/n/934uE2d5/ES2sTTzG3UrNqH -PpXYsMEhBVVk1Y/JSfuUmsT5Qm4= ------END CERTIFICATE----- diff --git a/iam/openIdParameters.properties b/iam/openIdParameters.properties deleted file mode 100644 index f5dc54fe..00000000 --- a/iam/openIdParameters.properties +++ /dev/null @@ -1,9 +0,0 @@ -OPENID_SERVER_URL=https://cp-console.apps.9.20.212.178.nip.io -OPENID_PROVIDER=ums -OPENID_AUTHORIZATION_URL=https://cp-console.apps.9.20.212.178.nip.io/idprovider/v1/auth/authorize -OPENID_TOKEN_URL=https://cp-console.apps.9.20.212.178.nip.io/idprovider/v1/auth/identitytoken -OPENID_INTROSPECTION_URL=https://cp-console.apps.9.20.212.178.nip.io/idprovider/v1/auth/introspect -OPENID_CLIENT_ID=ibm-odm-vtt-odm-oidc-client-id -OPENID_CLIENT_SECRET=ibm-odm-vtt-odm-oidc-client-id-secret-value -OPENID_LOGOUT_URL=https://cp-console.apps.9.20.212.178.nip.io/idprovider/v1/auth/logout -OPENID_ALLOWED_DOMAINS=apps.9.20.212.178.nip.io diff --git a/iam/openIdWebSecurity.xml b/iam/openIdWebSecurity.xml deleted file mode 100644 index 1c536111..00000000 --- a/iam/openIdWebSecurity.xml +++ /dev/null @@ -1,25 +0,0 @@ - - - - - diff --git a/iam/ruleApp_DeploySample_1.0.jar b/iam/ruleApp_DeploySample_1.0.jar deleted file mode 100644 index de18c460e7116867d52071552af173b0239aec08..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 92082 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

BKt}^~?O^RUigyX1n zi1hvd?Nb>IJ2JA=;Qo=@vA$78#DjQ1e}4!H64_8WNU0voz^TFAPc08hY-MH=SbKhT zWrXijG|r)66Hvg~!=sFQ3ee2N6w~FE!&{34lW6(`CjZJR>nX`nO!;uW#@DOicXSk6MQda_l4F^+IhMm`XPr^&I(-bhJzmAPx$&3_VuCz ziMgP(>NeG=&K}GYQx+pOvQExt|AtSO9<>P(ygZ{kZDgN6Jzys;3ck=f{a_GNuhKdl zLl0cL8A2Lc5&^~AW)lF7!Bll`Cn`I+-HD~O?Z8_!WK5dBWqDBX9;<{EO#d6%7 zcI>q<4>85`u8M#Nk}Vv%5I*=3C*gDAAe;5*_W55d2Q8ws{mo7qmKavT4QUc*UNOJA zkrRhayR~F1$Q{#|H+GE>gYb1J#^Yoh!t-*gu$==G3CNNr1AV+hp-uK98%KN_=j22 zzT?tN#|wy=X(LbdHGnvKnAXb4TaRx2#q7kbF9ozrpQ?Fu^58_zq7o9vSt_{{^NHkm z{#=svqtbpy{W%7xD0v3eqtu*=Ihoji`yz~~dIUH=?g!~w_Uf_;MM2C9I1{ja(m{nr z=U@XiD}rMoH*pZNS3j3gDRR~dn>fD)xS~I@1X73giIDtT|A37)@uKl3=}{kO9t4lC z-$zNrAnn63U(1w-7zGkVWZ@Db3Pf4rI-sIjZ*G+Yo$i1UT=nXt@9A ztCfGg9R|D<$hhTKe!i1?&48YMtFe#uvq4l7qFWH2p!b%MZR8Q>^E#-v-(f-4-FkLk z-L;n`nzYLuREc=~Nx>8rhnM%RXuU$%AJ!L3d5+%O-MMyPGX!tdCH{6>t?NhiZsg=h zN02jeTdPWoq7fe(u1^3lj{SYVxZIl^GxlYZz>hq6fx z^2Q`e!e_s8N^)r=Cact$Y!aUv{O>i)ra$~fe#9hM=BTx?wwDW|n*pOcuhj_j!Yf{S zHTVZ>H({y5(RmY1S5iGS_h`i47-hnt=S~X3R4P$#P^u2?j7gO&835*UkcI!)Kb#sw zILd<{9!0pe9^HMu0v`a6xi7(nZWccnI7j~%l=@S?knQGyS3k%>B)z!n78O_G+%rM%kOUtKps z62?CmWoL1{{qQTzyn5CTSacn7D?If>)dv6-O^db5FHA$-7Zlv|qw)ic$n`M8UY%%2 zb!)ehoZ8IkO`RL_CwU~?qw=p+B--{A+k~UomZ_J3Oq&+x$;vZkoLR8VG45v7|0&iMi7 zz4pceqf&V;$-d!txpp8 z(d6)MPMi^$%MO_f_GF@cQZd%#qJ5Gn)?}l7(lOTLgME@F6N>K&1FBsIj8hUN>k

ud){^I+(ei4EWXB8VJTDT2j*EFIJ2;>@* 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 Ds4IQt diff --git a/iam/token-authorize.sh b/iam/token-authorize.sh deleted file mode 100755 index 0aed21ba..00000000 --- a/iam/token-authorize.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -introspect_url=https://cp-console.apps.9.20.212.178.nip.io/idprovider/v1/auth/authorize - -export client_secret=ibm-odm-vtt-odm-oidc-client-id-secret-value -export client_id=ibm-odm-vtt-odm-oidc-client-id -curl -k -u "${client_id}:${client_secret}" \ - -d "token_type_hint=access_token&token=$1" \ - ${introspect_url} | jq - -echo "" diff --git a/iam/token-introspect.sh b/iam/token-introspect.sh deleted file mode 100755 index 3024f4d5..00000000 --- a/iam/token-introspect.sh +++ /dev/null @@ -1,11 +0,0 @@ -#!/bin/sh - -introspect_url=https://cp-console.apps.9.20.212.178.nip.io/idprovider/v1/auth/introspect - -export client_secret=ibm-odm-vtt-odm-oidc-client-id-secret-value -export client_id=ibm-odm-vtt-odm-oidc-client-id -curl -k -u "${client_id}:${client_secret}" \ - -d "token_type_hint=access_token&token=$1" \ - ${introspect_url} | jq - -echo "" diff --git a/iam/token-password.sh b/iam/token-password.sh deleted file mode 100755 index 784c3e79..00000000 --- a/iam/token-password.sh +++ /dev/null @@ -1,18 +0,0 @@ -#!/bin/sh - -# https://www.ibm.com/support/knowledgecenter/SSHKN6/iam/3.x.x/apis/oidc_auth_apis.html#get2 - -token_url=https://cp-console.apps.ocp461dba.cp.fyre.ibm.com/idprovider/v1/auth/identitytoken - -client_id=iamclient4odm -client_secret=iamsecretodm -username=mathias.mouly@fr.ibm.com -password=XXXX - -scope=openid - -curl -v -k -H "Content-Type: application/x-www-form-urlencoded;charset=UTF-8" \ - -d "scope=${scope}&grant_type=password&client_id=${client_id}&client_secret=${client_secret}&username=${username}&password=${password}" \ - ${token_url} - -echo "" diff --git a/iam/truststore.jks b/iam/truststore.jks deleted file mode 100644 index 6477e55937930e93448e615b32f4f88fe334e78d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 7487 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 A;Q#;t diff --git a/iam/webSecurity.xml b/iam/webSecurity.xml deleted file mode 100644 index 2b6476e8..00000000 --- a/iam/webSecurity.xml +++ /dev/null @@ -1,28 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/iam/webSecurityGroup.xml b/iam/webSecurityGroup.xml deleted file mode 100644 index aef98db5..00000000 --- a/iam/webSecurityGroup.xml +++ /dev/null @@ -1,19 +0,0 @@ - - - - - - - - - - - - - - - - - - - diff --git a/iam/webSecurityUser.xml b/iam/webSecurityUser.xml deleted file mode 100644 index 2708c673..00000000 --- a/iam/webSecurityUser.xml +++ /dev/null @@ -1,17 +0,0 @@ - - - - - - - - - - - - - - - - - diff --git a/odm-iam.yml b/odm-iam.yml deleted file mode 100755 index 1be27e56..00000000 --- a/odm-iam.yml +++ /dev/null @@ -1,173 +0,0 @@ -version: '3' -services: - dbserver: - image: $REPOSITORY/dbserver:$ODMVERSION - build: - context: ../ - dockerfile: ./${ODMDOCKERDIR}/databases/postgresql/Dockerfile - args: - - ODMDOCKERDIR=$ODMDOCKERDIR - - ODMDBVERSION=$ODMDBVERSION - - FROMPOSTGRES=$FROMPOSTGRES - - FROMDOCKERBUILD=$FROMDOCKERBUILD - user: "999:999" - ports: - - 5432:5432 - environment: - - POSTGRES_USER=odmusr - - POSTGRES_PASSWORD=odmpwd - - POSTGRES_DB=odmdb - - PGDATA=/var/lib/postgresql/data - - SAMPLE=false -# Uncomment this line to persist your data. Note that on OSX you need to share this -# current directory in the Preference menu -> File Sharing menu. -# volumes: -# - ./pgdata:/pgdata - - odm-decisionserverconsole: - image: $REPOSITORY/$PREFIXIMAGE-decisionserverconsole:$ODMVERSION - build: - context: ../ - dockerfile: ./${ODMDOCKERDIR}/decisionserver/decisionserverconsole/Dockerfile - args: - - ODMDOCKERDIR=$ODMDOCKERDIR - - ODMVERSION=$ODMVERSION - - FROMLIBERTY=$FROMLIBERTY - - FROMDOCKERBUILD=$FROMDOCKERBUILD - - FROMLIBERTYBUILD=$FROMLIBERTY - links: - - dbserver - depends_on: - - dbserver - ports: - - 9080:9080 - - 1883:1883 - - 9843:9443 - environment: - - ENABLE_TLS=true - - OPENID_CONFIG=true - - OPENID_SERVER_URL=https://cp-console.apps.ocp461dba.cp.fyre.ibm.com - - OPENID_PROVIDER=ums - - OPENID_CLIENT_ID=iamclient4odm - - OPENID_CLIENT_SECRET=iamsecret4odm - - OPENID_ALLOWED_DOMAINS=fr.eurolabs.ibm.com - volumes: - - ${PWD}/iam/openIdWebSecurity.xml:/config/auth/openIdWebSecurity.xml - - ${PWD}/iam/openIdParameters.properties:/config/auth/openIdParameters.properties - - ${PWD}/iam/webSecurity.xml:/config/auth/webSecurity.xml - - ${PWD}/iam/keystore.jks:/config/security/keystore.jks - - ${PWD}/iam/truststore.jks:/config/security/truststore.jks - - odm-decisionrunner: - image: $REPOSITORY/$PREFIXIMAGE-decisionrunner:$ODMVERSION - build: - context: ../ - dockerfile: ./${ODMDOCKERDIR}/decisionserver/decisionrunner/Dockerfile - args: - - ODMDOCKERDIR=$ODMDOCKERDIR - - ODMVERSION=$ODMVERSION - - FROMLIBERTY=$FROMLIBERTY - - FROMDOCKERBUILD=$FROMDOCKERBUILD - - FROMLIBERTYBUILD=$FROMLIBERTY - links: - - dbserver - - odm-decisionserverconsole - depends_on: - - dbserver - - odm-decisionserverconsole - ports: - - 9070:9080 - - 9743:9443 - environment: - - ENABLE_TLS=true - - DECISIONSERVERCONSOLE_PORT=9443 - - OPENID_CONFIG=true - - OPENID_SERVER_URL=https://cp-console.apps.ocp461dba.cp.fyre.ibm.com - - OPENID_PROVIDER=ums - - OPENID_CLIENT_ID=iamclient4odm - - OPENID_CLIENT_SECRET=iamsecret4odm - - OPENID_ALLOWED_DOMAINS=fr.eurolabs.ibm.com - volumes: - - ${PWD}/iam/openIdWebSecurity.xml:/config/auth/openIdWebSecurity.xml - - ${PWD}/iam/openIdParameters.properties:/config/auth/openIdParameters.properties - - ${PWD}/iam/webSecurity.xml:/config/auth/webSecurity.xml - - ${PWD}/iam/keystore.jks:/config/security/keystore.jks - - ${PWD}/iam/truststore.jks:/config/security/truststore.jks - - odm-decisionserverruntime: - image: $REPOSITORY/$PREFIXIMAGE-decisionserverruntime:$ODMVERSION - build: - context: ../ - dockerfile: ./${ODMDOCKERDIR}/decisionserver/decisionserverruntime/Dockerfile - args: - - ODMDOCKERDIR=$ODMDOCKERDIR - - ODMVERSION=$ODMVERSION - - FROMLIBERTY=$FROMLIBERTY - - FROMDOCKERBUILD=$FROMDOCKERBUILD - - FROMLIBERTYBUILD=$FROMLIBERTY - environment: - - DECISIONSERVERCONSOLE_NAME=odm-decisionserverconsole - links: - - dbserver - - odm-decisionserverconsole - depends_on: - - dbserver - - odm-decisionserverconsole - ports: - - 9090:9080 - - 9943:9443 - environment: - - ENABLE_TLS=true - - DECISIONSERVERCONSOLE_NAME=odm-decisionserverconsole - - OPENID_CONFIG=true - - OPENID_SERVER_URL=https://cp-console.apps.ocp461dba.cp.fyre.ibm.com - - OPENID_PROVIDER=ums - - OPENID_CLIENT_ID=iamclient4odm - - OPENID_CLIENT_SECRET=iamsecret4odm - - OPENID_ALLOWED_DOMAINS=fr.eurolabs.ibm.com - volumes: - - ${PWD}/iam/openIdWebSecurity.xml:/config/auth/openIdWebSecurity.xml - - ${PWD}/iam/openIdParameters.properties:/config/auth/openIdParameters.properties - - ${PWD}/iam/webSecurity.xml:/config/auth/webSecurity.xml - - ${PWD}/iam/keystore.jks:/config/security/keystore.jks - - ${PWD}/iam/truststore.jks:/config/security/truststore.jks - - odm-decisioncenter: - image: $REPOSITORY/$PREFIXIMAGE-decisioncenter:$ODMVERSION - build: - context: ../ - dockerfile: ./${ODMDOCKERDIR}/decisioncenter/Dockerfile - args: - - ODMDOCKERDIR=$ODMDOCKERDIR - - ODMVERSION=$ODMVERSION - - FROMLIBERTY=$FROMLIBERTY - - FROMDOCKERBUILD=$FROMDOCKERBUILD - - FROMLIBERTYBUILD=$FROMLIBERTY - links: - - dbserver - depends_on: - - dbserver - ports: - - 9060:9060 - - 9643:9453 - environment: - - JVM_ARGS="-Xmx14000m" - - ENABLE_TLS=true - - DECISIONSERVERCONSOLE_PORT=9443 - - DECISIONRUNNER_PORT=9443 - - OPENID_CONFIG=true - - OPENID_SERVER_URL=https://cp-console.apps.ocp461dba.cp.fyre.ibm.com - - OPENID_PROVIDER=ums - - OPENID_CLIENT_ID=iamclient4odm - - OPENID_CLIENT_SECRET=iamsecret4odm - - OPENID_ALLOWED_DOMAINS=fr.eurolabs.ibm.com - volumes: - - ${PWD}/iam/openIdWebSecurity.xml:/config/auth/openIdWebSecurity.xml - - ${PWD}/iam/openIdParameters.properties:/config/auth/openIdParameters.properties - - ${PWD}/iam/webSecurity.xml:/config/auth/webSecurity.xml - - ${PWD}/iam/keystore.jks:/config/security/keystore.jks - - ${PWD}/iam/truststore.jks:/config/security/truststore.jks - deploy: - resources: - limits: - cpus: "4"