Проблема безопасности WCF

Простой Пример : Позволяет говорят, что Вы имеете Students таблица, и Lockers таблица. В SQL первая таблица, которую Вы определяете в соединении, Students, таблица LEFT , и второй, Lockers, таблица RIGHT .

Каждый студент может быть присвоен блокировщику, таким образом, существует LockerNumber столбец в Student таблица. Больше чем один студент мог потенциально быть в единственном блокировщике, но особенно в начале учебного года, у Вас могут быть некоторые входящие студенты без блокировщиков и некоторых блокировщиков, которые не имеют никаких присвоенных студентов.

Ради этого примера, позволяет, говорят, что Вы имеете 100 студентов , 70 из которых имеют блокировщики. У Вас есть [в общей сложности 1 133] 50 блокировщиков , 40 из которых имеют по крайней мере 1 студента и 10 блокировщиков, не имеют никакого студента.

ВНУТРЕННЕЕ ОБЪЕДИНЕНИЕ эквивалентно" , показывают мне всех студентов с блокировщиками ".
Любые студенты без блокировщиков или любых блокировщиков без студентов отсутствуют.
Возвраты 70 строк

ОСТАВЛЕННЫЙ ВНЕШНЕЕ ОБЪЕДИНЕНИЕ были бы" , показывают мне всех студентов, с их соответствующим блокировщиком, если у них есть один ".
Это могло бы быть общим студенческим списком или могло использоваться для идентификации студентов без блокировщика.
Возвраты 100 строк

ПРАВИЛЬНОЕ ВНЕШНЕЕ ОБЪЕДИНЕНИЕ было бы" , показывают мне все блокировщики и студентов, присвоенных им, если существуют какие-либо ".
Это могло использоваться для идентификации блокировщиков, которые не имеют никаких студентов, присвоенных, или блокировщики, которые имеют слишком много студентов.
Возвраты 80 строк (список 70 студентов в этих 40 блокировщиках, плюс эти 10 блокировщиков без студента)

ПОЛНОЕ ВНЕШНЕЕ ОБЪЕДИНЕНИЕ было бы глупо и вероятно не много использования.
Что-то как" показывает мне всех студентов и все блокировщики, и подходит их, где Вы можете "
Возвраты 110 строк (все 100 студентов, включая тех без блокировщиков. Плюс эти 10 блокировщиков без студента)

ПЕРЕКРЕСТНОЕ ОБЪЕДИНЕНИЕ также довольно глупо в этом сценарии.
Это не использует связанный lockernumber поле в таблице студентов, таким образом, Вы в основном заканчиваете с большим гигантским списком каждого возможного студента к блокировщику, соединяющегося, существует ли это на самом деле.
Возвраты 5 000 строк (100 студентов x 50 блокировщиков). Могло быть полезным (с фильтрацией) как начальная точка для подхождения новых студентов с пустыми блокировщиками.

7
задан 7 August 2009 в 04:34
поделиться

2 ответа

SSPI указывает, что вы используете проверку подлинности Windows.

Создано ли защищенное главное имя для службы C в вашем домене ? погуглите команду setspn. Проблема в том, что Windows не будет передавать учетные данные из домена в ненадежную систему. Вы доверяете ему, предоставляя защищенное главное имя в домене, которое затем позволяет передавать токен.

Учебное пособие по созданию защищенного основного имени SPN

8
ответ дан 6 December 2019 в 23:11
поделиться

Вы сталкиваетесь с тем, что называется двойной ударной проблемой. http://blogs.msdn.com/knowledgecast/Archive/2007/01/31/the-double-hop-problem.aspx .
Раствор, как правило, в целом используется аутентификация Kerberos, которая, как говорит Сэнс, включает в себя такие вещи, как SPNS.

3
ответ дан 6 December 2019 в 23:11
поделиться
Другие вопросы по тегам:

Похожие вопросы: