2009-11-26 2 views
0

Я использую SharePiont Server 2007 Enterprise с Windows Server 2008 Enterprise. Я разрабатываю, используя VSTS 2008 + C# + .Net 3.5. Мне интересно, есть ли у SharePoint какие-либо средства для установки текущего пользователя в качестве определенного пользователя? Например, я хочу, чтобы пользователь был администратором автоматически, когда люди подключаются с определенного IP-адреса, чтобы предоставить таким людям высокие привилегии. Другим примером является то, что люди подключают мой sie с помощью специальной строки подключения, например http://example.org/default.aspx?specialtestuser=foo, тогда я задаю, что текущий пользователь будет foo. Оцените, есть ли какие-либо образцы кода для ссылки?как установить текущее имя пользователя в SharePoint?

+1

Это выглядит как кошмар безопасности мне, если вы не реализуете каких-либо дополнительных проверок. Вы также должны указать, является ли это сайтом интрасети (т. Е. Все пользователи в домене) или интернет-сайтом (так что у вас есть какая-то система членства на месте). –

+0

См. Мои комментарии ниже. В моей системе мне нужно, чтобы некоторые специальные правила обходили проверку подлинности с помощью форм, чтобы установить анонимного пользователя другим пользователям при первом входе в систему. Я использую SharePoint Server с проверкой форм. Это не обычный путь кода, но мне нужна эта функция. Я обычно конвертирую пользователя на незнакомого пользователя (например, гостей библиотеки из школы, но отличается от анонимного из-за внешней школы), поэтому риск низкий. Любые решения? – George2

ответ

2

В Sharepoint вы можете использовать олицетворение для выполнения кода вместо определенного пользователя. Вы также можете использовать эту технику для запуска некоторой части вашего кода с более высокой привилегией (лучше, чем предоставление полной привилегии пользователю). Здесь всего 2 ссылки, но если вы просматриваете сеть для Sharepoint и олицетворения, вы найдете больше ссылок.

MSDN on impersonation and other tricks

Impersonation in Sharepoint 2007

Я надеюсь, что это поможет


Вот еще одна ссылка, которая предложит настроить некоторые HTTP модуль и выглядит немного, как вы хотите сделать: siteminder and sharepoint 2007

Но я никогда не пробовал это, поэтому я не могу вам помочь намного больше.

+0

Образцы, которые вы предоставили, будут выдавать себя за текущего пользователя другим пользователем. Но я хочу, чтобы текущий пользователь был анонимным для какого-либо другого конкретного пользователя, и мое требование отличается от олицетворения. Любые идеи для моих требований? – George2

+0

Более подробно я хочу переключиться с анонимного на другого пользователя, а не выдавать себя за другого пользователя, например, в правом верхнем углу пользовательского интерфейса, будет отображаться имя пользователя foo или administrator, кроме анонимного. Любые идеи, как реализовать? – George2

+0

Это похоже на автоматическую аутентификацию пользователя, если URL содержит специальный параметр или специальный IP-адрес. – George2

2

SharePoint 2007 полностью поддерживает модель .NET Provider, поэтому вы можете использовать модель MembershipProvider (встроенный поставщик SharePoint - это LdapMembershipProvider и LdapRoleProvider), который поддерживает формы, а также любую настраиваемую архитектуру аутентификации/авторизации. Вы можете установить текущего пользователя из глобального объекта Membership. Мое предостережение заключалось бы в том, чтобы полностью использовать код Membership и Roles во всем коде, если вы выберете этот подход.

блог Nishant является довольно полезным для ничего MOSS и AD, связанных, и имеет этот пост: http://blogs.technet.com/nishants/archive/2009/05/22/how-to-configure-forms-based-authentication-active-directory-ldapmembership.aspx

+0

Спасибо! Это отличный документ, предназначенный для аутентификации форм на основе AD. Но я не использую AD, но используя пользовательскую базу данных для хранения имени пользователя и пароля. Любые эталонные образцы, аналогичные моим требованиям? – George2

+1

Да, похоже, вам нужно настроить MemberhipProvider – maplpro

+0

Спасибо вам, мужчина! – George2

Смежные вопросы