私たちのアプリケーションでは、すべての個人情報 (名前、電子メール、電話、部門、生年月日、雇用日、ライセンス/証明書、役割など) をどこに保存するかを評価しています。ユーザー認証/承認に LDAP/Active Directory を使用するため、これらのデータの少なくとも一部は LDAP サーバーに送られます。私たちの HR モジュールと他のアプリケーションもこれらの情報の一部を必要とし、それらの間に重複があります。すべての情報を LDAP に保存し、RDMS で LDAP ユーザーへの参照としてユーザー ID を使用し、ログイン プロセス中にユーザーのその他の詳細を入力することを考えています。私たちのアプリケーション以外にも、同じユーザー情報を使用する他のアプリケーションがあります。従業員の詳細を LDAP に保存しない場合、各システムでユーザー情報を複製して同期する必要があります。いずれにせよ、ログイン情報には LDAP が必要になります。
2 に答える
一般的に言えば、Active Directory は、あなたがリストしたような機密性の高い PII を配置するのに適した場所ではありません。このデータを保存できないという技術的な理由はまったくありませんが、セキュリティで保護することはより困難です。確かに克服できないわけではありませんが、HR データを HR に保持し、AD に必要な人口統計情報を同期することを強くお勧めします。
HR システムで従業員 ID の値を使用して、AD との関係を維持します。
当社では、ミドルウェアと1日3回更新される中間データベースを構築しました。ミドルウェアは、SAPからデータを生成するABAPリモート関数です。これは、SAP .NETコネクタを使用してリモート関数を呼び出し、そのデータを取得してOracleデータベースに保存するC#プログラムです。
このデータベースは、ActiveDirectoryと情報を交換するために使用されます。次に、Exchange、メッセンジャー、SharePointなどのシステムがこのActiveDirectoryの情報を取得します。他の内部システムもOracleデータベースにアクセスできます。私たちが経験した利点は、SAPとActiveDirectoryに毎回アクセスするためのオーバーヘッドを回避できることです。1日に3回しかアクセスしませんが、ユーザーは1秒ごとにOracleデータベースにアクセスします。
それが役に立てば幸い。