Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[RHDM-319] OpenShift - default Maven user should not be admin #24

Closed
wants to merge 1 commit into from
Closed
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Jump to
Jump to file
Failed to load files.
Diff view
Diff view
56 changes: 48 additions & 8 deletions os.bpmsuite.common/added/launch/bpmsuite-common.sh
Original file line number Diff line number Diff line change
Expand Up @@ -7,10 +7,15 @@ source $JBOSS_HOME/bin/launch/logging.sh
function prepareEnv() {
# please keep these in alphabetical order
unset KIE_ADMIN_PWD
unset KIE_ADMIN_ROLES
unset KIE_ADMIN_USER
unset KIE_MBEANS
unset KIE_SERVER_CONTROLLER_PWD
unset KIE_SERVER_CONTROLLER_ROLES
unset KIE_SERVER_CONTROLLER_USER
unset MAVEN_REPO_PASSWORD
unset MAVEN_REPO_ROLES
unset MAVEN_REPO_USERNAME
}

function configureEnv() {
Expand All @@ -20,27 +25,62 @@ function configureEnv() {
function configure() {
configure_admin_security
configure_controller_security
configure_maven_security
configure_maven_settings
configure_mbeans
}

function configure_admin_security() {
local kieAdminUser=$(find_env "KIE_ADMIN_USER" "adminUser")
local kieAdminPwd=$(find_env "KIE_ADMIN_PWD" "admin1!")
${JBOSS_HOME}/bin/add-user.sh -a --user "${kieAdminUser}" --password "${kieAdminPwd}" --role "kie-server,rest-all,admin,kiemgmt,Administrators"
if [ "$?" -ne "0" ]; then
log_error "Failed to create admin user \"${kieAdminUser}\""
log_error "Exiting..."
exit
fi
local kieAdminRoles=$(find_env "KIE_ADMIN_ROLES" "kie-server,rest-all,admin,kiemgmt,Administrators")
add_eap_user "admin" "${kieAdminUser}" "${kieAdminPwd}" "${kieAdminRoles}"
}

function configure_controller_security() {
local kieServerControllerUser=$(find_env "KIE_SERVER_CONTROLLER_USER" "controllerUser")
local kieServerControllerPwd=$(find_env "KIE_SERVER_CONTROLLER_PWD" "controller1!")
${JBOSS_HOME}/bin/add-user.sh -a --user "${kieServerControllerUser}" --password "${kieServerControllerPwd}" --role "kie-server,rest-all,guest"
local kieServerControllerRoles=$(find_env "KIE_SERVER_CONTROLLER_ROLES" "kie-server,rest-all,guest")
add_eap_user "controller" "${kieServerControllerUser}" "${kieServerControllerPwd}" "${kieServerControllerRoles}"
}

function configure_maven_security() {
# we will only create a default maven user if no single nor multi maven username(s) were specified
local default_mavenRepoUsername="mavenUser"
# multiple repos scenario
IFS=',' read -a multi_mavenRepoPrefixes <<< ${MAVEN_REPOS}
for multi_mavenRepoPrefix in ${multi_mavenRepoPrefixes[@]}; do
multi_mavenRepoPrefix=${multi_mavenRepoPrefix^^}
multi_mavenRepoPrefix=${multi_mavenRepoPrefix//-/_}
local multi_mavenRepoUsername=$(find_env "${multi_mavenRepoPrefix}_MAVEN_REPO_USERNAME")
if [ "x${multi_mavenRepoUsername}" != "x" ]; then
local multi_mavenRepoPassword=$(find_env "${multi_mavenRepoPrefix}_MAVEN_REPO_PASSWORD" "maven1!")
local multi_mavenRepoRoles=$(find_env "${multi_mavenRepoPrefix}_MAVEN_REPO_ROLES")
add_eap_user "maven" "${multi_mavenRepoUsername}" "${multi_mavenRepoPassword}" "${multi_mavenRepoRoles}"
default_mavenRepoUsername=""
fi
done
# single repo scenario
local single_mavenRepoUsername=$(find_env "MAVEN_REPO_USERNAME" "${default_mavenRepoUsername}")
if [ "x${single_mavenRepoUsername}" != "x" ]; then
local single_mavenRepoPassword=$(find_env "MAVEN_REPO_PASSWORD" "maven1!")
local single_mavenRepoRoles=$(find_env "MAVEN_REPO_ROLES")
add_eap_user "maven" "${single_mavenRepoUsername}" "${single_mavenRepoPassword}" "${single_mavenRepoRoles}"
fi
}

function add_eap_user() {
local eapType="${1}"
local eapUser="${2}"
local eapPwd="${3}"
local eapRoles="${4}"
if [ "x${eapRoles}" != "x" ]; then
${JBOSS_HOME}/bin/add-user.sh -a --user "${eapUser}" --password "${eapPwd}" --role "${eapRoles}"
else
${JBOSS_HOME}/bin/add-user.sh -a --user "${eapUser}" --password "${eapPwd}"
fi
if [ "$?" -ne "0" ]; then
log_error "Failed to create controller user \"${kieServerControllerUser}\""
log_error "Failed to create ${eapType} user \"${eapUser}\""
log_error "Exiting..."
exit
fi
Expand Down