[문의사항]
사내 웹 응용프로그램을 사용하여 AD에 직접 인증이 가능한가요?
[문의답변]
네 가능합니다.
AD 는 LDAP(인터넷 산업 표준 프로토콜)을 사용하고 있습니다.
LDAP OPEN 소스가 많이 있어 검색을 하면 많은 예제를 찾을 수 있습니다.
아래는 PHP로 되어 있는 소스 입니다.
아래 소스 내용에서 globalsoft.co.kr 도메인 명만 본인의 회사 도메인 명으로 변경하시면 됩니다.
<?php
if(isset($_POST['username']) && isset($_POST['password'])){
$adServer = "ldap://gsoft.local";
$ldap=ldap_connect($adServer);
$username=$_POST['username'];
$password=$_POST['password'];
$ldaprdn='gsoft'."\\".$username;
ldap_set_option($ldap,LDAP_OPT_PROTOCOL_VERSION,3);
ldap_set_option($ldap,LDAP_OPT_REFERRALS,0);
$bind=@ldap_bind($ldap,$ldaprdn,$password);
if($bind){
echo "You are accessing</br>";
$filter="(sAMAccountName=$username)";
$result=ldap_search($ldap,"dc=gsoft,dc=local",$filter);
$info=ldap_get_entries($ldap,$result);
echo $info[0]["displayname"][0]."(".$info[0]["samaccountname"][0].")\n";
@ldap_close($ldap);
}else{
$msg="Invalid emailaddress/password";
echo $msg;
}
}else{
?>
<form action="#" method="POST">
<label for="username">Username: </label><input id="username" type="text" name="username" />
<label for="password">Password: </label><input id="password" type="password" name="password" />
<input type="submit" name="submit" value="Submit" />
</form>
<?php }?>
|
결과 화면
댓글