0

WSO2 IS 5.0.0をセットアップしています。PDC であるWindows Server 2012 アクティブ ディレクトリに、外部読み取り/書き込み LDAP セカンダリ ユーザー ストアを作成しました。Active Directory を実行するWindows Server 2003サーバーもあります。最近の更新で、2003 サーバーのユーザーとグループが 2012 サーバーにコピーされました。

WSO2 で気付いた問題は、過去に 2003 AD サーバーで作成されたユーザー アカウントは、wso2 カーボン サイト ( https://ipアドレス:9443/carbon)にログインするときにパスワードを変更できないことです。 . パスワードを変更しようとすると、「ディレクトリ サービスにアクセスできません」というエラーが表示されます。ただし、2012 AD で作成されたアカウント (特定の方法で - 説明については以下を参照) は、ログインしてパスワードを正常に変更できます。

追加情報- AD サーバーでは、ユーザーは姓、名(コンマを含む) で表示されます。個人のユーザー名は、各 AD サーバーで同じです (名のイニシャル + 姓)。

2012 年にユーザーを作成し、名前をFirstname Lastname (カンマなし) で表示し、一般的なユーザー名 (最初のイニシャル + 姓) を使用すると、ユーザーは WSO2 Carbon サイトにログインしてパスワードを問題なく変更できます。姓、名の表示名を持つすべてのユーザーはログインできますが、パスワードを変更することはできません。

以前にこの問題を経験した人はいますか? ユーザーストアまたは AD に欠けている特定の設定はありますか?

4

2 に答える 2

0

Active Directory ユーザー アカウントを含む外部ユーザーストアを使用する場合、主に次の 2 つのことに注意する必要があります。

  • user-mgt.xml ファイルで、「ReadWriteLDAPUserStoreManager」ではなく、「ActiveDirectoryUserStoreManager」で終わるユーザーストアのクラスを指定してください。

  • UserNameAttribute プロパティのデフォルト値は、「uid」または「cn」に設定することをお勧めします。ただし、Active Directory には「uid」属性はありません。「cn」属性があり、ユーザー名は、名、スペース、姓の組み合わせとしてこの属性に入力されます。(これはあなたが見ているもののように聞こえます)。これには、Active Directory ユーザーとコンピューター ユーティリティの設定に応じて、姓、コンマ、名を含めることもできます。

ユーザーのユーザー ID の使用に関係なく、Identity Server で LDAP 検索を実行する必要があります (これは cn 属性の形式に関係なく変更されないため)。

Active Directory エントリでは、userid 値を含む属性は「sAMAccountName」と呼ばれます。したがって、Active Directory ユーザーストアの UserNameAttribute プロパティに使用する値は、属性「sAMAccountName」です。

注: UserNameSearchFilter プロパティでもこの値を使用する必要があります。

<Property name="UserNameAttribute">sAMAccountName</Property>
<Property name="UserNameSearchFilter">(&amp;(objectClass=user)(sAMAccountName=?))</Property>
于 2015-04-29T21:15:43.563 に答える