web-dev-qa-db-ja.com

Windows Server 2008 / R2:ユーザー名の最大長を変更しますか?

ローカルアカウントの標準の20文字のユーザー名の最大長の制限を変更する方法はありますか?

(具体的にはサーバー2008 R2)

8
Matias Nino

いいえ、20に固定されています。これは、下位互換性のためです。 Active Directory(SAMAccountNameフィールドを除く)では大きくできますが、ローカルでは大きくできません。

11
squillman

Sam-accountname属性を参照している必要があります。ログオン名は次の規則に従う必要があります これらのルール:

ログオン名のルール

ログオン名は次の規則に従う必要があります。

ローカルログオン名はワークステーション上で一意である必要があり、グローバルログオン名はドメイン全体で一意である必要があります。

ログオン名は最大104文字です。ただし、64文字を超えるログオン名を使用することは現実的ではありません。

Microsoft Windows NTバージョン4.0以前のログオン名がすべてのアカウントに付与されます。デフォルトでは、Windows 2000ログオン名の最初の20文字に設定されています。 Windows NTバージョン4.0以前のログオン名は、ドメイン全体で一意である必要があります。

Windows 2000コンピュータからドメインにログオンするユーザーは、ドメイン操作モードに関係なく、Windows 2000ログオン名またはWindows NTバージョン4.0以前のログオン名を使用できます。

GUIでは20文字の名前しか作成できないことに注意してください。20文字を超えるには、プログラムで名前を作成する必要があります。

9
Jim B

「GUIでは20文字の名前しか作成できないことに注意してください。20文字を超えるには、プログラムでそれらを作成する必要があります。」

私はその声明は間違っていると思います。プログラムで20文字を超えるユーザー名を作成することはできません。以下は、Windows Server 2008 R2で実行した関連するVB.NETコードです。 20文字以下のユーザー名を作成する場合に機能しますが、ユーザー名が20文字を超えると例外がスローされます。自分で試してみてください。心から、ジョセフ・ダヴォリ

コード:

Imports System.DirectoryServices    'Gives us access to Directory Services.


Function Blah() As Whatever


Dim strFNMILN As String = "Christopher.B.Robinson" 'NOTE: Twenty-two characters. Dim strFullName as string = "Christopher B. Robinson"


'Declare a new "DirectoryEntry" object variable and assign to it the entry for 'this computer (the computer on which this code is running). Dim DirectoryEntryThisComputer As New DirectoryEntry("WinNT://" & Environment.MachineName & ",computer")


'Declare a new "DirectoryEntry" object variable and name it "DirectoryEntryNewUser". 'Create a new user in the local directory and assign that user to our object variable. Dim DirectoryEntryNewUser As DirectoryEntry = DirectoryEntryThisComputer.Children.Add(strFNMILN, "user")


'Add the fullname of this user. DirectoryEntryNewUser.Invoke("Put", New Object() {"fullname", strFullName })


'Add a description value. DirectoryEntryNewUser.Invoke("Put", New Object() {"description", "This is a test user."})


'Set the password for this new user (14 character minimum). DirectoryEntryNewUser.Invoke("SetPassword", New Object() {"abcdefg1234567"})


'Save this new user to the local directory (this machine's directory). DirectoryEntryNewUser.CommitChanges()


. . End Function
5
Joseph Davoli

DSADDをW2K3 ADサーバーに使用していますが、「SAMID」の長さが21(21)文字であるため失敗します。

C:\Users\admin-of-change>DSAdd.exe user "CN=SharePoint Service Applications XYZ,OU=Users,OU=District UVW,OU=XYZ,DC=domain-universe,DC=int,DC=net" -samid "adm_xyz_SPServiceApps" -upn [email protected] -fn "SharePoint Service Applications" -ln "XYZ" -display "SharePoint Service Applications XYZ" -pwd "continue2013" -desc "Non Human Account" -office "Head Office" -email [email protected] -webpg "www.UnusualCompany.com" -title "SharePoint Service Applications XYZ" -company "X Y Z" -disabled no
dsadd failed:CN=SharePoint Service Applications XYZ,OU=Users,OU=District UVW,OU=XYZ,DC=domain-universe,DC=int,DC=net:The name provided is not a properly formed account name.
type dsadd /? for help.

┌─────────────────────────────────────┐
│ Executed Tue 07/02/2013 13:59:57.88 │ As [admin-of-change]
└─────────────────────────────────────┘

UPNを下げながら解決します。

C:\Users\admin-of-change>DSAdd.exe user "CN=SharePoint Service Applications XYZ,OU=Users,OU=District UVW,OU=XYZ,DC=domain-universe,DC=int,DC=net" -samid "adm_xyz_SPSvcApps" -upn [email protected] -fn "SharePoint Service Applications" -ln "XYZ" -display "SharePoint Service Applications XYZ" -pwd "continue2013" -desc "Non Human Account" -office "Head Office" -email [email protected] -webpg "www.UnusualCompany.com" -title "SharePoint Service Applications XYZ" -company "X Y Z" -disabled no
dsadd succeeded:CN=SharePoint Service Applications XYZ,OU=Users,OU=Users,OU=District UVW,OU=XYZ,DC=domain-universe,DC=int,DC=net

┌─────────────────────────────────────┐
│ Executed Tue 07/02/2013 14:06:21.08 │ As [admin-of-change]
└─────────────────────────────────────┘

改善のためのコメントは大歓迎です。

0
Rhak Kahr