私は自分のビジネスから AD のダンプを処理しています。ユーザー名、名前、およびグループが与えられます。私の最終的な目標は、csv ファイルを定期的にダンプし、SSIS パッケージがそれを取得し、グループからすべてのゴミを削除してから、ユーザーが誰かの名前またはユーザー名を検索できるようにレポート フィードを作成することです。所属するグループを一覧表示します。
私が直面している問題は、グループ セクションが大量のゴミで満たされていることです。たとえば、次のようなものが与えられます。
CN=Standards of Conduct,CN=Users,DC=rlhk,DC=local|CN=ManagementLevel-9,OU=Groups,OU=rem,DC=rlhk,DC=local
これは非常に短いものです (3000 文字を超えるものもあります)。この中から抽出したい部分は、行動基準とManagementLevel-9です。これは半ランダムだと言います。明らかに全員が同じグループに属しているわけではなく、すべてが同じ順序であるとは思えないからです。
グループは常に |CN= の直後に続きます。最初の出現には | がありません。前は単に CN= です。
私は次のようなことを試しました:
SUBSTRING(Groups,FINDSTRING(Groups,"|CN=",1 ) + 3,FINDSTRING(Groups,",",1) - 4)
ただし、明らかに「| CN =」の最初の反復のみを取得し、それらすべてを取得する方法がわかりません。
ありがとうございました