public SecurityPolicyType clone() { SecurityPolicyType object = new SecurityPolicyType(); PrismObject value = asPrismObject().clone(); object.setupContainer(value); return object; }
public com.evolveum.prism.xml.ns._public.types_3.PolyStringType beginName() { com.evolveum.prism.xml.ns._public.types_3.PolyStringType value = new com.evolveum.prism.xml.ns._public.types_3.PolyStringType(); name(value); return value; }
public SecurityPolicyType credentials(CredentialsPolicyType value) { setCredentials(value); return this; }
public SecurityPolicyType(PrismContext prismContext) { setupContainer(new PrismObjectImpl(_getContainerName(), getClass(), prismContext)); }
@Override public List<SecurityQuestionDefinitionType> run() { Task task = getTaskManager().createTaskInstance("Search user by name"); OperationResult result = task.getResult(); SecurityPolicyType securityPolicyType = null; try { SecurityContextHolder.getContext().setAuthentication(new AnonymousAuthenticationToken("rest_sec_q_auth", "REST", AuthorityUtils.createAuthorityList("ROLE_ANONYMOUS"))); securityPolicyType = modelInteractionService.getSecurityPolicy(user, task, result); } catch (ObjectNotFoundException | SchemaException | CommunicationException | ConfigurationException | SecurityViolationException | ExpressionEvaluationException e) { return null; } finally { SecurityContextHolder.getContext().setAuthentication(null); } if (securityPolicyType.getCredentials() != null && securityPolicyType.getCredentials().getSecurityQuestions() != null){ return securityPolicyType.getCredentials().getSecurityQuestions().getQuestion(); } return null; } });
/** * Create an instance of {@link SecurityPolicyType } * */ public SecurityPolicyType createSecurityPolicyType() { return new SecurityPolicyType(); }
private SecurityPolicyType postProcessPasswordPolicy(ValuePolicyType passwordPolicyType) { SecurityPolicyType securityPolicyType = new SecurityPolicyType(); CredentialsPolicyType creds = new CredentialsPolicyType(); PasswordCredentialsPolicyType passwd = new PasswordCredentialsPolicyType(); ObjectReferenceType passwordPolicyRef = new ObjectReferenceType(); passwordPolicyRef.asReferenceValue().setObject(passwordPolicyType.asPrismObject()); passwd.setValuePolicyRef(passwordPolicyRef); creds.setPassword(passwd); securityPolicyType.setCredentials(creds); setDeprecatedPasswordPolicyProperties(passwordPolicyType, passwd); return securityPolicyType; }
if (globalSecurityPolicy == null) { globalSecurityPolicy = new SecurityPolicyType(); globalSecurityPolicy==null?null:globalSecurityPolicy.asPrismObject().debugDump(2), focusSecurityPolicy==null?null:focusSecurityPolicy.asPrismObject().debugDump(2)); } else { LOGGER.debug("Security policy: global: {}, focus: {}", globalSecurityPolicy, focusSecurityPolicy);
.name("Ministry security policy") .beginCredentials() .beginPassword() .valuePolicyRef(PASSWORD_POLICY_GLOBAL_OID, ValuePolicyType.COMPLEX_TYPE)
private <F extends FocusType> void traceSecurityPolicy(SecurityPolicyType securityPolicyType, PrismObject<F> user) { if (LOGGER.isTraceEnabled()) { if (user != null) { if (securityPolicyType == null) { LOGGER.trace("Located security policy for {}: null", user); } else { LOGGER.trace("Located security policy for {}:\n{}", user, securityPolicyType.asPrismObject().debugDump(1)); } } else { if (securityPolicyType == null) { LOGGER.trace("Located global security policy null"); } else { LOGGER.trace("Located global security policy :\n{}", securityPolicyType.asPrismObject().debugDump(1)); } } } }
public ObjectReferenceType beginArchetypeRef() { ObjectReferenceType value = new ObjectReferenceType(); archetypeRef(value); return value; }
public static NonceCredentialsPolicyType getCredentialPolicy(String policyName, SecurityPolicyType securityPolicy) throws SchemaException { CredentialsPolicyType credentialsPolicy = securityPolicy.getCredentials(); if (credentialsPolicy == null) { return null;
/** * Create an instance of {@link SecurityPolicyType } * */ public SecurityPolicyType createSecurityPolicyType() { return new SecurityPolicyType(); }
private <C extends Containerable> C resolvePolicyTypeFromSecurityPolicy(Class<C> type, QName path, PrismObject<UserType> user, Task task, OperationResult parentResult) throws ObjectNotFoundException, SchemaException, CommunicationException, ConfigurationException, SecurityViolationException, ExpressionEvaluationException { SecurityPolicyType securityPolicyType = getSecurityPolicy(user, task, parentResult); if (securityPolicyType == null) { return null; } PrismContainer<C> container = securityPolicyType.asPrismObject().findContainer(ItemName.fromQName(path)); if (container == null) { return null; } PrismContainerValue<C> containerValue = container.getValue(); parentResult.recordSuccess(); return containerValue.asContainerable(); }
public SecurityPolicyType archetypeRef(String oid, QName type) { PrismReferenceValue refVal = new PrismReferenceValueImpl(oid, type); ObjectReferenceType ort = new ObjectReferenceType(); ort.setupReferenceValue(refVal); return archetypeRef(ort); }
public static List<NonceCredentialsPolicyType> getEffectiveNonceCredentialsPolicies(SecurityPolicyType securityPolicy) { if (securityPolicy == null) { return null; } CredentialsPolicyType creds = securityPolicy.getCredentials(); if (creds == null) { return null; } if (creds.getDefault() == null) { return creds.getNonce(); } List<NonceCredentialsPolicyType> existingNoncePolicies = creds.getNonce(); List<NonceCredentialsPolicyType> newNoncePolicies = new ArrayList<>(existingNoncePolicies.size()); for(NonceCredentialsPolicyType noncePolicy: existingNoncePolicies) { NonceCredentialsPolicyType newNoncePolicy = noncePolicy.clone(); copyDefaults(creds.getDefault(), newNoncePolicy); newNoncePolicies.add(newNoncePolicy); } return newNoncePolicies; }
/** * Create an instance of {@link SecurityPolicyType } * */ public SecurityPolicyType createSecurityPolicyType() { return new SecurityPolicyType(); }
public SecurityPolicyType name(String value) { return name(com.evolveum.prism.xml.ns._public.types_3.PolyStringType.fromOrig(value)); }
public SecurityPolicyType archetypeRef(String oid, QName type, QName relation) { PrismReferenceValue refVal = new PrismReferenceValueImpl(oid, type); refVal.setRelation(relation); ObjectReferenceType ort = new ObjectReferenceType(); ort.setupReferenceValue(refVal); return archetypeRef(ort); }
/** * Called from ChangeExecutor. Will modify the execution deltas to hash or remove credentials if needed. */ public <O extends ObjectType> ObjectDelta<O> transformFocusExecutionDelta(LensContext<O> context, ObjectDelta<O> focusDelta) throws SchemaException, EncryptionException { LensFocusContext<O> focusContext = context.getFocusContext(); SecurityPolicyType securityPolicy = focusContext.getSecurityPolicy(); if (securityPolicy == null) { return focusDelta; } CredentialsPolicyType credsType = securityPolicy.getCredentials(); if (credsType == null) { return focusDelta; } ObjectDelta<O> transformedDelta = focusDelta.clone(); transformFocusExecutionDeltaForPasswords(context, credsType, credsType.getPassword(), SchemaConstants.PATH_PASSWORD_VALUE, transformedDelta, "password"); // TODO: nonce and others return transformedDelta; }