mirror of https://github.com/OpenIdentityPlatform/OpenDJ.git

Chris Ridd
14.20.2013 46824550ba084705c3fbb1475b200da1f84b471a
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
<?xml version="1.0" encoding="UTF-8"?>
<!--
  ! CDDL HEADER START
  !
  ! The contents of this file are subject to the terms of the
  ! Common Development and Distribution License, Version 1.0 only
  ! (the "License").  You may not use this file except in compliance
  ! with the License.
  !
  ! You can obtain a copy of the license at
  ! trunk/opends/resource/legal-notices/OpenDS.LICENSE
  ! or https://OpenDS.dev.java.net/OpenDS.LICENSE.
  ! See the License for the specific language governing permissions
  ! and limitations under the License.
  !
  ! When distributing Covered Code, include this CDDL HEADER in each
  ! file and include the License file at
  ! trunk/opends/resource/legal-notices/OpenDS.LICENSE.  If applicable,
  ! add the following below this CDDL HEADER, with the fields enclosed
  ! by brackets "[]" replaced with your own identifying information:
  !      Portions Copyright [yyyy] [name of copyright owner]
  !
  ! CDDL HEADER END
  !
  !
  !      Copyright 2007-2008 Sun Microsystems, Inc.
  !      Portions Copyright 2010-2013 ForgeRock AS
  !      Portions Copyright 2012 Dariusz Janny <dariusz.janny@gmail.com>
  ! -->
<adm:managed-object name="crypt-password-storage-scheme"
  plural-name="crypt-password-storage-schemes"
  package="org.opends.server.admin.std"
  extends="password-storage-scheme"
  xmlns:adm="http://www.opends.org/admin"
  xmlns:ldap="http://www.opends.org/admin-ldap">
  <adm:synopsis>
    The
    <adm:user-friendly-name />
    provides a mechanism for encoding user passwords like Unix crypt does.
    Like on most Unix systems, the password may be encrypted using different
    algorithms, either Unix crypt, md5, sha256 or sha512.
  </adm:synopsis>
  <adm:description>
    This implementation contains an implementation for the user
    password syntax, with a storage scheme name of "CRYPT". Like on most
    Unixes, the "CRYPT" storage scheme has different algorithms, the default
    being the Unix crypt.
 
    Even though the Unix crypt is a one-way digest, it
    is relatively weak by today's standards. Because it supports
    only a 12-bit salt (meaning that there are only 4096 possible ways to
    encode a given password), it is also vulnerable to dictionary attacks.
    You should therefore use this storage scheme only in cases where an
    external application expects to retrieve the password and verify it
    outside of the directory, rather than by performing an LDAP bind.
  </adm:description>
  <adm:profile name="ldap">
    <ldap:object-class>
      <ldap:name>ds-cfg-crypt-password-storage-scheme</ldap:name>
      <ldap:superior>ds-cfg-password-storage-scheme</ldap:superior>
    </ldap:object-class>
  </adm:profile>
  <adm:property-override name="java-class" advanced="true">
    <adm:default-behavior>
      <adm:defined>
        <adm:value>
          org.opends.server.extensions.CryptPasswordStorageScheme
        </adm:value>
      </adm:defined>
    </adm:default-behavior>
  </adm:property-override>
    <adm:property name="crypt-password-storage-encryption-algorithm" mandatory="true">
    <adm:synopsis>
      Specifies the algorithm to use to encrypt new passwords.
    </adm:synopsis>
    <adm:description>
      Select the crypt algorithm to use to encrypt new passwords.
      The value can either be "unix", which means the password is encrypted
      with the Unix crypt algorithm, or md5 which means the password is
      encrypted with the BSD MD5 algorithm and has a $1$ prefix,
      or sha256 which means the password is encrypted with the SHA256 algorithm
      and has a $5$ prefix, or sha512 which means the password is encrypted with
      the SHA512 algorithm and has a $6$ prefix.
    </adm:description>
    <adm:default-behavior>
      <adm:defined>
        <adm:value>unix</adm:value>
      </adm:defined>
    </adm:default-behavior>
    <adm:syntax>
      <adm:enumeration>
        <adm:value name="unix">
          <adm:synopsis>
            New passwords are encrypted with the Unix crypt algorithm.
          </adm:synopsis>
        </adm:value>
        <adm:value name="md5">
          <adm:synopsis>
            New passwords are encrypted with the BSD MD5 algorithm.
          </adm:synopsis>
        </adm:value>
        <adm:value name="sha256">
          <adm:synopsis>
            New passwords are encrypted with the Unix crypt SHA256 algorithm.
          </adm:synopsis>
        </adm:value>
        <adm:value name="sha512">
          <adm:synopsis>
            New passwords are encrypted with the Unix crypt SHA512 algorithm.
          </adm:synopsis>
        </adm:value>
      </adm:enumeration>
    </adm:syntax>
    <adm:profile name="ldap">
      <ldap:attribute>
        <ldap:name>ds-cfg-crypt-password-storage-encryption-algorithm</ldap:name>
      </ldap:attribute>
    </adm:profile>
  </adm:property>
</adm:managed-object>