WSFederationAuthenticationModule.OnAuthenticateRequest Метод
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
AuthenticateRequest Обрабатывает событие из конвейера ASP.NET.
protected:
virtual void OnAuthenticateRequest(System::Object ^ sender, EventArgs ^ args);
protected virtual void OnAuthenticateRequest (object sender, EventArgs args);
abstract member OnAuthenticateRequest : obj * EventArgs -> unit
override this.OnAuthenticateRequest : obj * EventArgs -> unit
Protected Overridable Sub OnAuthenticateRequest (sender As Object, args As EventArgs)
Параметры
- sender
- Object
Источник события. Это будет объект HttpApplication.
- args
- EventArgs
Данные для события.
Комментарии
Метод OnAuthenticateRequest реализует конвейер обработки запросов WS-Federation. Он добавляется в HttpApplication.AuthenticateRequest событие в конвейере ASP.NET методом InitializeModule .
Метод выполняет следующие действия:
Вызывает метод , CanReadSignInResponse(HttpRequestBase) чтобы определить, получено ли WS-Federation ответное сообщение о входе ("wsignin1.0"). Если ответ является запросом на очистку WS-Federation выхода ("wsignoutcleanup1.0"), CanReadSignInResponse(HttpRequestBase) обрабатывает сообщение, завершает запрос и перенаправляет клиент в соответствии с параметрами WS-Federation в запросе. Если сообщение не является ответом входа или запросом на очистку выхода, модуль просто возвращается. В противном случае для обработки ответа на вход выполняется следующее.
Вызывает метод для десериализации GetSecurityToken(HttpRequestBase)SecurityToken объекта из запроса.
Вызывает событие SecurityTokenReceived. Вы можете отменить дальнейшую обработку или изменить полученный маркер безопасности в обработчике для этого события. Обработчик обычно используется для изменения SecurityToken.ValidFrom свойств или SecurityToken.ValidTo .
Проверяет маркер безопасности и создает объект на основе ClaimsPrincipal утверждений в маркере безопасности.
Вызывает событие SecurityTokenValidated. Вы можете отменить дальнейшую обработку или изменить субъект утверждений в обработчике для этого события.
Использует настроенный модуль проверки подлинности сеанса (SAM) для создания SessionSecurityToken объекта. (Настроенный SAM — это объект, SessionAuthenticationModule возвращаемый свойством FederatedAuthentication.SessionAuthenticationModule .) Маркер сеанса создается с помощью субъекта утверждений, возвращенного на шаге 5. SessionSecurityToken.ValidFrom Свойства и SessionSecurityToken.ValidTo задаются с помощью ValidFrom свойств и ValidTo объекта , возвращенных SecurityToken на шаге 3, и проверяются на соответствие текущему времени и времени существования маркера, заданным свойством DefaultTokenLifetimeSessionSecurityTokenHandler или TokenLifetime объекта в коллекции обработчиков маркеров, используемой WSFAM. Время существования маркера в обработчике маркеров сеанса можно указать в конфигурации с помощью <элемента sessionTokenRequirement> . Примечание. Свойство PersistentSessionLifetime обработчика файлов cookie, настроенного для SAM, не используется.
SetPrincipalAndWriteSessionToken Вызывает метод с маркером сеанса для записи файла cookie сеанса. Метод SetPrincipalAndWriteSessionToken сначала вызывает SessionSecurityTokenCreated событие . Вы можете изменить свойства маркера сеанса или изменить, следует ли сохранять файл cookie в обработчике для этого события. После возникновения события метод записывает файл cookie с помощью SAM.
Примечание
Набор SessionSecurityTokenHandler в конфигурации не используется для записи файла cookie.
OnSignedIn Вызывает метод для вызова SignedIn события.
Вызывает метод , GetReturnUrlFromResponse чтобы получить страницу RP, на которую перенаправляется клиент. По умолчанию этот метод считывает возвращаемый URL-адрес из параметра wctx в ответе на вход. Дополнительные сведения о том, как WSFAM сохраняет возвращаемый URL-адрес, см. в методе CreateSignInRequest .