Министерство образования и науки РФ;doc

Domino
Domino и
и Windows
Windows
Desktop
Desktop SSO
SSO на
на
примере
примере Quickr
Quickr
Власов Николай и Мария Озерова
План
•
•
•
•
•
•
•
•
•
•
•
•
Обзор проблемы или «Зачем Domino нужен SPNEGO?»
Общая Архитектура
Что такое Kerberos и как он работает
Что такое SPNEGO и как он работает
Демо 1 (как это выглядит с точки зрения пользователя)
Детальная архитектура и требования (2 подхода к
конфигурированию)
Демо 2 - Domino console, domino log
Конфигурирование используя дополнительное поле в
Domino Directory
Конфигурирование используя Directory Assitance
Демо3 — Аутентификация пользователей Domino через LDAP
Достоинства и недостатки каждого из подходов
Вопросы/ответы
Зачем Domio нужен
SPNEGO?
Ответ: Единый и безопасный вход в
домен Windows и в web-приложения
Domino.
(не нужно запоминать разные
логины/пароли)
Общая архитектура
s
ro
be
s
ro
HTTP
SPNEGO
r
Ke
e
rb
Ke
Domino
Server
LD
Sy A
nc P/
Контроллер Домена (KDC) Домен
Windows
AS
(Active
TGS
Directory)
Что такое Kerberos и как
он работает
ЦЕРБЕР
(в молодости)
Что такое Kerberos и как
он работает
- Протокол аутентификации в сети
(RFC 4120)
- Три «головы» Kerberos:
1. KDC (AS и TGS)
2. Клиент
3. Сервер к которому хочет
обратиться клиент
Что такое Kerberos и как
он работает
Что такое Kerberos и как
он работает
Что такое SPNEGO и как
он работает
SPNEGO: Simple and Protected
Negotiation Mechanism
Механизм для согласования
протоколов безопасности
для GSS-API (RFC 4178)
В нашем случае: SPNEGO = Kerberos
через HTTP (RFC 4559)
Что такое SPNEGO и как
он работает
Demo time!
Требования к
решению
• Active Directory Domain Controller
• Domino сервер на Windows- машине,
• которая включена в домен.
• Domino web sso должен быть
настроен
•
А также :
Требования к
решению
• Browsers должны быть настроены
на
• Клиентских Windows -машинах,
которые включены в domain и
имеют доступ по сети к AD
• Пользователи WEB- приложений
имеют Учетные записи в AD
Что необходимо
сделать на стороне
Domino
• Сформировать SPN(SERVICE
PRINCIPAL NAME) для Domino
сервера(DNS name) в Active
Directory при помощи
Утилиты SETSPN
Напоминание об HTTP
запросах
•
Когда пользователь запрашивает ресурс с Web-сервера ,формируется HTTP
GET запрос
•
Web-сервер(использует SPNEGO) ТРЕБУЕТ идентификации и возвращает
•
401 Access Denied, WWW-Authenticate: Negotiate response
•
Клиент запрашивает специальный ticket из Key Distribution Center(KDC)
•
KDC снабжает клиента необходимым Kerberos Ticket , записанным в SPNEGO
Token
•
Клиент снова посылает запрос HTTP GET request + the Negotiate SPNEGO
Token
•
Web-сервер принимает и расшифровывает token, идентифицирует
пользователя,
•
Предоставляет запрашиваемую информацию
Напоминание об
HTTP запросах
•
Когда пользователь запрашивает ресурс с Web-сервера ,формируется HTTP
GET запрос
•
Web-сервер(использует SPNEGO) ТРЕБУЕТ идентификации и возвращает
•
401 Access Denied, WWW-Authenticate: Negotiate response
•
Клиент запрашивает специальный ticket из Kerberos Distribution
Center(KDC)
•
KDC снабжает клиента необходимым Kerberos Ticket , записанным в SPNEGO
Token
•
Клиент снова посылает запрос HTTP GET request + the Negotiate SPNEGO
Token
•
Web-сервер принимает и расшифровывает token, идентифицирует
пользователя,
•
Предоставляет запрашиваемую информацию
Архитектура запросов
Lotus Quickr on Domino
notes.ini на
сервере Domino
●
WIDE _SEARCH_FOR_KERBEROSNAMES=1
• QUICKPLACESPNEGO=1
Lotus Quickr использует
LDAP Domino
•
Используется поле“Kerberos Logon Name” Person
Document
LDAP CATALOG
DOMINO
QUICKR FOR
DOMINO
Lotus Quickr использует
Active Directory
• Domino использует Directory
Assistance
LDAP CATALOG
AD
QUICKR FOR
DOMINO
Спасибо!
контакты :
• Компания
IBM
• Москва
Web engine
Настройки notes.ini
User in Domino
Logon name
SSO configuration document