1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/bjzyt-IDP2-NativeApp-IOS

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
В этом репозитории не указан файл с открытой лицензией (LICENSE). При использовании обратитесь к конкретному описанию проекта и его зависимостям в коде.
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

IDPNativeAppSDK-iOS — Руководство разработчика

Обновлено в ноябре 2016 года
Номер версии SDK: Yöntem 1.0.0
Пример приложения IDPNativeApp использует лицензию MIT;
Фреймворк IDPNativeAppSDK доступен для использования, но его исходный код защищен частной лицензией, и без соответствующего разрешения нельзя модифицировать, копировать или распространять.

I. Введение

Компания Beijing Nine Clouds Technology Co., Ltd предлагает продукт IDP с девизом "единую и безопасную идентификацию". Библиотека SDK для iOS обеспечивает управление учетными записями пользователей и однократный вход в систему через IDP Identity Manager для приложений третьих сторон.

Если вы не знакомы с продуктом IDP, свяжитесь с нами по адресу info@idsmanager.com или посетите наш сайт Beijing Nine Clouds Technology Co., Ltd — Единая идентификация, прогулка среди облаков для получения более подробной информации. Продукты IDP предназначены для корпоративных пользователей, а библиотека SDK для внутренних разработчиков корпораций. Система IDP позволяет безопасно и удобно управлять учетными данными сотрудников внутри корпоративных приложений.


I. Введение

Компания Beijing Nine Clouds Technology Co., Ltd предлагает продукт IDP с девизом "единую и безопасную идентификацию". Библиотека SDK для iOS обеспечивает управление учетными записями пользователей и однократный вход в систему через IDP Identity Manager для приложений третьих сторон.

Если вы не знакомы с продуктом IDP, свяжитесь с нами по адресу info@idsmanager.com или посетите наш сайт Beijing Nine Clouds Technology Co., Ltd — Единая идентификация, прогулка среди облаков для получения более подробной информации. Продукты IDP предназначены для корпоративных пользователей, а библиотека SDK для внутренних разработчиков корпораций. Система IDP позволяет безопасно и удобно управлять учетными данными сотрудников внутри корпоративных приложений.Помимо SDK, мы также предоставляем открытый пример приложения IDPNativeApp по следующему адресу: https://git.oschina.net/sz_ids/IDP2-NativeApp-IOS (то есть на этой странице), который можно использовать и модифицировать согласно лицензии MIT. Пример приложения был создан с использованием Xcode 8.0 и Swift 3.0. Если ваш метод разработки отличается от этого, могут возникнуть непредвиденные ошибки.После интеграции NativeApp через IDP Identity Manager достигаются следующие результаты:

  1. Нажмите на интегрированное NativeApp через IDP Identity Manager
  2. Выберите пользователя, которому требуется однократный вход в систему (если связан только один пользователь, он сразу переходит к однократному входу в NativeApp)
  3. Откройте NativeApp и выполните однократный вход в систему для выбранного пользователя

Реализованные возможности:

  • Переход из IDP Identity Manager в приложение третьей стороны с помощью U+P (логин + пароль) и получение учетных данных, переданных приложением IDP Identity Manager, для бесшовного однократного входа в систему в локальном приложении.
  • Поддержка загрузки и установки фреймворков

Запланированные возможности:

  • Предоставление способа проверки токена OAuth или OIDC для большей безопасности и эффективности
  • Поддержка установки через CocoaPods или Carthage для ещё большего удобства

Поддерживаемые версии iOS: iOS 9.0+

Если у вас возникнут вопросы, свяжитесь с нами по адресу info@idsmanager.com или позвоните по телефону 010-58732285.


