Как пройти аутентификацию в Active Directory с помощью приложения iOS - PullRequest
2 голосов
/ 04 октября 2011

Я пытаюсь создать приложение для iOS, которое принимает учетные данные пользователя и проверяет его на сервере AD.Есть ли какая-то встроенная библиотека в xCode для этого или сторонняя?

Буду очень признателен за любые советы о направлении взгляда.

Спасибо, Зак

Ответы [ 2 ]

1 голос
/ 14 ноября 2011

Хорошо, это был PHP, который я использовал для подключения к серверу ldap. Я не уверен на 100%, что здесь происходит, я получил этот код от координатора ИТ в моей компании. Я понимаю все части связывания и поиска, но я не понимаю часть ldap_set_option всей этой вещи. В любом случае, после его настройки вы можете вызвать URL-адрес php-скрипта и передать его параметры. взгляните на PHP и пример URL с ниже.

<?php
//Connection parameters
$dn = "DC=network,DC=net";
$host = "ldap://ldap.network.com";
$port = 1111

$user = $_GET['user'];
$pass = $_GET['pass'];

//$user = "user@network.net";
//$pass = "pass";

$filter = "memberof";
$keyword = "CN=USSC_ALL,CN=Users,DC=network,DC=net";

$filter = "objectclass";
$keyword = "user";

$filter = "objectcategory";
$keyword = "CN=Person,CN=Schema,CN=Configuration,DC=network,DC=net";

//The real thing with PHP
if (!empty($keyword) and !empty($dn)) {
//Connect to the AD
$adConn = ldap_connect($host, $port) or die("Could not connect!");

//Set protocol verison
ldap_set_option($adConn, LDAP_OPT_PROTOCOL_VERSION, 3) or die ("Could not set ldap     protocol1");

//Set referrals... Won't work without this...
ldap_set_option($adConn, LDAP_OPT_REFERRALS, 0) or die ("Could not set ldap protocol2");

//Bind the user
$bd = ldap_bind($adConn, $user, $pass) or die ("Could not bind");

echo $bd;

 //End binding
ldap_unbind($adConn);



} else {
   echo "<p>No results found!</p>";
}

?>


</body>
</html>  

Хорошо, теперь все, что вам нужно сделать, это передать имя пользователя и пароль скрипту, и он вернет привязку. это даст вам либо истину, либо ложь. Это означает, что если он успешно связан, это правильная комбинация имени пользователя и пароля.

вот как я это называю:

http://192.268.192.1/ldap.php?user=(username here)&pass=(password here)

Это подход, который я выбрал, и я думаю, что это очень простой ответ.

0 голосов
/ 07 ноября 2011

Итак, я смог выяснить, что мне нужно использовать PHP для этого. Создавая файл php на сервере, я могу использовать встроенный протокол ldap для передачи имени пользователя и пароля на сервер ldap для проверки. Запрос должен затем вернуть истину или ложь. Как только я получу эту плохую работу, отправьте мой код

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...