After some back and forth with tech support and our own ingenuity, we got the code to change the user's DBPASS credential in the CMS. Here it is, if you're interested (note that "pennkey" is our University network user ID): //get session manager ISessionMgr sessionMgr = CrystalEnterprise.getSessionMgr(); //get the session IEnterpriseSession enterpriseSession = sessionMgr.logon(boAdminLogin, boAdminPassword, boCmsName, "secEnterprise"); IInfoStore iStore = (IInfoStore)enterpriseSession.getService("InfoStore"); String query = "Select * from CI_SystemObjects " + "Where SI_Kind = 'User' and SI_Name = '" + userName + "'"; IInfoObjects infoObjects = iStore.query(query); boolean hasResults = infoObjects != null; IInfoObject infoObject = null; //get results in a null safe way hasResults = hasResults ? infoObjects.size() > 0 : hasResults; infoObject = hasResults ? (IInfoObject)infoObjects.get(0) : null; hasResults = hasResults ? infoObject != null : hasResults; if (!hasResults) { log.log("There is no business objects user: " + userName, true); return; } IUser user = (IUser)infoObject; //db logon String dbLogon = user.getProfileString("DBUSER"); log.log("DBUSER: " + dbLogon, true); //if dbLogon is there, make sure same as pennkey if (FastExternalUtils.isEmpty(dbLogon)) { log.log("Did not set the db password (no db username) for: " + userName, true); return; } user.removeSecondaryCredential("DBPASS"); user.addSecondaryCredential("DBPASS", newPassword); //set username user.setProfileString("DBUSER", userName); //change the boPassword so we can login as that user user.setNewPassword(newPassword); iStore.commit(infoObjects); ==================================== Amy A. Miller, Senior Data Analyst University of Pennsylvania ISC Office of Data Administration 3401 Walnut, Suite 265C /6228 Philadelphia, PA 19104-6228 Phone: 215-898-2171 Fax:215-898-0386 Email: milleraa@isc.upenn.edu