### II. Как установить Метод установки фреймворка 1. Скачайте пакет фреймворка SDK с нашего сайта или получите `IDPNativeAppSDK.framework` напрямую из примера приложения `IDPNativeApp` по адресу https://git.oschina.net/sz_ids/IDP2-NativeApp-IOS. 2. Установите `IDPNativeAppSDK.framework`, переместив его в папку `framework` вашего проекта. ![](http://git.oschina.net/uploads/images/2016/1125/165707_d544abcd_938102.png "Здесь можно указать заголовок для изображения") 3. В разделе `Targets -> General` найдите поле `Embedded Binaries` и добавьте ваш `IDPNativeAppSDK` туда. 1. Нажмите кнопку `+` 2. Выберите `IDPNativeAppSDK` в списке `Frameworks` 3. Успешно добавлено SDK в `Embedded Binaries` ![](http://git.oschina.net/uploads/images/2016/1125/165727_48007fbc_938102.png "Здесь можно указать заголовок для изображения") Попробуйте сборку или запуск. Если ошибок нет, то установка SDK завершена. Далее рассмотрим, как настроить и использовать SDK в Xcode. Если возникли ошибки, удалите SDK и повторите шаги выше. Также вы можете открыть демонстрационное приложение, чтобы сравнить результаты интеграции.### 3. Использование IDPNativeAppSDKИспользование IDPNativeApp состоит из трёх шагов. 1. Перейдите к Targets -> Info -> URL Types и создайте новый URL Type. Единственным обязательным полем является URL Schemes, которое представляет собой уникальный идентификатор для перехода между приложениями. Этот параметр потребуется в последующих шагах на веб-странице. URL Scheme не обязательно должен совпадать с bundle ID или названием приложения. ![Скриншот](http://git.oschina.net/uploads/images/2016/1125/165759_9900100a_938102.png) 2. В AppDelegate импортируйте IDPNativeAppSDK и добавьте метод (в демонстрационном примере используется версия Swift3, адаптируйте его к вашей используемой версии): ```swift func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool { // Метод IDPNativeAppSDK, который отвечает за обработку перехода из IDP return IDPNativeAppSDK.handleOpenApp(url: url, sourceApplication: sourceApplication) } ``` Этот метод инициализирует механизм обработки перехода из приложения IDP. 3. Наконец, где бы вы ни хотели получить информацию о пользователе, вызовите метод IDPNativeAppSDK.getUserInformation(). В блоке successBlock получите возвращаемую информацию о пользователе. Этот метод может быть вызван только один раз после перехода из приложения IDP. Если вам требуется многократное использование информации пользователя, сохраните её самостоятельно. successBlock возвращает словарь Dictionary следующего содержания: ```json { "errorNumber": 0, "username": "xxxxxx", "password": "xxxxxx" } ``` failureBlock возвращает словарь Dictionary следующего содержания: ```json ```json { "errorNumber": 0, "detail": "ошибка" } ```

Если запуск происходит с SP, после авторизации в IDP для входа требуется вызвать метод IDPNativeAppSDK.open(). Параметр scheme — это URL Scheme для запуска приложения, а параметр paramString представляет собой строку параметров.```swift IDPNativeAppSDK.open(scheme: "jiuzhou", appType: IDPNativeAppType.IDP_BasicNativeApp, paramString: "username=lisi&xxx=xxx") { (success) in print(success) }


5. Для получения токена единого входа используется метод `IDPNativeAppSDK.getIdToken()`:

```swift
func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool {
    IDPNativeAppSDK.getIdToken(infoURL: url as NSURL)
}

На этом завершены все необходимые настройки SDK в Xcode. Теперь нам нужно настроить информацию для данного приложения на странице IDP.


Четвертый раздел: Настройка единого входа в IDP

Продукт IDP (Identity Provider) имеет рынковое название «IDP Identity Manager» и поддерживает как iOS, так и Android устройства. Этот продукт является важной частью продуктовой линейки IDP и позволяет безопасно и удобно управлять своими учетными записями через веб-интерфейс. Поддержка управления учетными записями для локальных приложений в IDP Identity Manager является ключевым модулем для реализации единого входа во всех сетевых учетных записях мобильных устройств. Цель предоставляемого SDK заключается в том, чтобы обеспечить возможность подключения к IDP для корпоративных разработчиков, что позволит им управлять учетными записями и осуществлять единый вход от приложения IDP до третьих сторон.

Для реализации единого входа и управления учетными записями вам необходимо использовать продукт IDP в вашей компании и иметь права администратора. Разрешение разработчика недостаточно для добавления Native App.1. В интерфейсе администратора IDP нажмите кнопку «Добавить приложение», найдите Native App и используйте предоставленный шаблон для добавления приложения. (Если вы не можете найти этот шаблон, свяжитесь с командой Nine Cloud.)

