カテゴリー: ActiveDirectory

WINDOWS2008 APACHE2.4 WEBDAV で SUBVERSION ACTIVEDIRECTORY認証

DAV svn
SVNParentPath “C:\SVNテスト用共有フォルダー”
SVNListParentPath on
AuthType Basic
AuthName “xxxxxx subversion repository”
AuthBasicProvider ldap
AuthLDAPUrl “ldap://192.121.133.83:389/dc=bdom,dc=sample,dc=com?sAMAccountName?sub?(objectClass=*)” NONE
AuthLDAPBindDN “ldapuser@bdom.sample.com”
AuthLDAPBindPassword csd#dfre23
LDAPReferrals Off <- Apache2.4の時はこっち
# AuthzLDAPAuthoritative Off <- Apache2.2の時はこっちらしいけど2.4だとエラーになる
Require ldap-user user1
# Require valid-user

Windows 2008 Server R2 のIIS で WEVDAV

1.ActiveDirectoryで認証させる場合
Windows認証 ダイジェスト認証を有効にしておく
Windows認証とダイジェスト認証は役割サービスの追加でインストールしておかなければならない。

IISのWEVDAVのアクセス権はファイルフォルダーのセキュリティタグで設定する。
サーバのローカルアカウント IIS_IUSRS を入れておかないと
「500 – 内部サーバー エラーです。」になる。
その後さらに、アクセスしたい人のユーザアカウントを登録する。
だれをアクセス許可にするかはすべて、ファイルフォルダーのセキュリティタグで設定する。(<-ここが胆)

2.匿名認証する場合(誰でもアクセスOKにする場合)
デフォルトでユーザアカウントIUSRを使うので、セキュリティタグにIUSRを入れる必要ある
匿名認証をインストールして有効にしておく必要がある

3.ディレクトリの参照を有効にする
これをしないと、「403 – 許可されていません: アクセスが拒否されました。」になってしまう。

LDAP ActiveDirectory 参考資料

参考資料
 
アクセスする場合のDN or user は、CN=Administrator,CN=Users,DC=testdom,DC=com でも administrator@testdom.com でもよい
どっちの形式でもよい
Base DN=”CN=Users,DC=testdom,DC=com” で見たとき
各ユーザの見え方はこうなる DN=”CN=鈴木 花子,CN=Users,DC=testdom,DC=com”
その時 DN=”CN=鈴木 花子,CN=Users,DC=testdom,DC=com” 各ユーザはこれがユーザIDになる
LDAPLIST
 
登録ユーザ一覧を見る場合は、ビルトインアカウントはいらないので、フィルターは以下のようになる。
(&(&(&(objectCategory=person)(objectClass=user))(objectClass=organizationalPerson))(!(isCriticalSystemObject=TRUE)))
LDAPLIST

 

ActiveDirectoryの入ったサーバとLDAPでSSL通信を行うためには、ドメインの証明書とサーバ証明書を入れたキーストア(keystore)を作成する

ActiveDirectoryの入ったサーバとLDAPでSSL通信を行うためには、ドメインの証明書とサーバ証明書を入れたキーストア(keystore)を作成する必要があります。
1.ActiveDirectoryのドメインの証明書とサーバ証明書の取得方法
(1)ドメインコントローラに証明書サービスをインストールする。
サーバの役割の追加で ActiveDirectory 証明書サービスを選択して追加する。
image001
image002
image003
image004
image005
image006
image007
image008
image009
インストールを行う。インストールが完了したら再起動する。

再起動しないとドメインコントローラーの証明書が表示されない。

(2)インストールした認証局の証明書とドメインコントローラサーバーの証明書を取得する。
インストールした認証局の証明書の名前は適当に cacert.cer とする。
image010
ドメインコントローラサーバーの証明書の名前は適当に dcsrv.cer とする。
image011
(3)Javaのキーツール( keytool.exe )を使って、キーストアーを作成する
keytool.exe -import -trustcacerts -alias caroot -file “caroot.cer” -keystore “cacerts”
keytool.exe -import -trustcacerts -alias dcsrv -file “dcsrv.cer” -keystore “cacerts”
この場合のキーストアーのファイルの名前は cacerts というファイル名になる。
キーストアーは信頼した認証局やサーバーの証明書が入るため、alias (別名) がぶつからないようにしなくてはいけないので -alias で指定する。
以上で終わり・・・
 
 
 

 

Windows ファイル共有したのにつながらない場合の話

毎回毎回ファイル共有でのアクセスにははまる。

「要求された種類のログオンは、このコンピューターではユーザーに許可されていません。」

なんてことになったら。

ローカルポリシーを疑おう

ローカルポリシー->ユーザ権利の割り当て->ネットワーク経由でコンピュータにアクセス

ここになにが登録されているだろう。

君の所属しているグループはいるかい?

いなければ入れよう。

ActiveDirectoryサーバ配下のサーバーの場合はここで設定するのではなくて、ドメインコントローラのグループポリシーで設定しよう。

信頼関係接続している他のドメインからのアクセス等ではここが要注意ポイント。

共有にグループを登録してもポリシーではねられたらしょうがないね。

 

 

 

ActiveDirectoryからユーザを抜き出して他のActiveDirectoryに入れる

ldifde コマンドで抜き出す
[text]
C:\Documents and Settings\Administrator>ldifde -d “CN=Users,DC=example,DC=co,DC=jp” -f d:\foo.txt -u -l “cn,givenName,sn,objectclass,samAccountName,userPrincipalName,displayName,name”
[/text]

-l 属性リストを指定しないといろいろついてきて、インポートの時にエラーになる。
-u が付いているのは、unicode にするということ、unicode じゃないと日本語が読めない。

出力されたファイルからグループなどの余計なレコードを削除する。

ldifde コマンドで入れる
[text]
C:\Documents and Settings\Administrator>ldifde -i -f d:\foo.txt -u
[/text]

ldifdeコマンドでインポートしたユーザーアカウントは無効化した状態になっているので、インポート後に個別に有効化する必要がある。パスワードは空白になっている代わりに、次回ログオン時にパスワードの変更を求める設定になっている。

補足説明
こんなのが出てきたら ドメイン名が正しいか疑おうまたは、抜き出す時に変なものを抜き出しているかも
[text]
サーバー側のエラー: 0x209a 属性がセキュリティ アカウント マネージャー (SAM) によって所有されているため、属性にアクセスできません。
[/text]