Skip to content

Instantly share code, notes, and snippets.

View neilherbertuk's full-sized avatar

Neil Herbert neilherbertuk

View GitHub Profile
iam = {
aws = {
# Additional IAM users to add to the aws-auth configmap.
map_users = [
# {
# userarn = "arn:aws:iam::66666666666:user/user1"
# username = "user1"
# groups = ["system:masters"]
# }
]
@neilherbertuk
neilherbertuk / AWSSNSOTPModule.groovy
Last active May 10, 2022 14:58
OpenIAM AWS SNS OTP Provider
import java.text.SimpleDateFormat
import java.util.LinkedHashMap
import java.util.Map
import java.util.TimeZone
import java.util.concurrent.TimeUnit
import javax.crypto.Mac
import javax.crypto.spec.SecretKeySpec
import org.apache.commons.codec.binary.Hex
import org.apache.commons.codec.digest.DigestUtils
import org.apache.commons.lang3.StringUtils
@neilherbertuk
neilherbertuk / GetGlobalProperty.groovy
Last active July 13, 2022 14:37
OpenIAM - Use global properties (from property_file_values DB table) within Groovy Scripts
/**
* This snippet will allow you to get globally shared properties that you place within the
* `property_file_values` database table.
*/
import org.openiam.idm.srvc.property.service.PropertyValueCache
import org.springframework.context.ApplicationContext
ApplicationContext appContext = (ApplicationContext) context
PropertyValueCache propertyValueCache = appContext.getBean(PropertyValueCache.class)
@neilherbertuk
neilherbertuk / FindOrgbyName.groovy
Last active July 13, 2022 14:36
OpenIAM - Find an Organisation by Name within a Groovy Script
/**
* This snippet allows you to find an organisation entity by name
*/
import java.util.List
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.openiam.base.ws.MatchType
import org.openiam.base.ws.SearchParam
import org.openiam.common.beans.mq.OrganizationRabbitMQService
import org.openiam.idm.searchbeans.OrganizationSearchBean
@neilherbertuk
neilherbertuk / CustomLoginPageDisplayHandler.groovy
Last active December 8, 2022 15:50
Adding additional links to the OpenIAM Login Screen
package selfservice
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.openiam.ui.login.DefaultLoginPageDisplayHandler
import org.openiam.ui.model.Hyperlink
class CustomLoginPageDisplayHandler extends DefaultLoginPageDisplayHandler {
private static final Log log = LogFactory.getLog("CustomLoginPageDisplayHandler")
@neilherbertuk
neilherbertuk / findUserTest.groovy
Last active December 16, 2022 10:15
Find a user by First and Last name within OpenIAM Groovy Script
import java.util.List
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.openiam.base.ws.MatchType
import org.openiam.base.ws.SearchParam
import org.openiam.common.beans.mq.UserRabbitMQService
import org.openiam.idm.searchbeans.UserSearchBean
import org.openiam.idm.srvc.user.dto.User
import org.openiam.idm.srvc.user.dto.UserCollection
import org.openiam.idm.srvc.user.dto.UserStatusEnum
@neilherbertuk
neilherbertuk / findUsersTest.groovy
Last active December 16, 2022 10:16
Find multiple users by First and Last name within OpenIAM
import java.util.List
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.openiam.base.ws.MatchType
import org.openiam.base.ws.SearchParam
import org.openiam.common.beans.mq.UserRabbitMQService
import org.openiam.idm.searchbeans.UserSearchBean
import org.openiam.idm.srvc.user.dto.User
import org.openiam.idm.srvc.user.dto.UserCollection
import org.openiam.idm.srvc.user.dto.UserStatusEnum
@neilherbertuk
neilherbertuk / findAllUsersPaginationTest.groovy
Last active December 16, 2022 10:10
Finding large number of users with pagination witin OpenIAM with a groovy script
import java.util.List
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.openiam.base.request.BaseSearchServiceRequest
import org.openiam.base.request.BaseServiceRequest
import org.openiam.base.response.data.IntResponse
import org.openiam.base.response.data.BaseDataResponse
import org.openiam.base.ws.MatchType
import org.openiam.base.ws.SearchParam
import org.openiam.common.beans.mq.RabbitMQSender
@neilherbertuk
neilherbertuk / findUsersByLastDate.groovy
Created December 16, 2022 13:46
Find users by their last (end) date within OpenIAM
import java.util.List
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.openiam.idm.searchbeans.UserSearchBean
import org.openiam.idm.srvc.user.dto.User
import org.openiam.srvc.user.UserDataWebService
import org.springframework.context.ApplicationContext
// Dependencies
Log log = LogFactory.getLog("findUserTest") // Logging
@neilherbertuk
neilherbertuk / findUserByStartDate.groovy
Created December 16, 2022 13:52
Find users by their start date within OpenIAM
import java.util.List
import org.apache.commons.logging.Log
import org.apache.commons.logging.LogFactory
import org.openiam.idm.searchbeans.UserSearchBean
import org.openiam.idm.srvc.user.dto.User
import org.openiam.srvc.user.UserDataWebService
import org.springframework.context.ApplicationContext
// Dependencies
Log log = LogFactory.getLog("findUserTest") // Logging