Изображение

  1. Продолжайте заполнять информацию о добавляемом приложении.
    • Область применения: выберите наиболее подходящую область, которая не повлияет на реализацию приложения.
    • iOS/Android Scheme URL
      • Для iOS введите URL Scheme, который был создан в третьем разделе первого пункта в Xcode.
      • Способ привязки аккаунта: здесь выберите способ передачи информации о пользователях от IDP Identity Manager в ваше приложение. В настоящее время поддерживаются только учетные записи с паролем, но в будущем будут доступны способы авторизации через OIDC или OAuth.

  1. Уполномочьте приложение для использования сотрудниками компании, чтобы они могли начать его использовать. Если вы знаете, как уполномочивать приложения, выполните это самостоятельно и пропустите этот раздел. - Как уполномочить: процесс уполномочивания приложений состоит в том, чтобы предоставить возможность использования приложения для группы пользователей. После того, как приложение было добавлено в систему IDP, его следует уполномочить для групп пользователей. Если приложение находится в активированном состоянии (по умолчанию), то члены этой группы смогут видеть новое приложение в своем IDP Identity Manager. - Перейдите в меню авторизации слева
    • Выберите созданное ранее приложение из списка

    • Добавьте новое разрешение

    • На новой странице выберите группу пользователей, которую хотите авторизовать, например тестовую группу или административную группу.

      • Если группа пользователей ещё не была создана, вы можете сделать это самостоятельно. Если пользователи ещё не были добавлены, добавьте их и назначьте каждому пользователю группу.

  1. Приложение теперь добавлено, но нам также нужно добавить информацию о пользователях в каждой группе, чтобы обеспечить соответствие между пользователями и их учётными записями в приложении. Если вы знаете, как добавлять подаккаунты приложений, выполните это самостоятельно и пропустите этот раздел.

  2. Выйдите из системы и войдите снова, используя учётную запись одного из пользователей, уполномоченного на использование приложения. Если вы являетесь администратором и уже имеете доступ к уполномоченной группе, вам не придётся выходить из системы; просто перейдите в меню пользователя в правом верхнем углу навигационной панели.

  3. Перейдите в меню подаккаунтов приложения, где будет представлен список всех учётных записей, добавленных для ваших уполномоченных приложений. Нажмите кнопку "Добавить подаккаунт приложения" в правом верхнем углу. 3. В окне добавления подаккаунта выберите правильное приложение и заполните поля для имени пользователя и пароля, соответствующих вашему внешнему приложению. Например, если моё приложение называется «WeChat Mod», я хочу, чтобы IDP Identity Manager помогал мне управлять этим приложением и обеспечивал единую точку входа для учётной записи «WeChat Mod». Этот аккаунт должен быть зарегистрирован в вашей системе приложений и доступен для использования.

  • Если вы пытаетесь использовать демонстрационное приложение IDPNativeApp, нажмите кнопку регистрации после запуска IDPNativeApp и заполните информацию о регистрации здесь.
  1. Вы можете добавить несколько учётных записей для управления одним и тем же приложением; перед переходом IDP Identity Manager спросит вас, какую учётную запись использовать. Мы добавили IDPNativeAppSDK сначала до конца, настроили URL Scheme, создали приложение на веб-консоли IDP и соответственно настроили URL Scheme, затем предоставили права доступа целевой группе пользователей и добавили информацию об учётной записи приложения для пользователя в пользовательском интерфейсе. На этом этапе ваше приложение должно иметь возможность использовать IDP Identity Manager для управления и входа в него!

Если у вас есть ценные предложения, свяжитесь с нами по адресу info@idsmanager.com.Мы будем продолжать развивать SDK для пользователей и разработчиков IDP в будущем, следите за новостями! Команда Beijing Nine States YunTeng, Ноябрь 2015 года.

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/bjzyt-IDP2-NativeApp-IOS.git
git@api.gitlife.ru:oschina-mirror/bjzyt-IDP2-NativeApp-IOS.git
oschina-mirror
bjzyt-IDP2-NativeApp-IOS
bjzyt-IDP2-NativeApp-IOS
master