You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@directory.apache.org by dr...@apache.org on 2015/01/22 22:48:05 UTC
[26/45] directory-kerberos git commit: DIRKRB-149 New layout
structure with the new name "Apache Kerby"
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/ComplexAttribute.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/ComplexAttribute.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/ComplexAttribute.java
deleted file mode 100644
index 54deeb1..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/ComplexAttribute.java
+++ /dev/null
@@ -1,42 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity;
-
-import java.util.ArrayList;
-import java.util.Collections;
-import java.util.List;
-
-public class ComplexAttribute extends Attribute {
- private List<String> values;
-
- public ComplexAttribute(String name) {
- super(name);
- this.values = new ArrayList<String>(1);
- }
-
- public List<String> getValues() {
- return Collections.unmodifiableList(values);
- }
-
- public void setValues(List<String> values) {
- this.values.clear();
- this.values.addAll(values);
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/Identity.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/Identity.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/Identity.java
deleted file mode 100644
index c85bc1c..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/Identity.java
+++ /dev/null
@@ -1,67 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity;
-
-import java.util.*;
-
-public class Identity {
- private String name;
- private Map<String, Attribute> attributes;
-
- public Identity(String name) {
- this.name = name;
- this.attributes = new HashMap<String, Attribute>();
- }
-
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- public void addAttribute(String name, String value) {
- attributes.put(name, new SimpleAttribute(name, value));
- }
-
- public void addAttribute(Attribute attribute) {
- attributes.put(attribute.getName(), attribute);
- }
-
- public Set<String> getAttributes() {
- return Collections.unmodifiableSet(attributes.keySet());
- }
-
- public String getSimpleAttribute(String name) {
- Attribute attr = attributes.get(name);
- if (! (attr instanceof SimpleAttribute)) {
- throw new RuntimeException("Not simple attribute");
- }
- return ((SimpleAttribute) attr).getValue();
- }
-
- public void setAttributes(List<Attribute> attributes) {
- this.attributes.clear();
- for (Attribute attr : attributes) {
- addAttribute(attr);
- }
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/IdentityService.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/IdentityService.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/IdentityService.java
deleted file mode 100644
index 538c687..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/IdentityService.java
+++ /dev/null
@@ -1,31 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity;
-
-import java.util.List;
-
-public interface IdentityService {
- public List<KrbIdentity> getIdentities();
- public boolean checkIdentity(String name);
- public KrbIdentity getIdentity(String name);
- public void addIdentity(KrbIdentity identity);
- public void updateIdentity(KrbIdentity identity);
- public void deleteIdentity(KrbIdentity identity);
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbAttributes.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbAttributes.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbAttributes.java
deleted file mode 100644
index 2c5f58f..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbAttributes.java
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity;
-
-public class KrbAttributes {
- public static final String PRINCIPAL = "principal";
- public static final String PASSWORD = "password";
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbIdentity.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbIdentity.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbIdentity.java
deleted file mode 100644
index 342e075..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/KrbIdentity.java
+++ /dev/null
@@ -1,126 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity;
-
-import org.apache.kerberos.kerb.spec.KerberosTime;
-import org.apache.kerberos.kerb.spec.common.EncryptionKey;
-import org.apache.kerberos.kerb.spec.common.EncryptionType;
-import org.apache.kerberos.kerb.spec.common.PrincipalName;
-
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class KrbIdentity {
- private String principalName;
- private PrincipalName principal;
- private int keyVersion = 1;
- private int kdcFlags = 0;
- private boolean disabled = false;
- private boolean locked = false;
- private KerberosTime expireTime = KerberosTime.NEVER;
- private KerberosTime createdTime = KerberosTime.now();
-
- private Map<EncryptionType, EncryptionKey> keys =
- new HashMap<EncryptionType, EncryptionKey>();
-
- public KrbIdentity(String principalName) {
- this.principalName = principalName;
- this.principal = new PrincipalName(principalName);
- }
-
- public String getPrincipalName() {
- return principalName;
- }
-
- public void setPrincipal(PrincipalName principal) {
- this.principal = principal;
- }
-
- public PrincipalName getPrincipal() {
- return principal;
- }
-
- public void setKeyVersion(int keyVersion) {
- this.keyVersion = keyVersion;
- }
-
- public void setKdcFlags(int kdcFlags) {
- this.kdcFlags = kdcFlags;
- }
-
- public void setDisabled(boolean disabled) {
- this.disabled = disabled;
- }
-
- public void setLocked(boolean locked) {
- this.locked = locked;
- }
-
- public void setExpireTime(KerberosTime expireTime) {
- this.expireTime = expireTime;
- }
-
- public KerberosTime getExpireTime() {
- return expireTime;
- }
-
- public KerberosTime getCreatedTime() {
- return createdTime;
- }
-
- public void setCreatedTime(KerberosTime createdTime) {
- this.createdTime = createdTime;
- }
-
- public boolean isDisabled() {
- return disabled;
- }
-
- public boolean isLocked() {
- return locked;
- }
-
- public void addKey(EncryptionKey encKey) {
- keys.put(encKey.getKeyType(), encKey);
- }
-
- public void addKeys(List<EncryptionKey> encKeys) {
- for (EncryptionKey key : encKeys) {
- keys.put(key.getKeyType(), key);
- }
- }
-
- public Map<EncryptionType, EncryptionKey> getKeys() {
- return keys;
- }
-
- public EncryptionKey getKey(EncryptionType encType) {
- return keys.get(encType);
- }
-
- public int getKdcFlags() {
- return kdcFlags;
- }
-
- public int getKeyVersion() {
- return keyVersion;
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/SimpleAttribute.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/SimpleAttribute.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/SimpleAttribute.java
deleted file mode 100644
index 5a36ea6..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/SimpleAttribute.java
+++ /dev/null
@@ -1,37 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity;
-
-public class SimpleAttribute extends Attribute {
- private String value;
-
- public SimpleAttribute(String name, String value) {
- super(name);
- this.value = value;
- }
-
- public String getValue() {
- return value;
- }
-
- public void setValue(String value) {
- this.value = value;
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/AbstractIdentityBackend.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/AbstractIdentityBackend.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/AbstractIdentityBackend.java
deleted file mode 100644
index de4cad0..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/AbstractIdentityBackend.java
+++ /dev/null
@@ -1,26 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity.backend;
-
-import org.apache.kerberos.kerb.identity.IdentityService;
-
-public abstract class AbstractIdentityBackend implements IdentityService {
-
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/InMemoryIdentityBackend.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/InMemoryIdentityBackend.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/InMemoryIdentityBackend.java
deleted file mode 100644
index 2c4a5c2..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/InMemoryIdentityBackend.java
+++ /dev/null
@@ -1,76 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity.backend;
-
-import org.apache.kerberos.kerb.identity.KrbIdentity;
-
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class InMemoryIdentityBackend extends AbstractIdentityBackend {
-
- private Map<String, KrbIdentity> identities;
-
- public InMemoryIdentityBackend() {
- this.identities = new HashMap<String, KrbIdentity>();
- }
-
- public InMemoryIdentityBackend(Map<String, KrbIdentity> identities) {
- this();
- this.identities.putAll(identities);
- }
-
- @Override
- public List<KrbIdentity> getIdentities() {
- List<KrbIdentity> results = new ArrayList<KrbIdentity>(identities.size());
- results.addAll(identities.values());
- return results;
- }
-
- @Override
- public boolean checkIdentity(String name) {
- return identities.containsKey(name);
- }
-
- @Override
- public KrbIdentity getIdentity(String name) {
- if (identities.containsKey(name)) {
- return identities.get(name);
- }
- return null;
- }
-
- @Override
- public void addIdentity(KrbIdentity identity) {
- identities.put(identity.getPrincipalName(), identity);
- }
-
- @Override
- public void updateIdentity(KrbIdentity identity) {
- identities.put(identity.getPrincipalName(), identity);
- }
-
- @Override
- public void deleteIdentity(KrbIdentity identity) {
- identities.remove(identity.getPrincipalName());
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/SimpleIdentityBackend.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/SimpleIdentityBackend.java b/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/SimpleIdentityBackend.java
deleted file mode 100644
index 22281cb..0000000
--- a/haox-kerb/kerb-identity/src/main/java/org/apache/kerberos/kerb/identity/backend/SimpleIdentityBackend.java
+++ /dev/null
@@ -1,46 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.identity.backend;
-
-import java.io.File;
-
-public class SimpleIdentityBackend extends InMemoryIdentityBackend {
-
- private File identityFile;
-
- public SimpleIdentityBackend(File identityFile) {
- super();
- this.identityFile = identityFile;
- }
-
- /**
- * Load identities from file
- */
- public void load() {
- // todo
- }
-
- /**
- * Persist the updated identities back
- */
- public void save() {
- // todo
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/pom.xml
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/pom.xml b/haox-kerb/kerb-kdc-test/pom.xml
deleted file mode 100644
index da14cf1..0000000
--- a/haox-kerb/kerb-kdc-test/pom.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License. See accompanying LICENSE file.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.haox</groupId>
- <artifactId>haox-kerb</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <artifactId>kerb-kdc-test</artifactId>
-
- <name>Haox-kerb-KdcTest</name>
- <description>Haox-kerb Kdc Test</description>
-
- <dependencies>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>haox-config</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>kerb-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>kerb-util</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>kerb-server</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>kerb-client</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>haox-pkix</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-</project>
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/java/org/apache/kerberos/kerb/server/TestKdcServer.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/java/org/apache/kerberos/kerb/server/TestKdcServer.java b/haox-kerb/kerb-kdc-test/src/main/java/org/apache/kerberos/kerb/server/TestKdcServer.java
deleted file mode 100644
index 78c3a22..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/java/org/apache/kerberos/kerb/server/TestKdcServer.java
+++ /dev/null
@@ -1,122 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.common.EncryptionUtil;
-import org.apache.kerberos.kerb.identity.KrbIdentity;
-import org.apache.kerberos.kerb.keytab.Keytab;
-import org.apache.kerberos.kerb.keytab.KeytabEntry;
-import org.apache.kerberos.kerb.KrbException;
-import org.apache.kerberos.kerb.spec.KerberosTime;
-import org.apache.kerberos.kerb.spec.common.EncryptionKey;
-import org.apache.kerberos.kerb.spec.common.EncryptionType;
-import org.apache.kerberos.kerb.spec.common.PrincipalName;
-
-import java.io.File;
-import java.io.IOException;
-import java.util.List;
-import java.util.Properties;
-import java.util.UUID;
-
-public class TestKdcServer extends SimpleKdcServer {
-
- public static final String ORG_DOMAIN = KdcConfigKey.KDC_DOMAIN.getPropertyKey();
- public static final String KDC_REALM = KdcConfigKey.KDC_REALM.getPropertyKey();
- public static final String KDC_HOST = KdcConfigKey.KDC_HOST.getPropertyKey();
- public static final String KDC_TCP_PORT = KdcConfigKey.KDC_TCP_PORT.getPropertyKey();
- public static final String WORK_DIR = KdcConfigKey.WORK_DIR.getPropertyKey();
-
- private static final Properties DEFAULT_CONFIG = new Properties();
- static {
- DEFAULT_CONFIG.setProperty(KDC_HOST, "localhost");
- DEFAULT_CONFIG.setProperty(KDC_TCP_PORT, "8018");
- DEFAULT_CONFIG.setProperty(ORG_DOMAIN, "test.com");
- DEFAULT_CONFIG.setProperty(KDC_REALM, "TEST.COM");
- }
-
- public static Properties createConf() {
- return (Properties) DEFAULT_CONFIG.clone();
- }
-
- public TestKdcServer() {
- this(createConf());
- }
-
- public TestKdcServer(Properties conf) {
- super();
- getConfig().getConf().addPropertiesConfig(conf);
- }
-
- @Override
- public void init() {
- super.init();
-
- createPrincipals("krbtgt");
- }
-
- public String getKdcRealm() {
- return getConfig().getKdcRealm();
- }
-
- public synchronized void createPrincipal(String principal, String password) {
- KrbIdentity identity = new KrbIdentity(principal);
- List<EncryptionType> encTypes = getConfig().getEncryptionTypes();
- List<EncryptionKey> encKeys = null;
- try {
- encKeys = EncryptionUtil.generateKeys(fixPrincipal(principal), password, encTypes);
- } catch (KrbException e) {
- throw new RuntimeException("Failed to generate encryption keys", e);
- }
- identity.addKeys(encKeys);
- getIdentityService().addIdentity(identity);
- }
-
- public void createPrincipals(String ... principals) {
- String passwd;
- for (String principal : principals) {
- passwd = UUID.randomUUID().toString();
- createPrincipal(fixPrincipal(principal), passwd);
- }
- }
-
- private String fixPrincipal(String principal) {
- if (! principal.contains("@")) {
- principal += "@" + getKdcRealm();
- }
- return principal;
- }
-
- public void exportPrincipals(File keytabFile) throws IOException {
- Keytab keytab = new Keytab();
-
- List<KrbIdentity> identities = getIdentityService().getIdentities();
- for (KrbIdentity identity : identities) {
- PrincipalName principal = identity.getPrincipal();
- KerberosTime timestamp = new KerberosTime();
- for (EncryptionType encType : identity.getKeys().keySet()) {
- EncryptionKey ekey = identity.getKeys().get(encType);
- int keyVersion = ekey.getKvno();
- keytab.addEntry(new KeytabEntry(principal, timestamp, keyVersion, ekey));
- }
- }
-
- keytab.store(keytabFile);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/cacert.pem
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/cacert.pem b/haox-kerb/kerb-kdc-test/src/main/resources/cacert.pem
deleted file mode 100644
index 6b91561..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/cacert.pem
+++ /dev/null
@@ -1,23 +0,0 @@
------BEGIN CERTIFICATE-----
-MIID6zCCAtOgAwIBAgIJAMrZoeDxTzwWMA0GCSqGSIb3DQEBBQUAMIGLMQswCQYD
-VQQGEwJjaDERMA8GA1UECAwIc2hhbmdoYWkxETAPBgNVBAcMCHNoYW5naGFpMQ4w
-DAYDVQQKDAVpbnRlbDEQMA4GA1UECwwHYmlnZGF0YTEQMA4GA1UEAwwHYmlnZGF0
-YTEiMCAGCSqGSIb3DQEJARYTa2FpLnpoZW5nQGludGVsLmNvbTAeFw0xNDA1MTMx
-MzEzMjdaFw0yNDA1MTAxMzEzMjdaMIGLMQswCQYDVQQGEwJjaDERMA8GA1UECAwI
-c2hhbmdoYWkxETAPBgNVBAcMCHNoYW5naGFpMQ4wDAYDVQQKDAVpbnRlbDEQMA4G
-A1UECwwHYmlnZGF0YTEQMA4GA1UEAwwHYmlnZGF0YTEiMCAGCSqGSIb3DQEJARYT
-a2FpLnpoZW5nQGludGVsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
-ggEBAMCznJJ02ZUjCPvAwnBmfPs0akb5QRc/NKu8kCtAPWzgHS2JPTQfJhkDbTAD
-eIlg8IeJpOdrYnzdaBCzgxqjSkls+vxjYotOU0Zbrpy2bj0lRDqdYbNsiuConKgT
-MeuDEd/4ZI0X9NWLAi06Iv1F4mHXf36c6uqiUWTtXiofogrFUoTRwACKR2qeC95X
-Py+FDmpS9lz0mo0vDWjetLQC2IBngjjPFdR16n87QDIWfRBkk66rn7rEA6Li66b/
-cToajMSA/n+2Ud1mntSY4RdDdd0TBtAq9RrXtUOfzGaE7S6t+FtYyEprvT4FdOTU
-uyYgSNaI9ANVP1zhQ9LACKuudOECAwEAAaNQME4wHQYDVR0OBBYEFD91SVOejfwx
-u33+5N0TdYbHJbgAMB8GA1UdIwQYMBaAFD91SVOejfwxu33+5N0TdYbHJbgAMAwG
-A1UdEwQFMAMBAf8wDQYJKoZIhvcNAQEFBQADggEBADsONtUqGNBPBXnRowcJwv+Y
-F1Vea+4dkBwYbhkiO6H5XMKr+waOnOD2eAvgP4aeYg/a0xOzzETRD9wi1Z1P1ZMy
-d/NzHQjj4egPENwDv1PH2voZgsXXzXIqUMOtz9t12TuJUrSA2SBW1tz/evckHhNY
-fHg4ThvTIgwEdV/yvrOEBLV9dXG5IhhF+NW1MegTGkt4SpOoH1pi3o9VekVRnix9
-xrIdaC4Ee6vQaR603HwDS9Y+a1c2KU7QoLX8Vaa904cQ+rxhGsTAkocnZXeo6Hl5
-V8BlDYXxeP86fzcWi04ll2BmEEw/RimHEOLpGqxTVHJ5p5BVSCHP8aCD0VJheaU=
------END CERTIFICATE-----
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/cakey.pem
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/cakey.pem b/haox-kerb/kerb-kdc-test/src/main/resources/cakey.pem
deleted file mode 100644
index 66dc806..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/cakey.pem
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIIEowIBAAKCAQEAwLOcknTZlSMI+8DCcGZ8+zRqRvlBFz80q7yQK0A9bOAdLYk9
-NB8mGQNtMAN4iWDwh4mk52tifN1oELODGqNKSWz6/GNii05TRluunLZuPSVEOp1h
-s2yK4KicqBMx64MR3/hkjRf01YsCLToi/UXiYdd/fpzq6qJRZO1eKh+iCsVShNHA
-AIpHap4L3lc/L4UOalL2XPSajS8NaN60tALYgGeCOM8V1HXqfztAMhZ9EGSTrquf
-usQDouLrpv9xOhqMxID+f7ZR3Wae1JjhF0N13RMG0Cr1Gte1Q5/MZoTtLq34W1jI
-Smu9PgV05NS7JiBI1oj0A1U/XOFD0sAIq6504QIDAQABAoIBAHqFeMax3unxBbQ0
-Aiy/LTX3RJ9tuZITUOTklnG5fZStBkA+oxhxuaJryE+f1VLbvPMgdCXj5BHqIFGG
-IZSdQA1hak9wzWYvXck9X88qOvtLp47xI/6Vw9NFwZ0n3zST+JiD8UK4eaYQpUim
-Tzrj5SU6hEi3crHOlJvsRFPaGwhnA9wycoOo4o22XBj3C8Hwzi4vWcKXH/RCSwZQ
-zFuYbe77Pn9Sv5q5zdglkmm7wngoVt/aKQke/Vk+Eincx1V12b05DNLjugo6FWQh
-0f2MmHpvqNSHs9USC5+y2lKQ1JNHh7mnpPCXkZEH4V7q+3mKVzl9tXzj9Gul20pw
-tneD6WUCgYEA9QUrQoWHKeVMjeukHjDJa2KjRLMmg9YRQyVABH9+nQTp1jYUjMRA
-GUoUx91gG6gjjJD/xvor/U0Fh3vKtZE93c+avrcaYDwf3q/L4gh+3b87lVDfzjrp
-L+MPTpEzWiyyLfr/kLA0TgUjnrj9bav5uDps8mJpNf8s9ZP1/QDhF5sCgYEAyVZA
-pHSIyBI2GT0+92JXvYDK/ZfV5m4RGHaG/PMDoU4IbGbjHVyzzsyzDUgvOASXwfF8
-YzwX7Tf95RZw12P/Jepxt0vqBJPKUCsMLUrmANQvN1Pz8+Vk6UADLM7kNc06MqB9
-/U3GKCFZZuedEhbgXnEV9gzelhILImJGZMxG0zMCgYApymnofLHjGXMHOcvSQmv4
-XuiODShikB59n1rd6YkE6xOfL7YtlEOCjLoipMWBshnuHcUigQUDvSFWTGz0rwMo
-VAKGyOA8zcR5zO4vbVeGJtnYy+SAXlfrjQTNV8K0fK8fXJI+cW9aZ1H9/ntrO0vq
-ejye0t4zEYTvlf782iuKRQKBgQCnTQ7mGRfX+JoPmv8JniR+idkjpNnPYsK96y/8
-XQs1LJx/R3eN3IxlWV+nt8XU7KwWMs5Dv5m6Ov61MFKQCL3qCch4oZJSP2Sr/Tlf
-IY/CPI8HkLF0h7e0wsZgo4Kq2mBz1T0cEVaJ3jxl8Cxq7at/jsTK8qK7XT73UWZh
-OAXaVQKBgDmg2QTX7c0/dbDMOuw18g3xfE/oqU+VWT784wtvpcdjHR+KAVLWHG8l
-oc/bm8Bs0o0f5dfH7uUvWdP6JMvbgYZBgIMqw+iH8P2lFCLzIRf0me/l+r0Oi64U
-5jp9K+7Ggc7S0SSnCLmBLMN5lXQZbhzks1La7DZmFeAz8rOEnlUB
------END RSA PRIVATE KEY-----
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/extensions.kdc
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/extensions.kdc b/haox-kerb/kerb-kdc-test/src/main/resources/extensions.kdc
deleted file mode 100644
index 8052f71..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/extensions.kdc
+++ /dev/null
@@ -1,36 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-[kdc_cert]
-basicConstraints=CA:FALSE
-keyUsage=nonRepudiation,digitalSignature,keyEncipherment,keyAgreement
-extendedKeyUsage=1.3.6.1.5.2.3.5
-subjectKeyIdentifier=hash
-authorityKeyIdentifier=keyid,issuer
-issuerAltName=issuer:copy
-subjectAltName=otherName:1.3.6.1.5.2.2;SEQUENCE:kdc_princ_name
-
-[kdc_princ_name]
-realm=EXP:0,GeneralString:${ENV::REALM}
-principal_name=EXP:1,SEQUENCE:kdc_principal_seq
-
-[kdc_principal_seq]
-name_type=EXP:0,INTEGER:1
-name_string=EXP:1,SEQUENCE:kdc_principals
-
-[kdc_principals]
-princ1=GeneralString:krbtgt
-princ2=GeneralString:${ENV::REALM}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/kdc-krb5.conf
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/kdc-krb5.conf b/haox-kerb/kerb-kdc-test/src/main/resources/kdc-krb5.conf
deleted file mode 100644
index d118dd1..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/kdc-krb5.conf
+++ /dev/null
@@ -1,25 +0,0 @@
-#
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-#
-[libdefaults]
- default_realm = {0}
- udp_preference_limit = 1
-
-[realms]
- {0} = '{'
- kdc = {1}:{2}
- '}'
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/kdc.ldiff
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/kdc.ldiff b/haox-kerb/kerb-kdc-test/src/main/resources/kdc.ldiff
deleted file mode 100644
index bc989c3..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/kdc.ldiff
+++ /dev/null
@@ -1,46 +0,0 @@
-# Licensed to the Apache Software Foundation (ASF) under one
-# or more contributor license agreements. See the NOTICE file
-# distributed with this work for additional information
-# regarding copyright ownership. The ASF licenses this file
-# to you under the Apache License, Version 2.0 (the
-# "License"); you may not use this file except in compliance
-# with the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing,
-# software distributed under the License is distributed on an
-# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
-# KIND, either express or implied. See the License for the
-# specific language governing permissions and limitations
-# under the License.
-dn: ou=users,dc=${0},dc=${1}
-objectClass: organizationalUnit
-objectClass: top
-ou: users
-
-dn: uid=krbtgt,ou=users,dc=${0},dc=${1}
-objectClass: top
-objectClass: person
-objectClass: inetOrgPerson
-objectClass: krb5principal
-objectClass: krb5kdcentry
-cn: KDC Service
-sn: Service
-uid: krbtgt
-userPassword: secret
-krb5PrincipalName: krbtgt/${2}.${3}@${2}.${3}
-krb5KeyVersionNumber: 0
-
-dn: uid=ldap,ou=users,dc=${0},dc=${1}
-objectClass: top
-objectClass: person
-objectClass: inetOrgPerson
-objectClass: krb5principal
-objectClass: krb5kdcentry
-cn: LDAP
-sn: Service
-uid: ldap
-userPassword: secret
-krb5PrincipalName: ldap/${4}@${2}.${3}
-krb5KeyVersionNumber: 0
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/kdccert.pem
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/kdccert.pem b/haox-kerb/kerb-kdc-test/src/main/resources/kdccert.pem
deleted file mode 100644
index 67e538c..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/kdccert.pem
+++ /dev/null
@@ -1,26 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEYjCCA0qgAwIBAgIJAL2ZFUkXCgK2MA0GCSqGSIb3DQEBBQUAMIGLMQswCQYD
-VQQGEwJjaDERMA8GA1UECAwIc2hhbmdoYWkxETAPBgNVBAcMCHNoYW5naGFpMQ4w
-DAYDVQQKDAVpbnRlbDEQMA4GA1UECwwHYmlnZGF0YTEQMA4GA1UEAwwHYmlnZGF0
-YTEiMCAGCSqGSIb3DQEJARYTa2FpLnpoZW5nQGludGVsLmNvbTAeFw0xNDA1MTMx
-MzI3MjFaFw0xNTA1MTMxMzI3MjFaMIGLMQswCQYDVQQGEwJjaDERMA8GA1UECAwI
-c2hhbmdoYWkxETAPBgNVBAcMCHNoYW5naGFpMQ4wDAYDVQQKDAVpbnRlbDEQMA4G
-A1UECwwHYmlnZGF0YTEQMA4GA1UEAwwHYmlnZGF0YTEiMCAGCSqGSIb3DQEJARYT
-a2FpLnpoZW5nQGludGVsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
-ggEBAMs0jF1fi5AVMunQ/jpxgSjRlpmVQyT//LrwBmyI77C+hCD4z/InoG4q2tl5
-fAH+2n7HHgon4E0QXyRxAz0+Ugun7qHW9oT2pnxoc1l8seyGNMK9adsxLpCv7RXK
-quqLcj34UQCzRDKxgkH5UBwxGY0kId0W1MqPh1LZRZIk1hakREC4DBj+slnDkN0s
-nh8pC/8q/hTPJ9QrqWT6oc1FjMVKz3FxFbxXELYxg4M6SXnzGzdWa3xSe4Ou0QO2
-EwncQUoo8N6plOKX5lncDhC2usT//AZHvKdcVmOwX0ByxZqGQIXk7g1kbsbG5m45
-JMjt/HnOQcfg88iSLKJZu+ODw00CAwEAAaOBxjCBwzAJBgNVHRMEAjAAMAsGA1Ud
-DwQEAwID6DASBgNVHSUECzAJBgcrBgEFAgMFMB0GA1UdDgQWBBS8Bmb9kTUkw61e
-Is+9KDV5U6JjyjAfBgNVHSMEGDAWgBQ/dUlTno38Mbt9/uTdE3WGxyW4ADAJBgNV
-HRIEAjAAMEoGA1UdEQRDMEGgPwYGKwYBBQICoDUwM6AOGwxTSC5JTlRFTC5DT02h
-ITAfoAMCAQGhGDAWGwZrcmJ0Z3QbDFNILklOVEVMLkNPTTANBgkqhkiG9w0BAQUF
-AAOCAQEAS/I0zH9ByFcXTF56I5aPmPdzYKpIpFF6Kkwyw0M2EuIcTcpDl74/xmq9
-YPHS6TSDAt3wHzs9JQlSWah04L0R+IgHVacLRgdXfTWqglFFH/pve3p49WCrYmWz
-txQeRV5dxzaE3oTdDq15DRkUJmt0GIk1x6ehrGZOpIL8oTFmVmnR7EgrKWlIMYCs
-R/GkEuCH15wadom/Hw5Db1KLPEjxCdwy947guOh4SO0fcW3h55V3troS/46TbVFF
-FvNSqGD+19/QM/MhLIy5OnTxOio8M9zp+yfDlzLnpbMi0ZO6tLvB4XhjvP0as34c
-5vCA/8HPfaearSyAYi2Ir9vT3O9J/w==
------END CERTIFICATE-----
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/kdckey.pem
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/kdckey.pem b/haox-kerb/kerb-kdc-test/src/main/resources/kdckey.pem
deleted file mode 100644
index c9e75e2..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/kdckey.pem
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIIEpAIBAAKCAQEAyzSMXV+LkBUy6dD+OnGBKNGWmZVDJP/8uvAGbIjvsL6EIPjP
-8iegbira2Xl8Af7afsceCifgTRBfJHEDPT5SC6fuodb2hPamfGhzWXyx7IY0wr1p
-2zEukK/tFcqq6otyPfhRALNEMrGCQflQHDEZjSQh3RbUyo+HUtlFkiTWFqREQLgM
-GP6yWcOQ3SyeHykL/yr+FM8n1CupZPqhzUWMxUrPcXEVvFcQtjGDgzpJefMbN1Zr
-fFJ7g67RA7YTCdxBSijw3qmU4pfmWdwOELa6xP/8Bke8p1xWY7BfQHLFmoZAheTu
-DWRuxsbmbjkkyO38ec5Bx+DzyJIsolm744PDTQIDAQABAoIBAQC4Byb3iQgDvK8X
-QcZ7dz/Zj7Yr8RmV8J8ZTTcEJB+umVtf4PWyAGEyZG0+dt7vj7ahCgMSf3qLUEBZ
-6F9en4n+NF/RAbTQRfAQyydr65nW8tPlaVTsxWW+cxTrn1eagh88MB5r2+3vWwL0
-bK04Wt8hC4//giXELKgJR+vRprqcVRgy11nYaTP59IDdg4YscbHfc/LYa7ABQ1G5
-5NKtjMy13UvtD/4C3TS1NpL2xtzAgQRe3XFDIyOmv476Ts1boqSHBFX+MXmLBAfi
-8Qhaj1DO8A0HS/c4egcL6esCe4kcgtCuq66n8JzOlVbCDGOYIUkUyQ9Nfo31M5i5
-XhqF9CsBAoGBAP7PqkncLAvyjHQKPpDyWCBtkV7z+DWRZRPz4w8tit+TiAv6hRF7
-kK+NUhP1mBuS4duyEV58B8LWOR0ir7ftbL0/unxR1XWMOvTEHr/9lG1sKZoI0dJS
-Ee+VvuVFwdm/ABxfnveGCRrSHY7GAvFln3gC1Cst3NPPKbpznb3FiH/JAoGBAMwn
-P1Labt/OuzB70Vxve3TCeFA6jYzcYdA3riv1V0FIWoNgcQ742b0+6HDpEQgn4Rdb
-KiKz8hSplM1nx8NyWwS9r7gRQ9HIc0qC5S4A0A9QEbdKrkUiQDlwHgdDKPPCWih9
-qH05etiQ044BtOq7uXsWYqiIomOW/XyDUEhbRRFlAoGALmVnj01Mo9xFILfgzomh
-7D2nE4/+qNpRekGVHWVgfPci9XNnGVjTbnOf90xnptWm1Fbm/Lo+u4ZAHgL71dSg
-UREyhoJsCJxA++Jd6v1kMkxYgtiKQ+53n5U3jg2Wj2xMu93ZVx6Lt9t8UEvTq1qi
-n7p8IWSXaeW1pmJ43V4DTakCgYAFcSpj+ASqnKUqxrIvB52/4As7AESTs7A7z7Ap
-5dFcoSQgimqZHpMXU1z43Y2hrQZ4C+sUn71dRaP80b5mfF7mwnOzsWogZnqESvb3
-AfiJ3/WI8Emy+BXEMjPqt6SY0t56Y9cg925J5ZpuF6eN9lEccd1RZssFYpoBPrLe
-KuitbQKBgQC3DNejUqol2max6rf4h/GnwLE2BOTmFLnswexlw76p/63Jo1SaVpk7
-9nAltsqNCl4L/eAJ8hJdeTE5YVjYsgAVJrXZbiRfxHBMeHj9g0d1VafGqdomKf0R
-7Qytlcvsw8jn96ckEMPPLJF0bX5cu9S6lMyEbb6Ih41P13uvgP6ufg==
------END RSA PRIVATE KEY-----
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/usercert.pem
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/usercert.pem b/haox-kerb/kerb-kdc-test/src/main/resources/usercert.pem
deleted file mode 100644
index 67e538c..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/usercert.pem
+++ /dev/null
@@ -1,26 +0,0 @@
------BEGIN CERTIFICATE-----
-MIIEYjCCA0qgAwIBAgIJAL2ZFUkXCgK2MA0GCSqGSIb3DQEBBQUAMIGLMQswCQYD
-VQQGEwJjaDERMA8GA1UECAwIc2hhbmdoYWkxETAPBgNVBAcMCHNoYW5naGFpMQ4w
-DAYDVQQKDAVpbnRlbDEQMA4GA1UECwwHYmlnZGF0YTEQMA4GA1UEAwwHYmlnZGF0
-YTEiMCAGCSqGSIb3DQEJARYTa2FpLnpoZW5nQGludGVsLmNvbTAeFw0xNDA1MTMx
-MzI3MjFaFw0xNTA1MTMxMzI3MjFaMIGLMQswCQYDVQQGEwJjaDERMA8GA1UECAwI
-c2hhbmdoYWkxETAPBgNVBAcMCHNoYW5naGFpMQ4wDAYDVQQKDAVpbnRlbDEQMA4G
-A1UECwwHYmlnZGF0YTEQMA4GA1UEAwwHYmlnZGF0YTEiMCAGCSqGSIb3DQEJARYT
-a2FpLnpoZW5nQGludGVsLmNvbTCCASIwDQYJKoZIhvcNAQEBBQADggEPADCCAQoC
-ggEBAMs0jF1fi5AVMunQ/jpxgSjRlpmVQyT//LrwBmyI77C+hCD4z/InoG4q2tl5
-fAH+2n7HHgon4E0QXyRxAz0+Ugun7qHW9oT2pnxoc1l8seyGNMK9adsxLpCv7RXK
-quqLcj34UQCzRDKxgkH5UBwxGY0kId0W1MqPh1LZRZIk1hakREC4DBj+slnDkN0s
-nh8pC/8q/hTPJ9QrqWT6oc1FjMVKz3FxFbxXELYxg4M6SXnzGzdWa3xSe4Ou0QO2
-EwncQUoo8N6plOKX5lncDhC2usT//AZHvKdcVmOwX0ByxZqGQIXk7g1kbsbG5m45
-JMjt/HnOQcfg88iSLKJZu+ODw00CAwEAAaOBxjCBwzAJBgNVHRMEAjAAMAsGA1Ud
-DwQEAwID6DASBgNVHSUECzAJBgcrBgEFAgMFMB0GA1UdDgQWBBS8Bmb9kTUkw61e
-Is+9KDV5U6JjyjAfBgNVHSMEGDAWgBQ/dUlTno38Mbt9/uTdE3WGxyW4ADAJBgNV
-HRIEAjAAMEoGA1UdEQRDMEGgPwYGKwYBBQICoDUwM6AOGwxTSC5JTlRFTC5DT02h
-ITAfoAMCAQGhGDAWGwZrcmJ0Z3QbDFNILklOVEVMLkNPTTANBgkqhkiG9w0BAQUF
-AAOCAQEAS/I0zH9ByFcXTF56I5aPmPdzYKpIpFF6Kkwyw0M2EuIcTcpDl74/xmq9
-YPHS6TSDAt3wHzs9JQlSWah04L0R+IgHVacLRgdXfTWqglFFH/pve3p49WCrYmWz
-txQeRV5dxzaE3oTdDq15DRkUJmt0GIk1x6ehrGZOpIL8oTFmVmnR7EgrKWlIMYCs
-R/GkEuCH15wadom/Hw5Db1KLPEjxCdwy947guOh4SO0fcW3h55V3troS/46TbVFF
-FvNSqGD+19/QM/MhLIy5OnTxOio8M9zp+yfDlzLnpbMi0ZO6tLvB4XhjvP0as34c
-5vCA/8HPfaearSyAYi2Ir9vT3O9J/w==
------END CERTIFICATE-----
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/main/resources/userkey.pem
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/main/resources/userkey.pem b/haox-kerb/kerb-kdc-test/src/main/resources/userkey.pem
deleted file mode 100644
index c9e75e2..0000000
--- a/haox-kerb/kerb-kdc-test/src/main/resources/userkey.pem
+++ /dev/null
@@ -1,27 +0,0 @@
------BEGIN RSA PRIVATE KEY-----
-MIIEpAIBAAKCAQEAyzSMXV+LkBUy6dD+OnGBKNGWmZVDJP/8uvAGbIjvsL6EIPjP
-8iegbira2Xl8Af7afsceCifgTRBfJHEDPT5SC6fuodb2hPamfGhzWXyx7IY0wr1p
-2zEukK/tFcqq6otyPfhRALNEMrGCQflQHDEZjSQh3RbUyo+HUtlFkiTWFqREQLgM
-GP6yWcOQ3SyeHykL/yr+FM8n1CupZPqhzUWMxUrPcXEVvFcQtjGDgzpJefMbN1Zr
-fFJ7g67RA7YTCdxBSijw3qmU4pfmWdwOELa6xP/8Bke8p1xWY7BfQHLFmoZAheTu
-DWRuxsbmbjkkyO38ec5Bx+DzyJIsolm744PDTQIDAQABAoIBAQC4Byb3iQgDvK8X
-QcZ7dz/Zj7Yr8RmV8J8ZTTcEJB+umVtf4PWyAGEyZG0+dt7vj7ahCgMSf3qLUEBZ
-6F9en4n+NF/RAbTQRfAQyydr65nW8tPlaVTsxWW+cxTrn1eagh88MB5r2+3vWwL0
-bK04Wt8hC4//giXELKgJR+vRprqcVRgy11nYaTP59IDdg4YscbHfc/LYa7ABQ1G5
-5NKtjMy13UvtD/4C3TS1NpL2xtzAgQRe3XFDIyOmv476Ts1boqSHBFX+MXmLBAfi
-8Qhaj1DO8A0HS/c4egcL6esCe4kcgtCuq66n8JzOlVbCDGOYIUkUyQ9Nfo31M5i5
-XhqF9CsBAoGBAP7PqkncLAvyjHQKPpDyWCBtkV7z+DWRZRPz4w8tit+TiAv6hRF7
-kK+NUhP1mBuS4duyEV58B8LWOR0ir7ftbL0/unxR1XWMOvTEHr/9lG1sKZoI0dJS
-Ee+VvuVFwdm/ABxfnveGCRrSHY7GAvFln3gC1Cst3NPPKbpznb3FiH/JAoGBAMwn
-P1Labt/OuzB70Vxve3TCeFA6jYzcYdA3riv1V0FIWoNgcQ742b0+6HDpEQgn4Rdb
-KiKz8hSplM1nx8NyWwS9r7gRQ9HIc0qC5S4A0A9QEbdKrkUiQDlwHgdDKPPCWih9
-qH05etiQ044BtOq7uXsWYqiIomOW/XyDUEhbRRFlAoGALmVnj01Mo9xFILfgzomh
-7D2nE4/+qNpRekGVHWVgfPci9XNnGVjTbnOf90xnptWm1Fbm/Lo+u4ZAHgL71dSg
-UREyhoJsCJxA++Jd6v1kMkxYgtiKQ+53n5U3jg2Wj2xMu93ZVx6Lt9t8UEvTq1qi
-n7p8IWSXaeW1pmJ43V4DTakCgYAFcSpj+ASqnKUqxrIvB52/4As7AESTs7A7z7Ap
-5dFcoSQgimqZHpMXU1z43Y2hrQZ4C+sUn71dRaP80b5mfF7mwnOzsWogZnqESvb3
-AfiJ3/WI8Emy+BXEMjPqt6SY0t56Y9cg925J5ZpuF6eN9lEccd1RZssFYpoBPrLe
-KuitbQKBgQC3DNejUqol2max6rf4h/GnwLE2BOTmFLnswexlw76p/63Jo1SaVpk7
-9nAltsqNCl4L/eAJ8hJdeTE5YVjYsgAVJrXZbiRfxHBMeHj9g0d1VafGqdomKf0R
-7Qytlcvsw8jn96ckEMPPLJF0bX5cu9S6lMyEbb6Ih41P13uvgP6ufg==
------END RSA PRIVATE KEY-----
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTest.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTest.java b/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTest.java
deleted file mode 100644
index 325baeb..0000000
--- a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTest.java
+++ /dev/null
@@ -1,49 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.spec.ticket.ServiceTicket;
-import org.apache.kerberos.kerb.spec.ticket.TgtTicket;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class KdcTest extends KdcTestBase {
-
- private String password = "123456";
-
- @Override
- protected void setUpKdcServer() throws Exception {
- super.setUpKdcServer();
- kdcServer.createPrincipal(clientPrincipal, password);
- }
-
- @Test
- public void testKdc() throws Exception {
- kdcServer.start();
- Assert.assertTrue(kdcServer.isStarted());
-
- krbClnt.init();
- TgtTicket tgt = krbClnt.requestTgtTicket(clientPrincipal, password, null);
- Assert.assertNotNull(tgt);
-
- ServiceTicket tkt = krbClnt.requestServiceTicket(tgt, serverPrincipal, null);
- Assert.assertNotNull(tkt);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTestBase.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTestBase.java b/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTestBase.java
deleted file mode 100644
index a692582..0000000
--- a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/KdcTestBase.java
+++ /dev/null
@@ -1,72 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.client.KrbClient;
-import org.apache.kerberos.kerb.server.TestKdcServer;
-import org.junit.After;
-import org.junit.Before;
-
-public abstract class KdcTestBase {
-
- protected String kdcRealm;
- protected String clientPrincipal;
- protected String serverPrincipal;
-
- protected String hostname = "localhost";
- protected short tcpPort = 8088;
- protected short udpPort = 8089;
-
- protected TestKdcServer kdcServer;
- protected KrbClient krbClnt;
-
- @Before
- public void setUp() throws Exception {
- setUpKdcServer();
- setUpClient();
- }
-
- protected void setUpKdcServer() throws Exception {
- kdcServer = new TestKdcServer();
- kdcServer.setKdcHost(hostname);
- kdcServer.setKdcTcpPort(tcpPort);
- kdcServer.setKdcUdpPort(udpPort);
- kdcServer.init();
-
- kdcRealm = kdcServer.getKdcRealm();
- clientPrincipal = "drankye@" + kdcRealm;
-
- serverPrincipal = "test-service/localhost@" + kdcRealm;
- kdcServer.createPrincipals(serverPrincipal);
- }
-
- protected void setUpClient() throws Exception {
- krbClnt = new KrbClient(hostname, tcpPort);
- krbClnt.setTimeout(5);
- krbClnt.setKdcRealm(kdcServer.getKdcRealm());
- }
-
-
-
- @After
- public void tearDown() throws Exception {
- kdcServer.stop();
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithCertKdcTest.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithCertKdcTest.java b/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithCertKdcTest.java
deleted file mode 100644
index eeb9e62..0000000
--- a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithCertKdcTest.java
+++ /dev/null
@@ -1,90 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.KrbException;
-import org.apache.kerberos.kerb.spec.ticket.ServiceTicket;
-import org.apache.kerberos.kerb.spec.ticket.TgtTicket;
-import org.haox.pki.Pkix;
-import org.junit.Assert;
-import org.junit.Test;
-
-import java.io.IOException;
-import java.io.InputStream;
-import java.security.GeneralSecurityException;
-import java.security.PrivateKey;
-import java.security.cert.Certificate;
-
-/**
- openssl genrsa -out cakey.pem 2048
- openssl req -key cakey.pem -new -x509 -out cacert.pem -days 3650
- vi extensions.kdc
- openssl genrsa -out kdckey.pem 2048
- openssl req -new -out kdc.req -key kdckey.pem
- env REALM=SH.INTEL.COM openssl x509 -req -in kdc.req -CAkey cakey.pem \
- -CA cacert.pem -out kdc.pem -days 365 -extfile extensions.kdc -extensions kdc_cert -CAcreateserial
- */
-public class WithCertKdcTest extends KdcTestBase {
-
- private Certificate userCert;
- private PrivateKey userKey;
-
- @Override
- protected void setUpClient() throws Exception {
- super.setUpClient();
-
- loadCredentials();
- }
-
- @Override
- protected void setUpKdcServer() throws Exception {
- super.setUpKdcServer();
- kdcServer.createPrincipals(clientPrincipal);
- }
-
- //@Test
- public void testKdc() throws Exception {
- Assert.assertNotNull(userCert);
-
- kdcServer.start();
- Assert.assertTrue(kdcServer.isStarted());
- krbClnt.init();
-
- TgtTicket tgt = null;
- try {
- tgt = krbClnt.requestTgtTicket(clientPrincipal, userCert, userKey, null);
- } catch (KrbException te) {
- Assert.assertTrue(te.getMessage().contains("timeout"));
- return;
- }
- Assert.assertNull(tgt);
-
- ServiceTicket tkt = krbClnt.requestServiceTicket(tgt, serverPrincipal, null);
- Assert.assertNull(tkt);
- }
-
- private void loadCredentials() throws IOException, GeneralSecurityException {
- InputStream res = getClass().getResourceAsStream("/usercert.pem");
- userCert = Pkix.getCerts(res).iterator().next();
-
- res = getClass().getResourceAsStream("/userkey.pem");
- userKey = Pkix.getPrivateKey(res, null);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithTokenKdcTest.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithTokenKdcTest.java b/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithTokenKdcTest.java
deleted file mode 100644
index e47cff4..0000000
--- a/haox-kerb/kerb-kdc-test/src/test/java/org/apache/kerberos/kerb/server/WithTokenKdcTest.java
+++ /dev/null
@@ -1,57 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.KrbException;
-import org.apache.kerberos.kerb.spec.ticket.ServiceTicket;
-import org.apache.kerberos.kerb.spec.ticket.TgtTicket;
-import org.haox.token.KerbToken;
-import org.junit.Assert;
-import org.junit.Test;
-
-public class WithTokenKdcTest extends KdcTestBase {
-
- private KerbToken token;
-
- @Override
- protected void setUpKdcServer() throws Exception {
- super.setUpKdcServer();
- kdcServer.createPrincipals(clientPrincipal);
- }
-
- //@Test
- public void testKdc() throws Exception {
- kdcServer.start();
- Assert.assertTrue(kdcServer.isStarted());
- krbClnt.init();
-
- TgtTicket tgt = null;
- try {
- tgt = krbClnt.requestTgtTicket(clientPrincipal, token, null);
- } catch (KrbException te) {
- Assert.assertTrue(te.getMessage().contains("timeout"));
- return;
- }
- Assert.assertNull(tgt);
-
- ServiceTicket tkt = krbClnt.requestServiceTicket(tgt, serverPrincipal, null);
- Assert.assertNull(tkt);
- }
-}
\ No newline at end of file
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-server/pom.xml
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-server/pom.xml b/haox-kerb/kerb-server/pom.xml
deleted file mode 100644
index 0fd7984..0000000
--- a/haox-kerb/kerb-server/pom.xml
+++ /dev/null
@@ -1,61 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!--
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License. See accompanying LICENSE file.
--->
-<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
- <modelVersion>4.0.0</modelVersion>
-
- <parent>
- <groupId>org.haox</groupId>
- <artifactId>haox-kerb</artifactId>
- <version>1.0-SNAPSHOT</version>
- </parent>
-
- <artifactId>kerb-server</artifactId>
-
- <name>Haox-kerb Server</name>
- <description>Haox-kerb Server</description>
-
- <dependencies>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>haox-config</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>kerb-core</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>kerb-common</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>kerb-identity</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>haox-event</artifactId>
- <version>${project.version}</version>
- </dependency>
- <dependency>
- <groupId>org.haox</groupId>
- <artifactId>haox-pkix</artifactId>
- <version>${project.version}</version>
- </dependency>
- </dependencies>
-</project>
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfig.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfig.java b/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfig.java
deleted file mode 100644
index 75db95d..0000000
--- a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfig.java
+++ /dev/null
@@ -1,153 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.haox.config.Conf;
-import org.apache.kerberos.kerb.common.KrbConfHelper;
-import org.apache.kerberos.kerb.spec.common.EncryptionType;
-
-import java.util.List;
-
-public class KdcConfig {
- protected Conf conf;
-
- public KdcConfig() {
- this.conf = new Conf();
- }
-
- public Conf getConf() {
- return this.conf;
- }
-
- public boolean enableDebug() {
- return conf.getBoolean(KdcConfigKey.KRB_DEBUG);
- }
-
- public String getKdcServiceName() {
- return conf.getString(KdcConfigKey.KDC_SERVICE_NAME);
- }
-
- public String getWorkDir() {
- return conf.getString(KdcConfigKey.WORK_DIR);
- }
-
- public String getKdcHost() {
- return conf.getString(KdcConfigKey.KDC_HOST);
- }
-
- public short getKdcTcpPort() {
- Integer kdcTcpPort = KrbConfHelper.getIntUnderSection(conf, KdcConfigKey.KDC_TCP_PORT);
- return kdcTcpPort.shortValue();
- }
-
- public short getKdcUdpPort() {
- Integer kdcUdpPort = KrbConfHelper.getIntUnderSection(conf, KdcConfigKey.KDC_UDP_PORT);
- return kdcUdpPort.shortValue();
- }
-
- public String getKdcRealm() {
- return conf.getString(KdcConfigKey.KDC_REALM);
- }
-
- public String getKdcDomain() {
- return conf.getString(KdcConfigKey.KDC_DOMAIN);
- }
-
- public boolean isPreauthRequired() {
- return conf.getBoolean(KdcConfigKey.PREAUTH_REQUIRED);
- }
-
- public String getTgsPrincipal() {
- return conf.getString(KdcConfigKey.TGS_PRINCIPAL);
- }
-
- public long getAllowableClockSkew() {
- return conf.getLong(KdcConfigKey.ALLOWABLE_CLOCKSKEW);
- }
-
- public boolean isEmptyAddressesAllowed() {
- return conf.getBoolean(KdcConfigKey.EMPTY_ADDRESSES_ALLOWED);
- }
-
- public boolean isForwardableAllowed() {
- return conf.getBoolean(KdcConfigKey.FORWARDABLE_ALLOWED);
- }
-
- public boolean isPostdatedAllowed() {
- return conf.getBoolean(KdcConfigKey.POSTDATED_ALLOWED);
- }
-
- public boolean isProxiableAllowed() {
- return conf.getBoolean(KdcConfigKey.PROXIABLE_ALLOWED);
- }
-
- public boolean isRenewableAllowed() {
- return conf.getBoolean(KdcConfigKey.RENEWABLE_ALLOWED);
- }
-
- public long getMaximumRenewableLifetime() {
- return conf.getLong(KdcConfigKey.MAXIMUM_RENEWABLE_LIFETIME);
- }
-
- public long getMaximumTicketLifetime() {
- return conf.getLong(KdcConfigKey.MAXIMUM_TICKET_LIFETIME);
- }
-
- public long getMinimumTicketLifetime() {
- return conf.getLong(KdcConfigKey.MINIMUM_TICKET_LIFETIME);
- }
-
- public List<EncryptionType> getEncryptionTypes() {
- List<String> eTypes = conf.getList(KdcConfigKey.ENCRYPTION_TYPES);
- return KrbConfHelper.getEncryptionTypes(eTypes);
- }
-
- public boolean isPaEncTimestampRequired() {
- return conf.getBoolean(KdcConfigKey.PA_ENC_TIMESTAMP_REQUIRED);
- }
-
- public boolean isBodyChecksumVerified() {
- return conf.getBoolean(KdcConfigKey.VERIFY_BODY_CHECKSUM);
- }
-
- public String getDefaultLoggingLocation() {
- return KrbConfHelper.getStringUnderSection(conf, KdcConfigKey.DEFAULT);
- }
-
- public String getKdcLoggingLocation() {
- return KrbConfHelper.getStringUnderSection(conf, KdcConfigKey.KDC);
- }
-
- public String getAdminLoggingLocation() {
- return KrbConfHelper.getStringUnderSection(conf, KdcConfigKey.ADMIN_SERVER);
- }
-
- public boolean isRestrictAnonymousToTgt() {
- return KrbConfHelper.getBooleanUnderSection(conf, KdcConfigKey.RESTRICT_ANONYMOUS_TO_TGT);
- }
-
- public int getKdcMaxDgramReplySize() {
- return KrbConfHelper.getIntUnderSection(conf, KdcConfigKey.KDC_MAX_DGRAM_REPLY_SIZE);
- }
-
- public String[] getLdapKerberosContainerDn() {
- return KrbConfHelper.getStringArrayUnderSection(conf, KdcConfigKey.LDAP_KERBEROS_CONTAINER_DN);
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfigKey.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfigKey.java b/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfigKey.java
deleted file mode 100644
index 54c5703..0000000
--- a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcConfigKey.java
+++ /dev/null
@@ -1,95 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.haox.config.ConfigKey;
-import org.apache.kerberos.kerb.common.SectionConfigKey;
-
-public enum KdcConfigKey implements SectionConfigKey {
- KRB_DEBUG(true),
- WORK_DIR,
- KDC_SERVICE_NAME("Haox_KDC_Server"),
- KDC_HOST("127.0.0.1"),
- KDC_UDP_PORT(8016, "kdcdefaults"),
- KDC_TCP_PORT(8015, "kdcdefaults"),
- KDC_DOMAIN("example.com"),
- KDC_REALM("EXAMPLE.COM"),
- TGS_PRINCIPAL("krbtgt@EXAMPLE.COM"),
- PREAUTH_REQUIRED(true),
- ALLOWABLE_CLOCKSKEW(5 * 60L),
- EMPTY_ADDRESSES_ALLOWED(true),
- PA_ENC_TIMESTAMP_REQUIRED(true),
- MAXIMUM_TICKET_LIFETIME(24 * 3600L),
- MINIMUM_TICKET_LIFETIME(1 * 3600L),
- MAXIMUM_RENEWABLE_LIFETIME(48 * 3600L),
- FORWARDABLE_ALLOWED(true),
- POSTDATED_ALLOWED(true),
- PROXIABLE_ALLOWED(true),
- RENEWABLE_ALLOWED(true),
- VERIFY_BODY_CHECKSUM(true),
- ENCRYPTION_TYPES(new String[] { "aes128-cts-hmac-sha1-96", "des3-cbc-sha1-kd" }),
- RESTRICT_ANONYMOUS_TO_TGT(false, "kdcdefaults"),
- KDC_MAX_DGRAM_REPLY_SIZE(4096, "kdcdefaults"),
-
- //logging location TODO the default log location need to be determinded.
- DEFAULT(null, "logging"),
- KDC(null, "logging"),
- ADMIN_SERVER(null, "logging"),
-
- //dbdefaults
- LDAP_KERBEROS_CONTAINER_DN(null, "dbdefaults");
-
- private Object defaultValue;
- /**
- * The name of a section where a config key is contained in MIT Kerberos config file.
- */
- private String sectionName;
-
- private KdcConfigKey() {
- this.defaultValue = null;
- }
-
- private KdcConfigKey(Object defaultValue) {
- this.defaultValue = defaultValue;
- }
-
- private KdcConfigKey(Object defaultValue, String sectionName) {
- this(defaultValue);
- this.sectionName = sectionName;
- }
-
- /**
- * Use the propertyKey, we can get the configuration value from Object Conf.
- */
- @Override
- public String getPropertyKey() {
- return name().toLowerCase();
- }
-
- @Override
- public Object getDefaultValue() {
- return this.defaultValue;
- }
-
- @Override
- public String getSectionName() {
- return sectionName;
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcContext.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcContext.java b/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcContext.java
deleted file mode 100644
index 431df70..0000000
--- a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcContext.java
+++ /dev/null
@@ -1,91 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.identity.IdentityService;
-import org.apache.kerberos.kerb.server.preauth.PreauthHandler;
-import org.apache.kerberos.kerb.server.replay.ReplayCheckService;
-
-import java.util.List;
-
-public class KdcContext {
- private KdcConfig config;
- private List<String> supportedKdcRealms;
- private String kdcRealm;
- private IdentityService identityService;
- private ReplayCheckService replayCache;
- private PreauthHandler preauthHandler;
-
- public void init(KdcConfig config) {
- this.config = config;
- }
-
- public KdcConfig getConfig() {
- return config;
- }
-
- public void setPreauthHandler(PreauthHandler preauthHandler) {
- this.preauthHandler = preauthHandler;
- }
-
- public PreauthHandler getPreauthHandler() {
- return this.preauthHandler;
- }
-
- public List<String> getSupportedKdcRealms() {
- return supportedKdcRealms;
- }
-
- public void setSupportedKdcRealms(List<String> supportedKdcRealms) {
- this.supportedKdcRealms = supportedKdcRealms;
- }
-
- public void setKdcRealm(String realm) {
- this.kdcRealm = realm;
- }
-
- public String getServerRealm() {
- return config.getKdcRealm();
- }
-
- public String getKdcRealm() {
- if (kdcRealm != null) {
- return kdcRealm;
- }
- return config.getKdcRealm();
- }
-
- public void setReplayCache(ReplayCheckService replayCache) {
- this.replayCache = replayCache;
- }
-
- public ReplayCheckService getReplayCache() {
- return replayCache;
- }
-
- public void setIdentityService(IdentityService identityService) {
- this.identityService = identityService;
- }
-
-
- public IdentityService getIdentityService() {
- return identityService;
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcHandler.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcHandler.java b/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcHandler.java
deleted file mode 100644
index 086487f..0000000
--- a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcHandler.java
+++ /dev/null
@@ -1,148 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.common.KrbUtil;
-import org.apache.kerberos.kerb.identity.IdentityService;
-import org.apache.kerberos.kerb.server.preauth.PreauthHandler;
-import org.apache.kerberos.kerb.server.replay.ReplayCheckService;
-import org.apache.kerberos.kerb.server.request.AsRequest;
-import org.apache.kerberos.kerb.server.request.KdcRequest;
-import org.apache.kerberos.kerb.server.request.TgsRequest;
-import org.apache.kerberos.kerb.KrbException;
-import org.apache.kerberos.kerb.spec.common.KrbMessage;
-import org.apache.kerberos.kerb.spec.common.KrbMessageType;
-import org.apache.kerberos.kerb.spec.kdc.AsReq;
-import org.apache.kerberos.kerb.spec.kdc.KdcReq;
-import org.apache.kerberos.kerb.spec.kdc.TgsReq;
-import org.apache.haox.transport.MessageHandler;
-import org.apache.haox.transport.Transport;
-import org.apache.haox.transport.event.MessageEvent;
-import org.apache.haox.transport.tcp.TcpTransport;
-
-import java.net.InetSocketAddress;
-import java.nio.ByteBuffer;
-import java.util.ArrayList;
-import java.util.HashMap;
-import java.util.List;
-import java.util.Map;
-
-public class KdcHandler extends MessageHandler {
-
- private List<String> kdcRealms = new ArrayList<String>(1);
- private Map<String, KdcContext> kdcContexts;
-
- private KdcConfig kdcConfig;
- private PreauthHandler preauthHandler;
-
- // TODO: per realm for below
- private IdentityService identityService;
- private ReplayCheckService replayCheckService;
-
- /**
- * Should be called when all the necessary properties are set
- */
- public void init() {
- loadKdcRealms();
-
- preauthHandler = new PreauthHandler();
- preauthHandler.init(kdcConfig);
-
- kdcContexts = new HashMap<String, KdcContext>(1);
- for (String realm : kdcRealms) {
- initRealmContext(realm);
- }
- }
-
- private void initRealmContext(String kdcRealm) {
- KdcContext kdcContext = new KdcContext();
- kdcContext.init(kdcConfig);
- kdcContext.setKdcRealm(kdcRealm);
- kdcContext.setPreauthHandler(preauthHandler);
- kdcContext.setIdentityService(identityService);
- kdcContext.setReplayCache(replayCheckService);
-
- kdcContexts.put(kdcRealm, kdcContext);
- }
-
- public void setKdcRealm(String realm) {
- this.kdcRealms.add(realm);
- }
-
- public void setConfig(KdcConfig config) {
- this.kdcConfig = config;
- }
-
- public void setIdentityService(IdentityService identityService) {
- this.identityService = identityService;
- }
-
- @Override
- protected void handleMessage(MessageEvent event) throws Exception {
- ByteBuffer message = event.getMessage();
- Transport transport = event.getTransport();
-
- KrbMessage krbRequest = KrbUtil.decodeMessage(message);
- KdcRequest kdcRequest = null;
-
- KrbMessageType messageType = krbRequest.getMsgType();
- if (messageType == KrbMessageType.TGS_REQ || messageType == KrbMessageType.AS_REQ) {
- KdcReq kdcReq = (KdcReq) krbRequest;
- String realm = getRequestRealm(kdcReq);
- if (realm == null || !kdcContexts.containsKey(realm)) {
- throw new KrbException("Invalid realm from kdc request: " + realm);
- }
-
- KdcContext kdcContext = kdcContexts.get(realm);
- if (messageType == KrbMessageType.TGS_REQ) {
- kdcRequest = new TgsRequest((TgsReq) kdcReq, kdcContext);
- } else if (messageType == KrbMessageType.AS_REQ) {
- kdcRequest = new AsRequest((AsReq) kdcReq, kdcContext);
- }
- }
-
- InetSocketAddress clientAddress = transport.getRemoteAddress();
- kdcRequest.setClientAddress(clientAddress.getAddress());
- boolean isTcp = (transport instanceof TcpTransport);
- kdcRequest.isTcp(isTcp);
-
- kdcRequest.process();
-
- KrbMessage krbResponse = kdcRequest.getReply();
- KrbUtil.sendMessage(krbResponse, transport);
- }
-
- private void loadKdcRealms() {
- if (kdcRealms.isEmpty()) {
- kdcRealms.add(kdcConfig.getKdcRealm());
- }
- }
-
- private String getRequestRealm(KdcReq kdcReq) {
- String realm = kdcReq.getReqBody().getRealm();
- if (realm == null && kdcReq.getReqBody().getCname() != null) {
- realm = kdcReq.getReqBody().getCname().getRealm();
- }
- if (realm == null || realm.isEmpty()) {
- realm = "NULL-KDC-REALM";
- }
- return realm;
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcServer.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcServer.java b/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcServer.java
deleted file mode 100644
index db101c1..0000000
--- a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/KdcServer.java
+++ /dev/null
@@ -1,196 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.haox.event.EventHub;
-import org.apache.kerberos.kerb.common.KrbStreamingDecoder;
-import org.apache.kerberos.kerb.identity.IdentityService;
-import org.apache.haox.transport.Network;
-
-import java.io.File;
-
-public class KdcServer {
- private String kdcHost;
- private short kdcTcpPort;
- private short kdcUdpPort;
- private String kdcRealm;
-
- private boolean started;
- private String serviceName = "HaoxKdc";
-
- private KdcHandler kdcHandler;
- private EventHub eventHub;
-
- protected KdcConfig kdcConfig;
- protected IdentityService identityService;
- protected File workDir;
-
- public KdcServer() {
- kdcConfig = new KdcConfig();
- }
-
- public void init() {
- initConfig();
-
- initWorkDir();
- }
-
- protected void initWorkDir() {
- String path = kdcConfig.getWorkDir();
- File file;
- if (path != null) {
- file = new File(path);
- file.mkdirs();
- } else {
- file = new File(".");
- }
-
- this.workDir = file;
- }
-
- protected void initConfig() {}
-
- public void start() {
- try {
- doStart();
- } catch (Exception e) {
- throw new RuntimeException("Failed to start " + getServiceName(), e);
- }
-
- started = true;
- }
-
- public String getKdcRealm() {
- if (kdcRealm != null) {
- return kdcRealm;
- }
- return kdcConfig.getKdcRealm();
- }
-
- private String getKdcHost() {
- if (kdcHost != null) {
- return kdcHost;
- }
- return kdcConfig.getKdcHost();
- }
-
- private short getKdcTcpPort() {
- if (kdcTcpPort > 0) {
- return kdcTcpPort;
- }
- return kdcConfig.getKdcTcpPort();
- }
-
- private short getKdcUdpPort() {
- if (kdcUdpPort > 0) {
- return kdcUdpPort;
- }
- return kdcConfig.getKdcUdpPort();
- }
-
- public void setKdcHost(String kdcHost) {
- this.kdcHost = kdcHost;
- }
-
- public void setKdcTcpPort(short kdcTcpPort) {
- this.kdcTcpPort = kdcTcpPort;
- }
-
- public void setKdcUdpPort(short kdcUdpPort) {
- this.kdcUdpPort = kdcUdpPort;
- }
-
- public void setKdcRealm(String realm) {
- this.kdcRealm = realm;
- }
-
- public boolean enableDebug() {
- return kdcConfig.enableDebug();
- }
-
- protected void doStart() throws Exception {
- prepareHandler();
-
- this.eventHub = new EventHub();
-
- eventHub.register(kdcHandler);
-
- Network network = new Network();
- network.setStreamingDecoder(new KrbStreamingDecoder());
- eventHub.register(network);
-
- eventHub.start();
- network.tcpListen(getKdcHost(), getKdcTcpPort());
- network.udpListen(getKdcHost(), getKdcUdpPort());
- }
-
- private void prepareHandler() {
- this.kdcHandler = new KdcHandler();
- kdcHandler.setConfig(kdcConfig);
- kdcHandler.setIdentityService(identityService);
- if (kdcRealm != null) {
- kdcHandler.setKdcRealm(kdcRealm);
- }
- kdcHandler.init();
- }
-
- public void stop() {
- try {
- doStop();
- } catch (Exception e) {
- throw new RuntimeException("Failed to stop " + getServiceName());
- }
- }
-
- protected void doStop() throws Exception {
- eventHub.stop();
- }
-
- public KdcConfig getConfig() {
- return kdcConfig;
- }
-
- public boolean isStarted() {
- return started;
- }
-
- protected void setStarted( boolean started ) {
- this.started = started;
- }
-
- protected void setServiceName( String name ) {
- this.serviceName = name;
- }
-
- protected String getServiceName() {
- if (serviceName != null) {
- return serviceName;
- }
- return kdcConfig.getKdcServiceName();
- }
-
- public IdentityService getIdentityService() {
- return identityService;
- }
-
- protected void setIdentityService(IdentityService identityService) {
- this.identityService = identityService;
- }
-}
http://git-wip-us.apache.org/repos/asf/directory-kerberos/blob/ceacb982/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/SimpleKdcServer.java
----------------------------------------------------------------------
diff --git a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/SimpleKdcServer.java b/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/SimpleKdcServer.java
deleted file mode 100644
index 6134afd..0000000
--- a/haox-kerb/kerb-server/src/main/java/org/apache/kerberos/kerb/server/SimpleKdcServer.java
+++ /dev/null
@@ -1,43 +0,0 @@
-/**
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- *
- */
-package org.apache.kerberos.kerb.server;
-
-import org.apache.kerberos.kerb.identity.IdentityService;
-import org.apache.kerberos.kerb.identity.backend.SimpleIdentityBackend;
-
-import java.io.File;
-
-public class SimpleKdcServer extends KdcServer {
-
- public SimpleKdcServer() {
- super();
- }
-
- public void init() {
- super.init();
- initIdentityService();
- }
-
- protected void initIdentityService() {
- File identityFile = new File(workDir, "simplekdb.dat");
- IdentityService identityService = new SimpleIdentityBackend(identityFile);
- setIdentityService(identityService);
- }
-}
\ No newline at end of file