OAuthAuthorizationServerProvider 屬性

OAuthAuthorizationServerProvider 型別公開下列成員。

  名稱說明
公用屬性 OnAuthorizeEndpoint 在執行持續之前,將傳入授權端點要求的最後階段呼叫至負責產生 HTMP 回應的 Web 應用程式元件。 在 OWIN 管線中隨著授權伺服器出現的任何項目都會產生授權頁面的回應。 若在 IIS 上執行,任何在伺服器上執行的 ASP.NET 技術會產生授權頁面的回應。 若 Web 應用程式希望直接在 AuthorizeEndpoint 呼叫產生回應,則會直接寫入 context.Response 且應呼叫 context.RequestCompleted 以止執行其他處理常式。 若 Web 應用程式希望直接在 AuthorizeEndpoint 呼叫授與授權,則會以適當的 ClaimsIdentity 呼叫 context.OwinContext.Authentication.SignIn 且應呼叫 context.RequestCompleted 以止執行其他處理常式。
公用屬性 OnGrantAuthorizationCode 當 Token 端點的要求與 "authorization_code" 的 "grant_type" 抵達時呼叫。 這會發生在授權端點重新島向 user-agent 回具有 "code" 參數的用戶端,且用戶端會與 "access_token" 進行交換。 與授權碼相關聯的宣告和屬性會呈現在 context.Ticket 中。 應用程式必須呼叫 context.Validated 來指示授權伺服器中介軟體在這些宣告和屬性上簽發存取語彙基元。 context.Validated 的呼叫可能指定不同的 AuthenticationTicket 或 ClaimsIdentity 以控制授權碼到存取語彙基元的資訊流。 使用 OAuthAuthorizationServerProvider 的預設行為是將資料從授權碼流向未修改的存取語彙基元。 另請參閱 http://tools.ietf.org/html/rfc6749#section-4.1.3
公用屬性 OnGrantClientCredentials 當 Token 端點的要求與 "password" 的 "grant_type" 抵達時呼叫。 這會在使用者直接提供名稱和密碼認證到用戶端應用程式的使用者介面時發生,且用戶端應用程式會使用其來取得 "access_token" 和選擇性的 "refresh_token"。 若 Web 應用程式支援資源擁有者認證授與類型,其必須適當驗證 context.Username 和 context.Password。 若要簽發存取語彙基元,context.Validated 必須以新票證呼叫,此票證包括應該與存取票證相關的資源擁有者相關的宣告。 預設行為是要拒絕此授與類型。 另請參閱 http://tools.ietf.org/html/rfc6749#section-4.30.2
公用屬性 OnGrantCustomExtension 當 Token 端點的要求與任何其他值的 "grant_type" 抵達時呼叫。 若應用程式支援自訂授與類型,其會完全負責判斷要求是否應該會導致 access_token。 若 context.Validated 以票證資訊呼叫,回應主體會相其他標準授與類型相同的方式產生。 若必須包含其他回應參數,其會新增至最後的 TokenEndpoint 呼叫。 另請參閱 http://tools.ietf.org/html/rfc6749#section-4.5
公用屬性 OnGrantRefreshToken 當 Token 端點的要求與 "client_credentials" 的 "grant_type" 抵達時呼叫。 這會在註冊的用戶端應用程式希望獲得 "access_token" 以與其受保護的資源互動,而非與驗證的使用者互動時發生。 若 Web 應用程式支援用戶端認證,其會假設 context.ClientId 已由 ValidateClientAuthentication 呼叫驗證。 若要簽發存取語彙基元,context.Validated 必須以新票證呼叫,此票證包括應該與存取票證相關的用戶端應用程式相關的宣告。 預設行為是要拒絕此授與類型。 另請參閱 http://tools.ietf.org/html/rfc6749#section-4.40.2
公用屬性 OnGrantResourceOwnerCredentials 當 Token 端點的要求與 "refresh_token" 的 "grant_type" 抵達時呼叫。 若您的應用程式已簽發 "refresh_token" 以及 "access_token" 時發生,且用戶端會嘗試使用 "refresh_token" 來取得新的 "access_token",而且可能是新的 "refresh_token"。 若要簽發重新整理語彙基元,必須指派Options.RefreshTokenProvider 以建立要傳回的值。 與重新整理語彙基元相關聯的宣告和屬性會呈現在 context.Ticket 中。 應用程式必須呼叫 context.Validated 來指示授權伺服器中介軟體在這些宣告和屬性上簽發存取語彙基元。 context.Validated 的呼叫可能指定不同的 AuthenticationTicket 或 ClaimsIdentity 以控制重新整理語彙基元到存取語彙基元的資訊流。 使用 OAuthAuthorizationServerProvider 的預設行為是將資料從重新導向語彙基元流向未修改的存取語彙基元。 另請參閱 http://tools.ietf.org/html/rfc6749#section-6
公用屬性 OnMatchEndpoint 呼叫以判斷傳入要求是否視為 Authorize 或 Token 端點。 若 Options.AuthorizeEndpointPath 或 Options.TokenEndpointPath 為指派的值,則可選擇性地處理此事件,且若要求路徑符合,context.IsAuthorizeEndpoint 和 context.IsTokenEndpoint 會為 true。
公用屬性 OnTokenEndpoint 在成功 Token 端點要求的最後階段呼叫。 應用程式會實作此呼叫,以進行用來簽發存取或重新整理語彙基元的宣告最後修改。 也可能使用此呼叫來新增其他回應參數至 Token 端點的 json 回應主體。
公用屬性 OnValidateAuthorizeRequest 呼叫 Authorize 端點的每個要求,以判斷要求是否有效且應該繼續。 使用 OAuthAuthorizationServerProvider 的預設行為是假設格式正確且具有驗證用戶端重新導向 URI 的要求應該繼續處理。 應用程式可能新增其他條件約束。
公用屬性 OnValidateClientAuthentication Called to validate that the origin of the request is a registered "client_id", and that the correct credentials for that client are present on the request. 若 Web 應用程式接受 Basic 驗證認證,且呈現在要求標頭中,可能會呼叫 context.TryGetBasicCredentials(out clientId, out clientSecret) 以取得這些值。 若 Web 應用程式接受 "client_id" 和 "client_secret" 做為表單編碼的 POST 參數,且呈現在要求主體中,可能會呼叫 context.TryGetBasicCredentials(out clientId, out clientSecret) 以取得這些值。 若並未呼叫 context.Validated,不會進一步處理要求。
公用屬性 OnValidateClientRedirectUri 呼叫以驗證 context.ClientId 是註冊的 "client_id",且 context.RedirectUri 是為該用戶端註冊的 "redirect_uri"。 此僅會發生在處理 Authorize 端點時。 應用程式必須實作此呼叫,且必須在呼叫 context.Validated 前驗證這兩個因素。 若 context.Validated 方法以給定的 redirectUri 參數呼叫,則 IsValidated 僅會在傳入重新導向 URI 符合給定重新導向 URI 時為 true。 若並未呼叫 context.Validated,不會進一步處理要求。
公用屬性 OnValidateTokenRequest 呼叫 Authorize 端點的每個要求,以判斷要求是否有效且應該繼續。 使用 OAuthAuthorizationServerProvider 的預設行為是假設格式正確且具有驗證用戶端認證的要求應該繼續處理。 應用程式可能新增其他條件約束。
上層
顯示: