質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
LDAP

LDAPは、ディレクトリデータベースにアクセスするためのプロトコルです。ディレクトリデータベースとは、ネットワークに存在するメールアドレスや環境などさまざまな情報を一元的に管理するサービスのことで、クライアントはLDAPサーバにアクセスしてユーザ名から検索や追加などの操作することができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

Q&A

0回答

1394閲覧

WEBーLDAPへのパスワードポリシーに準じたパスワード設定

what_a_cool

総合スコア5

LDAP

LDAPは、ディレクトリデータベースにアクセスするためのプロトコルです。ディレクトリデータベースとは、ネットワークに存在するメールアドレスや環境などさまざまな情報を一元的に管理するサービスのことで、クライアントはLDAPサーバにアクセスしてユーザ名から検索や追加などの操作することができます。

Java

Javaは、1995年にサン・マイクロシステムズが開発したプログラミング言語です。表記法はC言語に似ていますが、既存のプログラミング言語の短所を踏まえていちから設計されており、最初からオブジェクト指向性を備えてデザインされています。セキュリティ面が強力であることや、ネットワーク環境での利用に向いていることが特徴です。Javaで作られたソフトウェアは基本的にいかなるプラットフォームでも作動します。

0グッド

0クリップ

投稿2020/04/17 06:02

概要

LDAPで管理しているユーザ情報に対して、WEB画面からパスワードの変更操作を可能とするアプリケーションを作成しております。
パスワード変更時、LDAPで設定している「パスワードポリシー」に準拠したチェックがLDAPにて行われることを期待していたのですが、チェックが効かず、パスワード更新がされてしまいました。
実装方法について色々探したのですが、ポリシーを効かせるための実装が分からず、もしご存知の方がいらっしゃいましたら、以下の①または②の何れかご教授頂きたいです。

①LDAPでパスワードポリシー準拠のチェックを行い、そのチェック結果をJavaでハンドリングする方法
②LDAPで管理しているパスワードポリシーの情報は取得出来るので、それを元にWEBでのチェックは可能
(パスワードの最小桁数など)だが、一部ポリシーチェックの実現方法が不明(詳細は「補足」の2ポチ目に記載致しました)

Java(手打ちのため、ソース誤りはご容赦下さい。更新メソッドのみ抜き出して記載しております)

1@Autowird 2Private LdapTemplate ldapTemplate 3 4public void modify(){ 5 Name dn = LdapNameBuilder.newInstance() 6 .add("ou","aaaa") 7 .add("uid","bbbb") 8 .buil(); 9 10 DirContextOperations context = ldapTemplate.lookupContext(dn); 11 context.setAttributeValue("userPassword","xxx"); 12 13 ldapTemlate.modifyAttributes(context); 14}

開発環境

・STS4
・Java(spring-framework)

実行環境

・LinuxOS
・openLDAP/phpLDAPadmin

補足

・STSで開発してるため、springframework(もしくは通常のJavaAPI)を利用した実装方針で考えております。
・LDAPで登録されているパスワードポリシーのポリシー内容について取得することは出来るため、WEBアプリ側でも
一部ポリシーについてチェックは可能なのですが、以下ポリシーに関しては情報がLDAPにしか登録されていないため、
WEB側でもチェックすることができず手詰まりとなっています。

 <WEB側でチェックできないパスワードポリシー>
・世代チェック → 「何世代前に遡ってチェックを行うか?」という世代数は取得することが出来るが、変更前パスワードの履歴情報がLDAPにしかなく取得方法が不明のため、WEB側でチェックができない。
・パスワード有効期限チェック → 該当ユーザのパスワードの更新日がLDAP側にしかなく、取得方法が不明のため、WEBでのチェックが出来ない。

 <LDAPで登録しているパスワードポリシー>
最小桁数、世代数、有効期限など

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問