Use JSONB column to store email addresses
parent
ab7cea8227
commit
98d01b978f
|
|
@ -18,11 +18,6 @@
|
||||||
*/
|
*/
|
||||||
package org.libreccm.core;
|
package org.libreccm.core;
|
||||||
|
|
||||||
import org.hibernate.validator.constraints.Email;
|
|
||||||
import org.hibernate.validator.constraints.NotBlank;
|
|
||||||
|
|
||||||
import javax.persistence.Column;
|
|
||||||
import javax.persistence.Embeddable;
|
|
||||||
import javax.xml.bind.annotation.XmlElement;
|
import javax.xml.bind.annotation.XmlElement;
|
||||||
import javax.xml.bind.annotation.XmlRootElement;
|
import javax.xml.bind.annotation.XmlRootElement;
|
||||||
|
|
||||||
|
|
@ -32,38 +27,38 @@ import java.util.Objects;
|
||||||
import static org.libreccm.core.CoreConstants.CORE_XML_NS;
|
import static org.libreccm.core.CoreConstants.CORE_XML_NS;
|
||||||
|
|
||||||
import javax.json.Json;
|
import javax.json.Json;
|
||||||
|
import javax.json.JsonObject;
|
||||||
import javax.json.JsonObjectBuilder;
|
import javax.json.JsonObjectBuilder;
|
||||||
|
import javax.validation.constraints.Email;
|
||||||
|
import javax.validation.constraints.NotBlank;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* An embeddable entity for storing email addresses.
|
* An embeddable entity for storing email addresses.
|
||||||
*
|
*
|
||||||
* In contrast to its predecessor {@code com.arsdigita.kernel.EmailAddress}
|
* In contrast to its predecessor {@code com.arsdigita.kernel.EmailAddress} this
|
||||||
* this class does not provide verification methods. Verification is done using
|
* class does not provide verification methods. Verification is done using the
|
||||||
* the <em>Bean Validiation API</em> (Hibernate Validator is used as
|
* <em>Bean Validiation API</em> (Hibernate Validator is used as
|
||||||
* implementation).
|
* implementation).
|
||||||
*
|
*
|
||||||
* Because this class is an embeddable JPA entity it can be used in other
|
* This class is inteded to maps a JSONB column using the
|
||||||
* entities to store eMail addresses.
|
* {@link EmailAddressType}, or if a list of email addresses should be stored,
|
||||||
|
* the {@link EmailAddressListType}.
|
||||||
*
|
*
|
||||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||||
*/
|
*/
|
||||||
@Embeddable
|
|
||||||
@XmlRootElement(name = "email-address", namespace = CORE_XML_NS)
|
@XmlRootElement(name = "email-address", namespace = CORE_XML_NS)
|
||||||
public class EmailAddress implements Serializable {
|
public class EmailAddress implements Serializable {
|
||||||
|
|
||||||
private static final long serialVersionUID = -4076089589412432766L;
|
private static final long serialVersionUID = -4076089589412432766L;
|
||||||
|
|
||||||
@Column(name = "EMAIL_ADDRESS", length = 512, nullable = false)
|
|
||||||
@XmlElement(name = "address", namespace = CORE_XML_NS, required = true)
|
@XmlElement(name = "address", namespace = CORE_XML_NS, required = true)
|
||||||
@NotBlank
|
@NotBlank
|
||||||
@Email
|
@Email
|
||||||
private String address;
|
private String address;
|
||||||
|
|
||||||
@Column(name = "BOUNCING")
|
|
||||||
@XmlElement(name = "bouncing", namespace = CORE_XML_NS)
|
@XmlElement(name = "bouncing", namespace = CORE_XML_NS)
|
||||||
private boolean bouncing;
|
private boolean bouncing;
|
||||||
|
|
||||||
@Column(name = "VERIFIED")
|
|
||||||
@XmlElement(name = "verified", namespace = CORE_XML_NS)
|
@XmlElement(name = "verified", namespace = CORE_XML_NS)
|
||||||
private boolean verified;
|
private boolean verified;
|
||||||
|
|
||||||
|
|
@ -112,7 +107,7 @@ public class EmailAddress implements Serializable {
|
||||||
if (!other.canEqual(this)) {
|
if (!other.canEqual(this)) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!Objects.equals(address, other.getAddress())) {
|
if (!Objects.equals(address, other.getAddress())) {
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
@ -121,11 +116,19 @@ public class EmailAddress implements Serializable {
|
||||||
}
|
}
|
||||||
return verified == other.isVerified();
|
return verified == other.isVerified();
|
||||||
}
|
}
|
||||||
|
|
||||||
public boolean canEqual(final Object obj) {
|
public boolean canEqual(final Object obj) {
|
||||||
return obj instanceof EmailAddress;
|
return obj instanceof EmailAddress;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static EmailAddress fromJson(final JsonObject jsonObject) {
|
||||||
|
final EmailAddress address = new EmailAddress();
|
||||||
|
address.setAddress(jsonObject.getString("address"));
|
||||||
|
address.setBouncing(jsonObject.getBoolean("bouncing"));
|
||||||
|
address.setVerified(jsonObject.getBoolean("verified"));
|
||||||
|
return address;
|
||||||
|
}
|
||||||
|
|
||||||
public JsonObjectBuilder buildJson() {
|
public JsonObjectBuilder buildJson() {
|
||||||
return Json
|
return Json
|
||||||
.createObjectBuilder()
|
.createObjectBuilder()
|
||||||
|
|
@ -133,7 +136,11 @@ public class EmailAddress implements Serializable {
|
||||||
.add("bouncing", bouncing)
|
.add("bouncing", bouncing)
|
||||||
.add("verified", verified);
|
.add("verified", verified);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public JsonObject toJson() {
|
||||||
|
return buildJson().build();
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String toString() {
|
public String toString() {
|
||||||
return String.format("%s{ "
|
return String.format("%s{ "
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,62 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2020 LibreCCM Foundation.
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2.1 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||||
|
* MA 02110-1301 USA
|
||||||
|
*/
|
||||||
|
package org.libreccm.core;
|
||||||
|
|
||||||
|
import org.libreccm.hibernate.AbstractCcmJsonUserType;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
import javax.json.Json;
|
||||||
|
import javax.json.JsonArrayBuilder;
|
||||||
|
import javax.json.JsonReader;
|
||||||
|
import javax.json.JsonValue;
|
||||||
|
import javax.json.JsonWriter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
*
|
||||||
|
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||||
|
*/
|
||||||
|
public class EmailAddressListType extends AbstractCcmJsonUserType {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Object nullSafeGet(final JsonReader jsonReader) {
|
||||||
|
return jsonReader
|
||||||
|
.readArray()
|
||||||
|
.stream()
|
||||||
|
.map(JsonValue::asJsonObject)
|
||||||
|
.map(EmailAddress::fromJson)
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void nullSafeSet(
|
||||||
|
final Object value, final JsonWriter jsonWriter
|
||||||
|
) {
|
||||||
|
@SuppressWarnings("unchecked")
|
||||||
|
final List<EmailAddress> addresses = (List<EmailAddress>) value;
|
||||||
|
final JsonArrayBuilder jsonArrayBuilder = Json.createArrayBuilder();
|
||||||
|
addresses
|
||||||
|
.stream()
|
||||||
|
.map(EmailAddress::buildJson)
|
||||||
|
.forEach(jsonArrayBuilder::add);
|
||||||
|
jsonWriter.writeArray(jsonArrayBuilder.build());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,45 @@
|
||||||
|
/*
|
||||||
|
* Copyright (C) 2020 LibreCCM Foundation.
|
||||||
|
*
|
||||||
|
* This library is free software; you can redistribute it and/or
|
||||||
|
* modify it under the terms of the GNU Lesser General Public
|
||||||
|
* License as published by the Free Software Foundation; either
|
||||||
|
* version 2.1 of the License, or (at your option) any later version.
|
||||||
|
*
|
||||||
|
* This library is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||||
|
* Lesser General Public License for more details.
|
||||||
|
*
|
||||||
|
* You should have received a copy of the GNU Lesser General Public
|
||||||
|
* License along with this library; if not, write to the Free Software
|
||||||
|
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
|
||||||
|
* MA 02110-1301 USA
|
||||||
|
*/
|
||||||
|
package org.libreccm.core;
|
||||||
|
|
||||||
|
import org.libreccm.hibernate.AbstractCcmJsonUserType;
|
||||||
|
|
||||||
|
import javax.json.JsonReader;
|
||||||
|
import javax.json.JsonWriter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Hibernate User type mapping instances of {@link EmailAddress} to a JSON.
|
||||||
|
*
|
||||||
|
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||||
|
*/
|
||||||
|
public class EmailAddressType extends AbstractCcmJsonUserType {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected Object nullSafeGet(final JsonReader jsonReader) {
|
||||||
|
return EmailAddress.fromJson(jsonReader.readObject());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void nullSafeSet(
|
||||||
|
final Object value, final JsonWriter jsonWriter
|
||||||
|
) {
|
||||||
|
jsonWriter.writeObject(((EmailAddress) value).toJson());
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
@ -18,33 +18,14 @@
|
||||||
*/
|
*/
|
||||||
package org.libreccm.l10n;
|
package org.libreccm.l10n;
|
||||||
|
|
||||||
import org.hibernate.HibernateException;
|
|
||||||
import org.hibernate.engine.spi.SharedSessionContractImplementor;
|
|
||||||
import org.hibernate.usertype.UserType;
|
|
||||||
import org.libreccm.hibernate.AbstractCcmJsonUserType;
|
import org.libreccm.hibernate.AbstractCcmJsonUserType;
|
||||||
|
|
||||||
import java.io.ByteArrayInputStream;
|
|
||||||
import java.io.ByteArrayOutputStream;
|
|
||||||
import java.io.IOException;
|
|
||||||
import java.io.ObjectInputStream;
|
|
||||||
import java.io.ObjectOutputStream;
|
|
||||||
import java.io.Serializable;
|
|
||||||
import java.io.StringReader;
|
|
||||||
import java.io.StringWriter;
|
|
||||||
import java.sql.PreparedStatement;
|
|
||||||
import java.sql.ResultSet;
|
|
||||||
import java.sql.SQLException;
|
|
||||||
import java.sql.Types;
|
|
||||||
import java.util.Objects;
|
|
||||||
|
|
||||||
import javax.json.Json;
|
|
||||||
import javax.json.JsonObject;
|
|
||||||
import javax.json.JsonReader;
|
import javax.json.JsonReader;
|
||||||
import javax.json.JsonWriter;
|
import javax.json.JsonWriter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Hibernate User type mapping instances of {@link LocalizedString} to a JSON.
|
* Hibernate User type mapping instances of {@link LocalizedString} to a JSON.
|
||||||
*
|
*
|
||||||
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
* @author <a href="mailto:jens.pelzetter@googlemail.com">Jens Pelzetter</a>
|
||||||
*/
|
*/
|
||||||
public class LocalizedStringType extends AbstractCcmJsonUserType {
|
public class LocalizedStringType extends AbstractCcmJsonUserType {
|
||||||
|
|
@ -60,114 +41,5 @@ public class LocalizedStringType extends AbstractCcmJsonUserType {
|
||||||
) {
|
) {
|
||||||
jsonWriter.writeObject(((LocalizedString) value).toJson());
|
jsonWriter.writeObject(((LocalizedString) value).toJson());
|
||||||
}
|
}
|
||||||
//implements UserType {
|
|
||||||
|
|
||||||
// @Override
|
|
||||||
// public int[] sqlTypes() {
|
|
||||||
// return new int[]{Types.JAVA_OBJECT};
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public Class<LocalizedString> returnedClass() {
|
|
||||||
// return LocalizedString.class;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public boolean equals(final Object obj1, final Object obj2)
|
|
||||||
// throws HibernateException {
|
|
||||||
// return Objects.equals(obj1, obj2);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public int hashCode(final Object obj) throws HibernateException {
|
|
||||||
// return Objects.hashCode(obj);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public Object nullSafeGet(
|
|
||||||
// final ResultSet resultSet,
|
|
||||||
// final String[] names,
|
|
||||||
// final SharedSessionContractImplementor session,
|
|
||||||
// final Object owner
|
|
||||||
// ) throws HibernateException, SQLException {
|
|
||||||
// final String cellContent = resultSet.getString(names[0]);
|
|
||||||
// if (cellContent == null) {
|
|
||||||
// return null;
|
|
||||||
// } else {
|
|
||||||
// try (StringReader strReader = new StringReader(cellContent);
|
|
||||||
// JsonReader jsonReader = Json.createReader(strReader)) {
|
|
||||||
// return LocalizedString.fromJson(jsonReader.readObject());
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public void nullSafeSet(
|
|
||||||
// final PreparedStatement statement,
|
|
||||||
// final Object value,
|
|
||||||
// final int index,
|
|
||||||
// final SharedSessionContractImplementor session
|
|
||||||
// ) throws HibernateException, SQLException {
|
|
||||||
// if (value == null) {
|
|
||||||
// statement.setObject(index, null, Types.OTHER);
|
|
||||||
// } else {
|
|
||||||
// final JsonObject jsonObject = ((LocalizedString) value).toJson();
|
|
||||||
// try (StringWriter strWriter = new StringWriter();
|
|
||||||
// JsonWriter jsonWriter = Json.createWriter(strWriter)) {
|
|
||||||
// jsonWriter.writeObject(jsonObject);
|
|
||||||
// statement.setObject(index, strWriter.toString(), Types.OTHER);
|
|
||||||
// } catch (IOException ex) {
|
|
||||||
// throw new HibernateException(ex);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public Object deepCopy(final Object value) throws HibernateException {
|
|
||||||
// final byte[] serialized;
|
|
||||||
// try (ByteArrayOutputStream bos = new ByteArrayOutputStream();
|
|
||||||
// ObjectOutputStream oos = new ObjectOutputStream(bos)) {
|
|
||||||
// oos.writeObject(value);
|
|
||||||
// oos.flush();
|
|
||||||
// serialized = bos.toByteArray();
|
|
||||||
// } catch (IOException ex) {
|
|
||||||
// throw new HibernateException(ex);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// final Object obj;
|
|
||||||
// try (ByteArrayInputStream bais = new ByteArrayInputStream(serialized);
|
|
||||||
// ObjectInputStream ois = new ObjectInputStream(bais)) {
|
|
||||||
// obj = ois.readObject();
|
|
||||||
// } catch (IOException | ClassNotFoundException ex) {
|
|
||||||
// throw new HibernateException(ex);
|
|
||||||
// }
|
|
||||||
// return obj;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public boolean isMutable() {
|
|
||||||
// return true;
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public Serializable disassemble(final Object value)
|
|
||||||
// throws HibernateException {
|
|
||||||
// return (Serializable) deepCopy(value);
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public Object assemble(final Serializable cached, final Object owner) throws
|
|
||||||
// HibernateException {
|
|
||||||
// throw new UnsupportedOperationException("Not supported yet.");
|
|
||||||
// }
|
|
||||||
//
|
|
||||||
// @Override
|
|
||||||
// public Object replace(
|
|
||||||
// final Object original,
|
|
||||||
// final Object target,
|
|
||||||
// final Object owner
|
|
||||||
// ) throws HibernateException {
|
|
||||||
// return deepCopy(original);
|
|
||||||
// }
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -30,6 +30,7 @@ import java.io.Serializable;
|
||||||
import static org.libreccm.core.CoreConstants.CORE_XML_NS;
|
import static org.libreccm.core.CoreConstants.CORE_XML_NS;
|
||||||
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
import static org.libreccm.core.CoreConstants.DB_SCHEMA;
|
||||||
|
|
||||||
|
import org.hibernate.annotations.Type;
|
||||||
import org.libreccm.core.api.JsonArrayCollector;
|
import org.libreccm.core.api.JsonArrayCollector;
|
||||||
import org.libreccm.imexport.Exportable;
|
import org.libreccm.imexport.Exportable;
|
||||||
|
|
||||||
|
|
@ -43,15 +44,9 @@ import java.util.Set;
|
||||||
import javax.json.Json;
|
import javax.json.Json;
|
||||||
import javax.json.JsonArrayBuilder;
|
import javax.json.JsonArrayBuilder;
|
||||||
import javax.json.JsonObjectBuilder;
|
import javax.json.JsonObjectBuilder;
|
||||||
import javax.persistence.AssociationOverride;
|
|
||||||
import javax.persistence.CollectionTable;
|
|
||||||
import javax.persistence.Column;
|
import javax.persistence.Column;
|
||||||
import javax.persistence.ElementCollection;
|
|
||||||
import javax.persistence.Embedded;
|
|
||||||
import javax.persistence.Entity;
|
import javax.persistence.Entity;
|
||||||
import javax.persistence.FetchType;
|
import javax.persistence.FetchType;
|
||||||
import javax.persistence.JoinColumn;
|
|
||||||
import javax.persistence.JoinTable;
|
|
||||||
import javax.persistence.NamedAttributeNode;
|
import javax.persistence.NamedAttributeNode;
|
||||||
import javax.persistence.NamedEntityGraph;
|
import javax.persistence.NamedEntityGraph;
|
||||||
import javax.persistence.NamedEntityGraphs;
|
import javax.persistence.NamedEntityGraphs;
|
||||||
|
|
@ -86,16 +81,16 @@ import javax.xml.bind.annotation.XmlTransient;
|
||||||
+ " u.primaryEmailAddress.address"),
|
+ " u.primaryEmailAddress.address"),
|
||||||
@NamedQuery(name = "User.countByName",
|
@NamedQuery(name = "User.countByName",
|
||||||
query = "SELECT COUNT(u) FROM User u WHERE u.name = :name"),
|
query = "SELECT COUNT(u) FROM User u WHERE u.name = :name"),
|
||||||
@NamedQuery(name = "User.findByEmailAddress",
|
// @NamedQuery(name = "User.findByEmailAddress",
|
||||||
query = "SELECT u FROM User u WHERE "
|
// query = "SELECT u FROM User u WHERE "
|
||||||
+ "u.primaryEmailAddress.address = :emailAddress "
|
// + "u.primaryEmailAddress.address = :emailAddress "
|
||||||
+ "ORDER BY u.name, "
|
// + "ORDER BY u.name, "
|
||||||
+ " u.familyName, "
|
// + " u.familyName, "
|
||||||
+ " u.givenName, "
|
// + " u.givenName, "
|
||||||
+ " u.primaryEmailAddress.address"),
|
// + " u.primaryEmailAddress.address"),
|
||||||
@NamedQuery(name = "User.countByPrimaryEmailAddress",
|
// @NamedQuery(name = "User.countByPrimaryEmailAddress",
|
||||||
query = "SELECT COUNT(u) FROM User u "
|
// query = "SELECT COUNT(u) FROM User u "
|
||||||
+ "WHERE u.primaryEmailAddress.address = :emailAddress"),
|
// + "WHERE u.primaryEmailAddress.address = :emailAddress"),
|
||||||
@NamedQuery(
|
@NamedQuery(
|
||||||
name = "User.filterByNameAndEmail",
|
name = "User.filterByNameAndEmail",
|
||||||
query = "SELECT u FROM User u WHERE "
|
query = "SELECT u FROM User u WHERE "
|
||||||
|
|
@ -107,12 +102,12 @@ import javax.xml.bind.annotation.XmlTransient;
|
||||||
+ "u.familyName, "
|
+ "u.familyName, "
|
||||||
+ "u.givenName, "
|
+ "u.givenName, "
|
||||||
+ "u.primaryEmailAddress.address"),
|
+ "u.primaryEmailAddress.address"),
|
||||||
@NamedQuery(
|
// @NamedQuery(
|
||||||
name = "User.findAllOrderedByUsername",
|
// name = "User.findAllOrderedByUsername",
|
||||||
query = "SELECT u FROM User u ORDER BY u.name, "
|
// query = "SELECT u FROM User u ORDER BY u.name, "
|
||||||
+ " u.familyName, "
|
// + " u.familyName, "
|
||||||
+ " u.givenName, "
|
// + " u.givenName, "
|
||||||
+ " u.primaryEmailAddress.address"),
|
// + " u.primaryEmailAddress.address"),
|
||||||
@NamedQuery(name = "User.findByGroup",
|
@NamedQuery(name = "User.findByGroup",
|
||||||
query = "SELECT u FROM User u "
|
query = "SELECT u FROM User u "
|
||||||
+ "JOIN u.groupMemberships m "
|
+ "JOIN u.groupMemberships m "
|
||||||
|
|
@ -170,14 +165,8 @@ public class User extends Party implements Serializable, Exportable {
|
||||||
/**
|
/**
|
||||||
* The primary email address of the user.
|
* The primary email address of the user.
|
||||||
*/
|
*/
|
||||||
@Embedded
|
@Column(name = "PRIMARY_EMAIL_ADDRESS")
|
||||||
@AssociationOverride(
|
@Type(type = "org.libreccm.core.EmailAddressType")
|
||||||
name = "USER_PRIMARY_EMAIL_ADDRESSES",
|
|
||||||
joinTable = @JoinTable(name = "USER_PRIMARY_EMAIL_ADDRESSES",
|
|
||||||
schema = DB_SCHEMA,
|
|
||||||
joinColumns = {
|
|
||||||
@JoinColumn(name = "USER_ID")
|
|
||||||
}))
|
|
||||||
@NotNull
|
@NotNull
|
||||||
@XmlElement(name = "primary-email-address", namespace = CORE_XML_NS)
|
@XmlElement(name = "primary-email-address", namespace = CORE_XML_NS)
|
||||||
private EmailAddress primaryEmailAddress;
|
private EmailAddress primaryEmailAddress;
|
||||||
|
|
@ -185,11 +174,8 @@ public class User extends Party implements Serializable, Exportable {
|
||||||
/**
|
/**
|
||||||
* Additional email addresses of the user.
|
* Additional email addresses of the user.
|
||||||
*/
|
*/
|
||||||
@ElementCollection(fetch = FetchType.EAGER)
|
@Column(name = "EMAIL_ADDRESSES")
|
||||||
@CollectionTable(name = "USER_EMAIL_ADDRESSES",
|
@Type(type = "org.libreccm.core.EmailAddressListType")
|
||||||
schema = DB_SCHEMA,
|
|
||||||
joinColumns = {
|
|
||||||
@JoinColumn(name = "USER_ID")})
|
|
||||||
@XmlElementWrapper(name = "email-addresses", namespace = CORE_XML_NS)
|
@XmlElementWrapper(name = "email-addresses", namespace = CORE_XML_NS)
|
||||||
@XmlElement(name = "email-address", namespace = CORE_XML_NS)
|
@XmlElement(name = "email-address", namespace = CORE_XML_NS)
|
||||||
private List<EmailAddress> emailAddresses;
|
private List<EmailAddress> emailAddresses;
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,12 @@
|
||||||
|
ALTER TABLE ccm_core.users ADD COLUMN primary_email_address JSONB NOT NULL;
|
||||||
|
ALTER TABLE ccm_core.users ADD COLUMN email_addresses JSONB;
|
||||||
|
UPDATE ccm_core.users
|
||||||
|
SET primary_email_address = JSONB_BUILD_OBJECT(
|
||||||
|
'address', email_address,
|
||||||
|
'bouncing', bouncing,
|
||||||
|
'verified', verified
|
||||||
|
);
|
||||||
|
DROP TABLE ccm_core.user_email_addresses;
|
||||||
|
ALTER TABLE ccm_core.users DROP COLUMN email_address;
|
||||||
|
ALTER TABLE ccm_core.users DROP COLUMN bouncing;
|
||||||
|
ALTER TABLE ccm_core.users DROP COLUMN verified;
|
||||||
|
|
@ -1,3 +1,4 @@
|
||||||
|
|
||||||
create table CCM_CORE.APPLICATIONS (
|
create table CCM_CORE.APPLICATIONS (
|
||||||
APPLICATION_TYPE varchar(1024) not null,
|
APPLICATION_TYPE varchar(1024) not null,
|
||||||
PRIMARY_URL varchar(1024) not null,
|
PRIMARY_URL varchar(1024) not null,
|
||||||
|
|
@ -446,12 +447,12 @@
|
||||||
SETTING_ID int8 not null,
|
SETTING_ID int8 not null,
|
||||||
CONFIGURATION_CLASS varchar(512) not null,
|
CONFIGURATION_CLASS varchar(512) not null,
|
||||||
NAME varchar(512) not null,
|
NAME varchar(512) not null,
|
||||||
SETTING_VALUE_LONG int8,
|
SETTING_VALUE_BOOLEAN boolean,
|
||||||
SETTING_VALUE_LOCALIZED_STRING jsonb,
|
|
||||||
SETTING_VALUE_DOUBLE float8,
|
SETTING_VALUE_DOUBLE float8,
|
||||||
|
SETTING_VALUE_LONG int8,
|
||||||
SETTING_VALUE_STRING varchar(1024),
|
SETTING_VALUE_STRING varchar(1024),
|
||||||
SETTING_VALUE_BIG_DECIMAL numeric(19, 2),
|
SETTING_VALUE_BIG_DECIMAL numeric(19, 2),
|
||||||
SETTING_VALUE_BOOLEAN boolean,
|
SETTING_VALUE_LOCALIZED_STRING jsonb,
|
||||||
primary key (SETTING_ID)
|
primary key (SETTING_ID)
|
||||||
);
|
);
|
||||||
|
|
||||||
|
|
@ -558,22 +559,14 @@
|
||||||
primary key (OBJECT_ID)
|
primary key (OBJECT_ID)
|
||||||
);
|
);
|
||||||
|
|
||||||
create table CCM_CORE.USER_EMAIL_ADDRESSES (
|
|
||||||
USER_ID int8 not null,
|
|
||||||
EMAIL_ADDRESS varchar(512) not null,
|
|
||||||
BOUNCING boolean,
|
|
||||||
VERIFIED boolean
|
|
||||||
);
|
|
||||||
|
|
||||||
create table CCM_CORE.USERS (
|
create table CCM_CORE.USERS (
|
||||||
BANNED boolean,
|
BANNED boolean,
|
||||||
|
EMAIL_ADDRESSES jsonb,
|
||||||
FAMILY_NAME varchar(512),
|
FAMILY_NAME varchar(512),
|
||||||
GIVEN_NAME varchar(512),
|
GIVEN_NAME varchar(512),
|
||||||
PASSWORD varchar(2048),
|
PASSWORD varchar(2048),
|
||||||
PASSWORD_RESET_REQUIRED boolean,
|
PASSWORD_RESET_REQUIRED boolean,
|
||||||
EMAIL_ADDRESS varchar(512) not null,
|
PRIMARY_EMAIL_ADDRESS jsonb,
|
||||||
BOUNCING boolean,
|
|
||||||
VERIFIED boolean,
|
|
||||||
PARTY_ID int8 not null,
|
PARTY_ID int8 not null,
|
||||||
primary key (PARTY_ID)
|
primary key (PARTY_ID)
|
||||||
);
|
);
|
||||||
|
|
@ -1110,11 +1103,6 @@ create sequence hibernate_sequence start 1 increment 1;
|
||||||
foreign key (OBJECT_ID)
|
foreign key (OBJECT_ID)
|
||||||
references CCM_CORE.CCM_OBJECTS;
|
references CCM_CORE.CCM_OBJECTS;
|
||||||
|
|
||||||
alter table CCM_CORE.USER_EMAIL_ADDRESSES
|
|
||||||
add constraint FKr900l79erul95seyyccf04ufc
|
|
||||||
foreign key (USER_ID)
|
|
||||||
references CCM_CORE.USERS;
|
|
||||||
|
|
||||||
alter table CCM_CORE.USERS
|
alter table CCM_CORE.USERS
|
||||||
add constraint FKosh928q71aonu6l1kurb417r
|
add constraint FKosh928q71aonu6l1kurb417r
|
||||||
foreign key (PARTY_ID)
|
foreign key (PARTY_ID)
|
||||||
|
|
|
||||||
|
|
@ -26,8 +26,6 @@ DELETE FROM ccm_core.one_time_auth_tokens;
|
||||||
|
|
||||||
DELETE FROM ccm_core.users;
|
DELETE FROM ccm_core.users;
|
||||||
|
|
||||||
DELETE FROM ccm_core.user_email_addresses;
|
|
||||||
|
|
||||||
DELETE FROM ccm_core.parties;
|
DELETE FROM ccm_core.parties;
|
||||||
|
|
||||||
DELETE FROM ccm_core.ccm_roles;
|
DELETE FROM ccm_core.ccm_roles;
|
||||||
|
|
|
||||||
|
|
@ -26,36 +26,30 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{ \"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.groups:
|
ccm_core.groups:
|
||||||
# admins
|
# admins
|
||||||
- party_id: 40
|
- party_id: 40
|
||||||
|
|
|
||||||
|
|
@ -26,36 +26,30 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{ \"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.groups:
|
ccm_core.groups:
|
||||||
# admins
|
# admins
|
||||||
- party_id: 40
|
- party_id: 40
|
||||||
|
|
|
||||||
|
|
@ -26,36 +26,30 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{ \"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.groups:
|
ccm_core.groups:
|
||||||
# admins
|
# admins
|
||||||
- party_id: 40
|
- party_id: 40
|
||||||
|
|
|
||||||
|
|
@ -11,12 +11,10 @@ ccm_core.groups:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
|
|
@ -18,23 +18,19 @@ ccm_core.groups:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 30
|
party_id: 30
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
|
|
@ -11,12 +11,10 @@ ccm_core.groups:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
|
|
@ -26,36 +26,30 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.groups:
|
ccm_core.groups:
|
||||||
# group1
|
# group1
|
||||||
- party_id: 100
|
- party_id: 100
|
||||||
|
|
|
||||||
|
|
@ -26,36 +26,30 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.groups:
|
ccm_core.groups:
|
||||||
# group1
|
# group1
|
||||||
- party_id: 100
|
- party_id: 100
|
||||||
|
|
|
||||||
|
|
@ -26,36 +26,30 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.groups:
|
ccm_core.groups:
|
||||||
# group1
|
# group1
|
||||||
- party_id: 100
|
- party_id: 100
|
||||||
|
|
|
||||||
|
|
@ -26,55 +26,45 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 41001
|
party_id: 41001
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 41002
|
party_id: 41002
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 41003
|
party_id: 41003
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Public user
|
# Public user
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"public-user@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: public-user@example.org
|
|
||||||
family_name: user
|
family_name: user
|
||||||
given_name: public
|
given_name: public
|
||||||
party_id: 41004
|
party_id: 41004
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Erik Mustermann (banned)
|
# Erik Mustermann (banned)
|
||||||
- banned: true
|
- banned: true
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"erik.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: erik.mustermann@example.org
|
|
||||||
family_name: Musterman
|
family_name: Musterman
|
||||||
given_name: Erik
|
given_name: Erik
|
||||||
party_id: 41005
|
party_id: 41005
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.groups:
|
ccm_core.groups:
|
||||||
- party_id: 42001
|
- party_id: 42001
|
||||||
- party_id: 42002
|
- party_id: 42002
|
||||||
|
|
|
||||||
|
|
@ -19,42 +19,34 @@ ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- party_id: 10
|
- party_id: 10
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- party_id: 20
|
- party_id: 20
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- party_id: 30
|
- party_id: 30
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Jane Doe
|
# Jane Doe
|
||||||
- party_id: 40
|
- party_id: 40
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"jane.doe@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: jane.doe@example.org
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: Jane
|
given_name: Jane
|
||||||
password: $shiro1$SHA-512$500000$24lA090z7GKYr4VFlZ6t4A==$/heoTHPA5huT1UfJ8Q+waXEG6AjUKhFYLFrj7KW/l0/z9O+QkiZTtfPfbcPblgjcEvrROMEIoQY4Z65S7rFLQg==
|
password: $shiro1$SHA-512$500000$24lA090z7GKYr4VFlZ6t4A==$/heoTHPA5huT1UfJ8Q+waXEG6AjUKhFYLFrj7KW/l0/z9O+QkiZTtfPfbcPblgjcEvrROMEIoQY4Z65S7rFLQg==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
|
|
@ -14,36 +14,30 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
ccm_core.ccm_objects:
|
ccm_core.ccm_objects:
|
||||||
- object_id: 100
|
- object_id: 100
|
||||||
display_name: registry
|
display_name: registry
|
||||||
|
|
|
||||||
|
|
@ -10,22 +10,18 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
|
|
@ -14,33 +14,27 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"jd@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: jd@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo1456
|
# foo1456
|
||||||
password: $shiro1$SHA-512$500000$AH1llRaMHE8W31Q7VG6jsA==$XXgKeyDCsrN23NvszQ5wt+uViQUlVqTAM+05LrE7Bd9sc0eaJT8HlAGvSdY+rqTLbiGm9YS4pohzoUt1x3kmKg==
|
password: $shiro1$SHA-512$500000$AH1llRaMHE8W31Q7VG6jsA==$XXgKeyDCsrN23NvszQ5wt+uViQUlVqTAM+05LrE7Bd9sc0eaJT8HlAGvSdY+rqTLbiGm9YS4pohzoUt1x3kmKg==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
|
|
|
||||||
|
|
@ -19,42 +19,34 @@ ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- party_id: 10
|
- party_id: 10
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- party_id: 20
|
- party_id: 20
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- party_id: 30
|
- party_id: 30
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Jane Doe
|
# Jane Doe
|
||||||
- party_id: 40
|
- party_id: 40
|
||||||
banned: false
|
banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"jane.doe@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: jane.doe@example.org
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: Jane
|
given_name: Jane
|
||||||
password: $shiro1$SHA-512$500000$24lA090z7GKYr4VFlZ6t4A==$/heoTHPA5huT1UfJ8Q+waXEG6AjUKhFYLFrj7KW/l0/z9O+QkiZTtfPfbcPblgjcEvrROMEIoQY4Z65S7rFLQg==
|
password: $shiro1$SHA-512$500000$24lA090z7GKYr4VFlZ6t4A==$/heoTHPA5huT1UfJ8Q+waXEG6AjUKhFYLFrj7KW/l0/z9O+QkiZTtfPfbcPblgjcEvrROMEIoQY4Z65S7rFLQg==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: false
|
|
||||||
|
|
@ -14,33 +14,27 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
|
|
@ -14,33 +14,27 @@ ccm_core.parties:
|
||||||
ccm_core.users:
|
ccm_core.users:
|
||||||
# John Doe
|
# John Doe
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"john.doe@example.com\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: john.doe@example.com
|
|
||||||
family_name: Doe
|
family_name: Doe
|
||||||
given_name: John
|
given_name: John
|
||||||
party_id: 10
|
party_id: 10
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
password: $shiro1$SHA-512$500000$7xkDcZUN0/whJInHIvGsDw==$WhelBVmJU/cLV7lAkMOrE5B/mqCW0bUuid1WX+xBwzzAaekC5bYn9eeOFGJWhiDgmaC50ZCUmM96/iGsRoc4uA==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Max Mustermann
|
# Max Mustermann
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"max.mustermann@example.org\", \"bouncing\": false, \"verified\": true}"
|
||||||
email_address: max.mustermann@example.org
|
|
||||||
family_name: Mustermann
|
family_name: Mustermann
|
||||||
given_name: Max
|
given_name: Max
|
||||||
party_id: 20
|
party_id: 20
|
||||||
# foo123
|
# foo123
|
||||||
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
password: $shiro1$SHA-512$500000$Y7CnccN1h25sR7KCElMOXg==$CVLWBhetodaEzzhDfGjRcCFZtSW02xOnjH7xhBx0lbxO66grKIt6LWmXoUhLEydce1JZ7cbzNLYOxIwwTeqi5Q==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
# Joe Public
|
# Joe Public
|
||||||
- banned: false
|
- banned: false
|
||||||
bouncing: false
|
primary_email_address: "{\"address\": \"joe.public@example.com\", \"bouncing\": false, \"verified\": true}}"
|
||||||
email_address: joe.public@example.com
|
|
||||||
family_name: Public
|
family_name: Public
|
||||||
given_name: Joe
|
given_name: Joe
|
||||||
party_id: 30
|
party_id: 30
|
||||||
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
password: $shiro1$SHA-512$500000$RUCYXAQt+XzUmj3x8oG5gw==$qU+lX160Jc6sNUOI9X85wlf2lzn4/hLJNURtjmw9LOYJ7vAqUFFmhyNCMxpzuHIpzeMELr+A0XReoSmtcZnOOw==
|
||||||
password_reset_required: false
|
password_reset_required: false
|
||||||
verified: true
|
|
||||||
Loading…
Reference in New Issue