models

package
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jan 8, 2020 License: Apache-2.0 Imports: 5 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AcceptConsentRequest

type AcceptConsentRequest struct {

	// GrantedAudience sets the audience the user authorized the client to use. Should be a subset of `requested_access_token_audience`.
	GrantAccessTokenAudience []string `json:"grant_access_token_audience"`

	// GrantScope sets the scope the user authorized the client to use. Should be a subset of `requested_scope`.
	GrantScope []string `json:"grant_scope"`

	// Remember, if set to true, tells ORY Hydra to remember this consent authorization and reuse it if the same
	// client asks the same user for the same, or a subset of, scope.
	Remember bool `json:"remember,omitempty"`

	// RememberFor sets how long the consent authorization should be remembered for in seconds. If set to `0`, the
	// authorization will be remembered indefinitely.
	RememberFor int64 `json:"remember_for,omitempty"`

	// session
	Session *ConsentRequestSession `json:"session,omitempty"`
}

AcceptConsentRequest AcceptConsentRequest AcceptConsentRequest AcceptConsentRequest AcceptConsentRequest The request payload used to accept a consent request. swagger:model acceptConsentRequest

func (*AcceptConsentRequest) MarshalBinary

func (m *AcceptConsentRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*AcceptConsentRequest) UnmarshalBinary

func (m *AcceptConsentRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*AcceptConsentRequest) Validate

func (m *AcceptConsentRequest) Validate(formats strfmt.Registry) error

Validate validates this accept consent request

type AcceptLoginRequest

type AcceptLoginRequest struct {

	// ACR sets the Authentication AuthorizationContext Class Reference value for this authentication session. You can use it
	// to express that, for example, a user authenticated using two factor authentication.
	Acr string `json:"acr,omitempty"`

	// Context is an optional object which can hold arbitrary data. The data will be made available when fetching the
	// consent request under the "context" field. This is useful in scenarios where login and consent endpoints share
	// data.
	Context map[string]interface{} `json:"context,omitempty"`

	// ForceSubjectIdentifier forces the "pairwise" user ID of the end-user that authenticated. The "pairwise" user ID refers to the
	// (Pairwise Identifier Algorithm)[http://openid.net/specs/openid-connect-core-1_0.html#PairwiseAlg] of the OpenID
	// Connect specification. It allows you to set an obfuscated subject ("user") identifier that is unique to the client.
	//
	// Please note that this changes the user ID on endpoint /userinfo and sub claim of the ID Token. It does not change the
	// sub claim in the OAuth 2.0 Introspection.
	//
	// Per default, ORY Hydra handles this value with its own algorithm. In case you want to set this yourself
	// you can use this field. Please note that setting this field has no effect if `pairwise` is not configured in
	// ORY Hydra or the OAuth 2.0 Client does not expect a pairwise identifier (set via `subject_type` key in the client's
	// configuration).
	//
	// Please also be aware that ORY Hydra is unable to properly compute this value during authentication. This implies
	// that you have to compute this value on every authentication process (probably depending on the client ID or some
	// other unique value).
	//
	// If you fail to compute the proper value, then authentication processes which have id_token_hint set might fail.
	ForceSubjectIdentifier string `json:"force_subject_identifier,omitempty"`

	// Remember, if set to true, tells ORY Hydra to remember this user by telling the user agent (browser) to store
	// a cookie with authentication data. If the same user performs another OAuth 2.0 Authorization Request, he/she
	// will not be asked to log in again.
	Remember bool `json:"remember,omitempty"`

	// RememberFor sets how long the authentication should be remembered for in seconds. If set to `0`, the
	// authorization will be remembered for the duration of the browser session (using a session cookie).
	RememberFor int64 `json:"remember_for,omitempty"`

	// Subject is the user ID of the end-user that authenticated.
	// Required: true
	Subject *string `json:"subject"`
}

AcceptLoginRequest HandledLoginRequest is the request payload used to accept a login request. swagger:model acceptLoginRequest

func (*AcceptLoginRequest) MarshalBinary

func (m *AcceptLoginRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*AcceptLoginRequest) UnmarshalBinary

func (m *AcceptLoginRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*AcceptLoginRequest) Validate

func (m *AcceptLoginRequest) Validate(formats strfmt.Registry) error

Validate validates this accept login request

type AttributeTypeAndValue

type AttributeTypeAndValue struct {

	// type
	Type ObjectIdentifier `json:"Type,omitempty"`

	// value
	Value interface{} `json:"Value,omitempty"`
}

AttributeTypeAndValue AttributeTypeAndValue AttributeTypeAndValue AttributeTypeAndValue AttributeTypeAndValue AttributeTypeAndValue AttributeTypeAndValue mirrors the ASN.1 structure of the same name in RFC 5280, Section 4.1.2.4. swagger:model AttributeTypeAndValue

func (*AttributeTypeAndValue) MarshalBinary

func (m *AttributeTypeAndValue) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*AttributeTypeAndValue) UnmarshalBinary

func (m *AttributeTypeAndValue) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*AttributeTypeAndValue) Validate

func (m *AttributeTypeAndValue) Validate(formats strfmt.Registry) error

Validate validates this attribute type and value

type CompletedRequest

type CompletedRequest struct {

	// RedirectURL is the URL which you should redirect the user to once the authentication process is completed.
	RedirectTo string `json:"redirect_to,omitempty"`
}

CompletedRequest CompletedRequest CompletedRequest The response payload sent when accepting or rejecting a login or consent request. swagger:model completedRequest

func (*CompletedRequest) MarshalBinary

func (m *CompletedRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*CompletedRequest) UnmarshalBinary

func (m *CompletedRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*CompletedRequest) Validate

func (m *CompletedRequest) Validate(formats strfmt.Registry) error

Validate validates this completed request

type ConsentRequest

type ConsentRequest struct {

	// ACR represents the Authentication AuthorizationContext Class Reference value for this authentication session. You can use it
	// to express that, for example, a user authenticated using two factor authentication.
	Acr string `json:"acr,omitempty"`

	// Challenge is the identifier ("authorization challenge") of the consent authorization request. It is used to
	// identify the session.
	Challenge string `json:"challenge,omitempty"`

	// client
	Client *OAuth2Client `json:"client,omitempty"`

	// Context contains arbitrary information set by the login endpoint or is empty if not set.
	Context map[string]interface{} `json:"context,omitempty"`

	// LoginChallenge is the login challenge this consent challenge belongs to. It can be used to associate
	// a login and consent request in the login & consent app.
	LoginChallenge string `json:"login_challenge,omitempty"`

	// LoginSessionID is the login session ID. If the user-agent reuses a login session (via cookie / remember flag)
	// this ID will remain the same. If the user-agent did not have an existing authentication session (e.g. remember is false)
	// this will be a new random value. This value is used as the "sid" parameter in the ID Token and in OIDC Front-/Back-
	// channel logout. It's value can generally be used to associate consecutive login requests by a certain user.
	LoginSessionID string `json:"login_session_id,omitempty"`

	// oidc context
	OidcContext *OpenIDConnectContext `json:"oidc_context,omitempty"`

	// RequestURL is the original OAuth 2.0 Authorization URL requested by the OAuth 2.0 client. It is the URL which
	// initiates the OAuth 2.0 Authorization Code or OAuth 2.0 Implicit flow. This URL is typically not needed, but
	// might come in handy if you want to deal with additional request parameters.
	RequestURL string `json:"request_url,omitempty"`

	// RequestedScope contains the access token audience as requested by the OAuth 2.0 Client.
	RequestedAccessTokenAudience []string `json:"requested_access_token_audience"`

	// RequestedScope contains the OAuth 2.0 Scope requested by the OAuth 2.0 Client.
	RequestedScope []string `json:"requested_scope"`

	// Skip, if true, implies that the client has requested the same scopes from the same user previously.
	// If true, you must not ask the user to grant the requested scopes. You must however either allow or deny the
	// consent request using the usual API call.
	Skip bool `json:"skip,omitempty"`

	// Subject is the user ID of the end-user that authenticated. Now, that end user needs to grant or deny the scope
	// requested by the OAuth 2.0 client.
	Subject string `json:"subject,omitempty"`
}

ConsentRequest ConsentRequest ConsentRequest ConsentRequest ConsentRequest Contains information on an ongoing consent request. swagger:model consentRequest

func (*ConsentRequest) MarshalBinary

func (m *ConsentRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*ConsentRequest) UnmarshalBinary

func (m *ConsentRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*ConsentRequest) Validate

func (m *ConsentRequest) Validate(formats strfmt.Registry) error

Validate validates this consent request

type ConsentRequestSession

type ConsentRequestSession struct {

	// AccessToken sets session data for the access and refresh token, as well as any future tokens issued by the
	// refresh grant. Keep in mind that this data will be available to anyone performing OAuth 2.0 Challenge Introspection.
	// If only your services can perform OAuth 2.0 Challenge Introspection, this is usually fine. But if third parties
	// can access that endpoint as well, sensitive data from the session might be exposed to them. Use with care!
	AccessToken map[string]interface{} `json:"access_token,omitempty"`

	// IDToken sets session data for the OpenID Connect ID token. Keep in mind that the session'id payloads are readable
	// by anyone that has access to the ID Challenge. Use with care!
	IDToken map[string]interface{} `json:"id_token,omitempty"`
}

ConsentRequestSession ConsentRequestSession ConsentRequestSession Used to pass session data to a consent request. swagger:model consentRequestSession

func (*ConsentRequestSession) MarshalBinary

func (m *ConsentRequestSession) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*ConsentRequestSession) UnmarshalBinary

func (m *ConsentRequestSession) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*ConsentRequestSession) Validate

func (m *ConsentRequestSession) Validate(formats strfmt.Registry) error

Validate validates this consent request session

type FlushInactiveOAuth2TokensRequest

type FlushInactiveOAuth2TokensRequest struct {

	// NotAfter sets after which point tokens should not be flushed. This is useful when you want to keep a history
	// of recently issued tokens for auditing.
	// Format: date-time
	NotAfter strfmt.DateTime `json:"notAfter,omitempty"`
}

FlushInactiveOAuth2TokensRequest flush inactive o auth2 tokens request swagger:model flushInactiveOAuth2TokensRequest

func (*FlushInactiveOAuth2TokensRequest) MarshalBinary

func (m *FlushInactiveOAuth2TokensRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*FlushInactiveOAuth2TokensRequest) UnmarshalBinary

func (m *FlushInactiveOAuth2TokensRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*FlushInactiveOAuth2TokensRequest) Validate

Validate validates this flush inactive o auth2 tokens request

type GenericError

type GenericError struct {

	// Debug contains debug information. This is usually not available and has to be enabled.
	Debug string `json:"debug,omitempty"`

	// Name is the error name.
	// Required: true
	Error *string `json:"error"`

	// Description contains further information on the nature of the error.
	ErrorDescription string `json:"error_description,omitempty"`

	// Code represents the error status code (404, 403, 401, ...).
	StatusCode int64 `json:"status_code,omitempty"`
}

GenericError GenericError GenericError GenericError GenericError GenericError Error response

Error responses are sent when an error (e.g. unauthorized, bad request, ...) occurred. swagger:model genericError

func (*GenericError) MarshalBinary

func (m *GenericError) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*GenericError) UnmarshalBinary

func (m *GenericError) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*GenericError) Validate

func (m *GenericError) Validate(formats strfmt.Registry) error

Validate validates this generic error

type HealthNotReadyStatus

type HealthNotReadyStatus struct {

	// Errors contains a list of errors that caused the not ready status.
	Errors map[string]string `json:"errors,omitempty"`
}

HealthNotReadyStatus health not ready status swagger:model healthNotReadyStatus

func (*HealthNotReadyStatus) MarshalBinary

func (m *HealthNotReadyStatus) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*HealthNotReadyStatus) UnmarshalBinary

func (m *HealthNotReadyStatus) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*HealthNotReadyStatus) Validate

func (m *HealthNotReadyStatus) Validate(formats strfmt.Registry) error

Validate validates this health not ready status

type HealthStatus

type HealthStatus struct {

	// Status always contains "ok".
	Status string `json:"status,omitempty"`
}

HealthStatus HealthStatus health status swagger:model healthStatus

func (*HealthStatus) MarshalBinary

func (m *HealthStatus) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*HealthStatus) UnmarshalBinary

func (m *HealthStatus) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*HealthStatus) Validate

func (m *HealthStatus) Validate(formats strfmt.Registry) error

Validate validates this health status

type IP

type IP []uint8

IP IP IP IP IP IP An IP is a single IP address, a slice of bytes. Functions in this package accept either 4-byte (IPv4) or 16-byte (IPv6) slices as input.

Note that in this documentation, referring to an IP address as an IPv4 address or an IPv6 address is a semantic property of the address, not just the length of the byte slice: a 16-byte slice can still be an IPv4 address. swagger:model IP

func (IP) Validate

func (m IP) Validate(formats strfmt.Registry) error

Validate validates this IP

type IPMask

type IPMask []uint8

IPMask IPMask IPMask IPMask IPMask IPMask An IP mask is an IP address. swagger:model IPMask

func (IPMask) Validate

func (m IPMask) Validate(formats strfmt.Registry) error

Validate validates this IP mask

type JSONWebKey

type JSONWebKey struct {

	// The "alg" (algorithm) parameter identifies the algorithm intended for
	// use with the key.  The values used should either be registered in the
	// IANA "JSON Web Signature and Encryption Algorithms" registry
	// established by [JWA] or be a value that contains a Collision-
	// Resistant Name.
	// Required: true
	Alg *string `json:"alg"`

	// crv
	Crv string `json:"crv,omitempty"`

	// d
	D string `json:"d,omitempty"`

	// dp
	Dp string `json:"dp,omitempty"`

	// dq
	Dq string `json:"dq,omitempty"`

	// e
	E string `json:"e,omitempty"`

	// k
	K string `json:"k,omitempty"`

	// The "kid" (key ID) parameter is used to match a specific key.  This
	// is used, for instance, to choose among a set of keys within a JWK Set
	// during key rollover.  The structure of the "kid" value is
	// unspecified.  When "kid" values are used within a JWK Set, different
	// keys within the JWK Set SHOULD use distinct "kid" values.  (One
	// example in which different keys might use the same "kid" value is if
	// they have different "kty" (key type) values but are considered to be
	// equivalent alternatives by the application using them.)  The "kid"
	// value is a case-sensitive string.
	// Required: true
	Kid *string `json:"kid"`

	// The "kty" (key type) parameter identifies the cryptographic algorithm
	// family used with the key, such as "RSA" or "EC". "kty" values should
	// either be registered in the IANA "JSON Web Key Types" registry
	// established by [JWA] or be a value that contains a Collision-
	// Resistant Name.  The "kty" value is a case-sensitive string.
	// Required: true
	Kty *string `json:"kty"`

	// n
	N string `json:"n,omitempty"`

	// p
	P string `json:"p,omitempty"`

	// q
	Q string `json:"q,omitempty"`

	// qi
	Qi string `json:"qi,omitempty"`

	// Use ("public key use") identifies the intended use of
	// the public key. The "use" parameter is employed to indicate whether
	// a public key is used for encrypting data or verifying the signature
	// on data. Values are commonly "sig" (signature) or "enc" (encryption).
	// Required: true
	Use *string `json:"use"`

	// x
	X string `json:"x,omitempty"`

	// The "x5c" (X.509 certificate chain) parameter contains a chain of one
	// or more PKIX certificates [RFC5280].  The certificate chain is
	// represented as a JSON array of certificate value strings.  Each
	// string in the array is a base64-encoded (Section 4 of [RFC4648] --
	// not base64url-encoded) DER [ITU.X690.1994] PKIX certificate value.
	// The PKIX certificate containing the key value MUST be the first
	// certificate.
	X5c []string `json:"x5c"`

	// y
	Y string `json:"y,omitempty"`
}

JSONWebKey JSONWebKey JSON web key swagger:model JSONWebKey

func (*JSONWebKey) MarshalBinary

func (m *JSONWebKey) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*JSONWebKey) UnmarshalBinary

func (m *JSONWebKey) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*JSONWebKey) Validate

func (m *JSONWebKey) Validate(formats strfmt.Registry) error

Validate validates this JSON web key

type JSONWebKeySet

type JSONWebKeySet struct {

	// The value of the "keys" parameter is an array of JWK values.  By
	// default, the order of the JWK values within the array does not imply
	// an order of preference among them, although applications of JWK Sets
	// can choose to assign a meaning to the order for their purposes, if
	// desired.
	Keys []*JSONWebKey `json:"keys"`
}

JSONWebKeySet JSON web key set swagger:model JSONWebKeySet

func (*JSONWebKeySet) MarshalBinary

func (m *JSONWebKeySet) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*JSONWebKeySet) UnmarshalBinary

func (m *JSONWebKeySet) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*JSONWebKeySet) Validate

func (m *JSONWebKeySet) Validate(formats strfmt.Registry) error

Validate validates this JSON web key set

type JSONWebKeySetGeneratorRequest

type JSONWebKeySetGeneratorRequest struct {

	// The algorithm to be used for creating the key. Supports "RS256", "ES512", "HS512", and "HS256"
	// Required: true
	Alg *string `json:"alg"`

	// The kid of the key to be created
	// Required: true
	Kid *string `json:"kid"`

	// The "use" (public key use) parameter identifies the intended use of
	// the public key. The "use" parameter is employed to indicate whether
	// a public key is used for encrypting data or verifying the signature
	// on data. Valid values are "enc" and "sig".
	// Required: true
	Use *string `json:"use"`
}

JSONWebKeySetGeneratorRequest json web key set generator request swagger:model jsonWebKeySetGeneratorRequest

func (*JSONWebKeySetGeneratorRequest) MarshalBinary

func (m *JSONWebKeySetGeneratorRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*JSONWebKeySetGeneratorRequest) UnmarshalBinary

func (m *JSONWebKeySetGeneratorRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*JSONWebKeySetGeneratorRequest) Validate

func (m *JSONWebKeySetGeneratorRequest) Validate(formats strfmt.Registry) error

Validate validates this json web key set generator request

type LoginRequest

type LoginRequest struct {

	// Challenge is the identifier ("login challenge") of the login request. It is used to
	// identify the session.
	Challenge string `json:"challenge,omitempty"`

	// client
	Client *OAuth2Client `json:"client,omitempty"`

	// oidc context
	OidcContext *OpenIDConnectContext `json:"oidc_context,omitempty"`

	// RequestURL is the original OAuth 2.0 Authorization URL requested by the OAuth 2.0 client. It is the URL which
	// initiates the OAuth 2.0 Authorization Code or OAuth 2.0 Implicit flow. This URL is typically not needed, but
	// might come in handy if you want to deal with additional request parameters.
	RequestURL string `json:"request_url,omitempty"`

	// RequestedScope contains the access token audience as requested by the OAuth 2.0 Client.
	RequestedAccessTokenAudience []string `json:"requested_access_token_audience"`

	// RequestedScope contains the OAuth 2.0 Scope requested by the OAuth 2.0 Client.
	RequestedScope []string `json:"requested_scope"`

	// SessionID is the login session ID. If the user-agent reuses a login session (via cookie / remember flag)
	// this ID will remain the same. If the user-agent did not have an existing authentication session (e.g. remember is false)
	// this will be a new random value. This value is used as the "sid" parameter in the ID Token and in OIDC Front-/Back-
	// channel logout. It's value can generally be used to associate consecutive login requests by a certain user.
	SessionID string `json:"session_id,omitempty"`

	// Skip, if true, implies that the client has requested the same scopes from the same user previously.
	// If true, you can skip asking the user to grant the requested scopes, and simply forward the user to the redirect URL.
	//
	// This feature allows you to update / set session information.
	Skip bool `json:"skip,omitempty"`

	// Subject is the user ID of the end-user that authenticated. Now, that end user needs to grant or deny the scope
	// requested by the OAuth 2.0 client. If this value is set and `skip` is true, you MUST include this subject type
	// when accepting the login request, or the request will fail.
	Subject string `json:"subject,omitempty"`
}

LoginRequest LoginRequest LoginRequest Contains information on an ongoing login request. swagger:model loginRequest

func (*LoginRequest) MarshalBinary

func (m *LoginRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*LoginRequest) UnmarshalBinary

func (m *LoginRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*LoginRequest) Validate

func (m *LoginRequest) Validate(formats strfmt.Registry) error

Validate validates this login request

type LogoutRequest

type LogoutRequest struct {

	// RequestURL is the original Logout URL requested.
	RequestURL string `json:"request_url,omitempty"`

	// RPInitiated is set to true if the request was initiated by a Relying Party (RP), also known as an OAuth 2.0 Client.
	RpInitiated bool `json:"rp_initiated,omitempty"`

	// SessionID is the login session ID that was requested to log out.
	Sid string `json:"sid,omitempty"`

	// Subject is the user for whom the logout was request.
	Subject string `json:"subject,omitempty"`
}

LogoutRequest LogoutRequest LogoutRequest LogoutRequest LogoutRequest Contains information about an ongoing logout request. swagger:model logoutRequest

func (*LogoutRequest) MarshalBinary

func (m *LogoutRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*LogoutRequest) UnmarshalBinary

func (m *LogoutRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*LogoutRequest) Validate

func (m *LogoutRequest) Validate(formats strfmt.Registry) error

Validate validates this logout request

type OAuth2Client

type OAuth2Client struct {

	// AllowedCORSOrigins are one or more URLs (scheme://host[:port]) which are allowed to make CORS requests
	// to the /oauth/token endpoint. If this array is empty, the sever's CORS origin configuration (`CORS_ALLOWED_ORIGINS`)
	// will be used instead. If this array is set, the allowed origins are appended to the server's CORS origin configuration.
	// Be aware that environment variable `CORS_ENABLED` MUST be set to `true` for this to work.
	AllowedCorsOrigins []string `json:"allowed_cors_origins"`

	// Audience is a whitelist defining the audiences this client is allowed to request tokens for. An audience limits
	// the applicability of an OAuth 2.0 Access Token to, for example, certain API endpoints. The value is a list
	// of URLs. URLs MUST NOT contain whitespaces.
	Audience []string `json:"audience"`

	// Boolean value specifying whether the RP requires that a sid (session ID) Claim be included in the Logout
	// Token to identify the RP session with the OP when the backchannel_logout_uri is used.
	// If omitted, the default value is false.
	BackchannelLogoutSessionRequired bool `json:"backchannel_logout_session_required,omitempty"`

	// RP URL that will cause the RP to log itself out when sent a Logout Token by the OP.
	BackchannelLogoutURI string `json:"backchannel_logout_uri,omitempty"`

	// ClientID  is the id for this client.
	ClientID string `json:"client_id,omitempty"`

	// Name is the human-readable string name of the client to be presented to the
	// end-user during authorization.
	ClientName string `json:"client_name,omitempty"`

	// Secret is the client's secret. The secret will be included in the create request as cleartext, and then
	// never again. The secret is stored using BCrypt so it is impossible to recover it. Tell your users
	// that they need to write the secret down as it will not be made available again.
	ClientSecret string `json:"client_secret,omitempty"`

	// SecretExpiresAt is an integer holding the time at which the client
	// secret will expire or 0 if it will not expire. The time is
	// represented as the number of seconds from 1970-01-01T00:00:00Z as
	// measured in UTC until the date/time of expiration.
	//
	// This feature is currently not supported and it's value will always
	// be set to 0.
	ClientSecretExpiresAt int64 `json:"client_secret_expires_at,omitempty"`

	// ClientURI is an URL string of a web page providing information about the client.
	// If present, the server SHOULD display this URL to the end-user in
	// a clickable fashion.
	ClientURI string `json:"client_uri,omitempty"`

	// Contacts is a array of strings representing ways to contact people responsible
	// for this client, typically email addresses.
	Contacts []string `json:"contacts"`

	// CreatedAt returns the timestamp of the client's creation.
	// Format: date-time
	CreatedAt strfmt.DateTime `json:"created_at,omitempty"`

	// Boolean value specifying whether the RP requires that iss (issuer) and sid (session ID) query parameters be
	// included to identify the RP session with the OP when the frontchannel_logout_uri is used.
	// If omitted, the default value is false.
	FrontchannelLogoutSessionRequired bool `json:"frontchannel_logout_session_required,omitempty"`

	// RP URL that will cause the RP to log itself out when rendered in an iframe by the OP. An iss (issuer) query
	// parameter and a sid (session ID) query parameter MAY be included by the OP to enable the RP to validate the
	// request and to determine which of the potentially multiple sessions is to be logged out; if either is
	// included, both MUST be.
	FrontchannelLogoutURI string `json:"frontchannel_logout_uri,omitempty"`

	// GrantTypes is an array of grant types the client is allowed to use.
	// Pattern: client_credentials|authorization_code|implicit|refresh_token
	GrantTypes []string `json:"grant_types"`

	// jwks
	Jwks *JSONWebKeySet `json:"jwks,omitempty"`

	// URL for the Client's JSON Web Key Set [JWK] document. If the Client signs requests to the Server, it contains
	// the signing key(s) the Server uses to validate signatures from the Client. The JWK Set MAY also contain the
	// Client's encryption keys(s), which are used by the Server to encrypt responses to the Client. When both signing
	// and encryption keys are made available, a use (Key Use) parameter value is REQUIRED for all keys in the referenced
	// JWK Set to indicate each key's intended usage. Although some algorithms allow the same key to be used for both
	// signatures and encryption, doing so is NOT RECOMMENDED, as it is less secure. The JWK x5c parameter MAY be used
	// to provide X.509 representations of keys provided. When used, the bare key values MUST still be present and MUST
	// match those in the certificate.
	JwksURI string `json:"jwks_uri,omitempty"`

	// LogoURI is an URL string that references a logo for the client.
	LogoURI string `json:"logo_uri,omitempty"`

	// Metadata is arbitrary data.
	Metadata interface{} `json:"metadata,omitempty"`

	// Owner is a string identifying the owner of the OAuth 2.0 Client.
	Owner string `json:"owner,omitempty"`

	// PolicyURI is a URL string that points to a human-readable privacy policy document
	// that describes how the deployment organization collects, uses,
	// retains, and discloses personal data.
	PolicyURI string `json:"policy_uri,omitempty"`

	// Array of URLs supplied by the RP to which it MAY request that the End-User's User Agent be redirected using the
	// post_logout_redirect_uri parameter after a logout has been performed.
	PostLogoutRedirectUris []string `json:"post_logout_redirect_uris"`

	// RedirectURIs is an array of allowed redirect urls for the client, for example http://mydomain/oauth/callback .
	RedirectUris []string `json:"redirect_uris"`

	// JWS [JWS] alg algorithm [JWA] that MUST be used for signing Request Objects sent to the OP. All Request Objects
	// from this Client MUST be rejected, if not signed with this algorithm.
	RequestObjectSigningAlg string `json:"request_object_signing_alg,omitempty"`

	// Array of request_uri values that are pre-registered by the RP for use at the OP. Servers MAY cache the
	// contents of the files referenced by these URIs and not retrieve them at the time they are used in a request.
	// OPs can require that request_uri values used be pre-registered with the require_request_uri_registration
	// discovery parameter.
	RequestUris []string `json:"request_uris"`

	// ResponseTypes is an array of the OAuth 2.0 response type strings that the client can
	// use at the authorization endpoint.
	// Pattern: id_token|code|token
	ResponseTypes []string `json:"response_types"`

	// Scope is a string containing a space-separated list of scope values (as
	// described in Section 3.3 of OAuth 2.0 [RFC6749]) that the client
	// can use when requesting access tokens.
	// Pattern: ([a-zA-Z0-9\.\*]+\s?)+
	Scope string `json:"scope,omitempty"`

	// URL using the https scheme to be used in calculating Pseudonymous Identifiers by the OP. The URL references a
	// file with a single JSON array of redirect_uri values.
	SectorIdentifierURI string `json:"sector_identifier_uri,omitempty"`

	// SubjectType requested for responses to this Client. The subject_types_supported Discovery parameter contains a
	// list of the supported subject_type values for this server. Valid types include `pairwise` and `public`.
	SubjectType string `json:"subject_type,omitempty"`

	// Requested Client Authentication method for the Token Endpoint. The options are client_secret_post,
	// client_secret_basic, private_key_jwt, and none.
	TokenEndpointAuthMethod string `json:"token_endpoint_auth_method,omitempty"`

	// TermsOfServiceURI is a URL string that points to a human-readable terms of service
	// document for the client that describes a contractual relationship
	// between the end-user and the client that the end-user accepts when
	// authorizing the client.
	TosURI string `json:"tos_uri,omitempty"`

	// UpdatedAt returns the timestamp of the last update.
	// Format: date-time
	UpdatedAt strfmt.DateTime `json:"updated_at,omitempty"`

	// JWS alg algorithm [JWA] REQUIRED for signing UserInfo Responses. If this is specified, the response will be JWT
	// [JWT] serialized, and signed using JWS. The default, if omitted, is for the UserInfo Response to return the Claims
	// as a UTF-8 encoded JSON object using the application/json content-type.
	UserinfoSignedResponseAlg string `json:"userinfo_signed_response_alg,omitempty"`
}

OAuth2Client Client represents an OAuth 2.0 Client. swagger:model oAuth2Client

func (*OAuth2Client) MarshalBinary

func (m *OAuth2Client) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*OAuth2Client) UnmarshalBinary

func (m *OAuth2Client) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*OAuth2Client) Validate

func (m *OAuth2Client) Validate(formats strfmt.Registry) error

Validate validates this o auth2 client

type OAuth2TokenIntrospection

type OAuth2TokenIntrospection struct {

	// Active is a boolean indicator of whether or not the presented token
	// is currently active.  The specifics of a token's "active" state
	// will vary depending on the implementation of the authorization
	// server and the information it keeps about its tokens, but a "true"
	// value return for the "active" property will generally indicate
	// that a given token has been issued by this authorization server,
	// has not been revoked by the resource owner, and is within its
	// given time window of validity (e.g., after its issuance time and
	// before its expiration time).
	// Required: true
	Active *bool `json:"active"`

	// Audience contains a list of the token's intended audiences.
	Aud []string `json:"aud"`

	// ClientID is aclient identifier for the OAuth 2.0 client that
	// requested this token.
	ClientID string `json:"client_id,omitempty"`

	// Expires at is an integer timestamp, measured in the number of seconds
	// since January 1 1970 UTC, indicating when this token will expire.
	Exp int64 `json:"exp,omitempty"`

	// Extra is arbitrary data set by the session.
	Ext map[string]interface{} `json:"ext,omitempty"`

	// Issued at is an integer timestamp, measured in the number of seconds
	// since January 1 1970 UTC, indicating when this token was
	// originally issued.
	Iat int64 `json:"iat,omitempty"`

	// IssuerURL is a string representing the issuer of this token
	Iss string `json:"iss,omitempty"`

	// NotBefore is an integer timestamp, measured in the number of seconds
	// since January 1 1970 UTC, indicating when this token is not to be
	// used before.
	Nbf int64 `json:"nbf,omitempty"`

	// ObfuscatedSubject is set when the subject identifier algorithm was set to "pairwise" during authorization.
	// It is the `sub` value of the ID Token that was issued.
	ObfuscatedSubject string `json:"obfuscated_subject,omitempty"`

	// Scope is a JSON string containing a space-separated list of
	// scopes associated with this token.
	Scope string `json:"scope,omitempty"`

	// Subject of the token, as defined in JWT [RFC7519].
	// Usually a machine-readable identifier of the resource owner who
	// authorized this token.
	Sub string `json:"sub,omitempty"`

	// TokenType is the introspected token's type, for example `access_token` or `refresh_token`.
	TokenType string `json:"token_type,omitempty"`

	// Username is a human-readable identifier for the resource owner who
	// authorized this token.
	Username string `json:"username,omitempty"`
}

OAuth2TokenIntrospection Introspection contains an access token's session data as specified by IETF RFC 7662, see:

https://tools.ietf.org/html/rfc7662 swagger:model oAuth2TokenIntrospection

func (*OAuth2TokenIntrospection) MarshalBinary

func (m *OAuth2TokenIntrospection) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*OAuth2TokenIntrospection) UnmarshalBinary

func (m *OAuth2TokenIntrospection) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*OAuth2TokenIntrospection) Validate

func (m *OAuth2TokenIntrospection) Validate(formats strfmt.Registry) error

Validate validates this o auth2 token introspection

type Oauth2TokenResponse

type Oauth2TokenResponse struct {

	// access token
	AccessToken string `json:"access_token,omitempty"`

	// expires in
	ExpiresIn int64 `json:"expires_in,omitempty"`

	// id token
	IDToken string `json:"id_token,omitempty"`

	// refresh token
	RefreshToken string `json:"refresh_token,omitempty"`

	// scope
	Scope string `json:"scope,omitempty"`

	// token type
	TokenType string `json:"token_type,omitempty"`
}

Oauth2TokenResponse Oauth2TokenResponse The Access Token Response swagger:model oauth2TokenResponse

func (*Oauth2TokenResponse) MarshalBinary

func (m *Oauth2TokenResponse) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*Oauth2TokenResponse) UnmarshalBinary

func (m *Oauth2TokenResponse) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*Oauth2TokenResponse) Validate

func (m *Oauth2TokenResponse) Validate(formats strfmt.Registry) error

Validate validates this oauth2 token response

type ObjectIdentifier

type ObjectIdentifier []int64

ObjectIdentifier ObjectIdentifier ObjectIdentifier ObjectIdentifier ObjectIdentifier ObjectIdentifier An ObjectIdentifier represents an ASN.1 OBJECT IDENTIFIER. swagger:model ObjectIdentifier

func (ObjectIdentifier) Validate

func (m ObjectIdentifier) Validate(formats strfmt.Registry) error

Validate validates this object identifier

type OpenIDConnectContext

type OpenIDConnectContext struct {

	// ACRValues is the Authentication AuthorizationContext Class Reference requested in the OAuth 2.0 Authorization request.
	// It is a parameter defined by OpenID Connect and expresses which level of authentication (e.g. 2FA) is required.
	//
	// OpenID Connect defines it as follows:
	// > Requested Authentication AuthorizationContext Class Reference values. Space-separated string that specifies the acr values
	// that the Authorization Server is being requested to use for processing this Authentication Request, with the
	// values appearing in order of preference. The Authentication AuthorizationContext Class satisfied by the authentication
	// performed is returned as the acr Claim Value, as specified in Section 2. The acr Claim is requested as a
	// Voluntary Claim by this parameter.
	AcrValues []string `json:"acr_values"`

	// Display is a string value that specifies how the Authorization Server displays the authentication and consent user interface pages to the End-User.
	// The defined values are:
	// page: The Authorization Server SHOULD display the authentication and consent UI consistent with a full User Agent page view. If the display parameter is not specified, this is the default display mode.
	// popup: The Authorization Server SHOULD display the authentication and consent UI consistent with a popup User Agent window. The popup User Agent window should be of an appropriate size for a login-focused dialog and should not obscure the entire window that it is popping up over.
	// touch: The Authorization Server SHOULD display the authentication and consent UI consistent with a device that leverages a touch interface.
	// wap: The Authorization Server SHOULD display the authentication and consent UI consistent with a "feature phone" type display.
	//
	// The Authorization Server MAY also attempt to detect the capabilities of the User Agent and present an appropriate display.
	Display string `json:"display,omitempty"`

	// IDTokenHintClaims are the claims of the ID Token previously issued by the Authorization Server being passed as a hint about the
	// End-User's current or past authenticated session with the Client.
	IDTokenHintClaims map[string]interface{} `json:"id_token_hint_claims,omitempty"`

	// LoginHint hints about the login identifier the End-User might use to log in (if necessary).
	// This hint can be used by an RP if it first asks the End-User for their e-mail address (or other identifier)
	// and then wants to pass that value as a hint to the discovered authorization service. This value MAY also be a
	// phone number in the format specified for the phone_number Claim. The use of this parameter is optional.
	LoginHint string `json:"login_hint,omitempty"`

	// UILocales is the End-User'id preferred languages and scripts for the user interface, represented as a
	// space-separated list of BCP47 [RFC5646] language tag values, ordered by preference. For instance, the value
	// "fr-CA fr en" represents a preference for French as spoken in Canada, then French (without a region designation),
	// followed by English (without a region designation). An error SHOULD NOT result if some or all of the requested
	// locales are not supported by the OpenID Provider.
	UILocales []string `json:"ui_locales"`
}

OpenIDConnectContext Contains optional information about the OpenID Connect request. swagger:model openIDConnectContext

func (*OpenIDConnectContext) MarshalBinary

func (m *OpenIDConnectContext) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*OpenIDConnectContext) UnmarshalBinary

func (m *OpenIDConnectContext) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*OpenIDConnectContext) Validate

func (m *OpenIDConnectContext) Validate(formats strfmt.Registry) error

Validate validates this open ID connect context

type PreviousConsentSession

type PreviousConsentSession struct {

	// consent request
	ConsentRequest *ConsentRequest `json:"consent_request,omitempty"`

	// GrantedAudience sets the audience the user authorized the client to use. Should be a subset of `requested_access_token_audience`.
	GrantAccessTokenAudience []string `json:"grant_access_token_audience"`

	// GrantScope sets the scope the user authorized the client to use. Should be a subset of `requested_scope`
	GrantScope []string `json:"grant_scope"`

	// Remember, if set to true, tells ORY Hydra to remember this consent authorization and reuse it if the same
	// client asks the same user for the same, or a subset of, scope.
	Remember bool `json:"remember,omitempty"`

	// RememberFor sets how long the consent authorization should be remembered for in seconds. If set to `0`, the
	// authorization will be remembered indefinitely.
	RememberFor int64 `json:"remember_for,omitempty"`

	// session
	Session *ConsentRequestSession `json:"session,omitempty"`
}

PreviousConsentSession PreviousConsentSession PreviousConsentSession PreviousConsentSession PreviousConsentSession PreviousConsentSession The response used to return used consent requests same as HandledLoginRequest, just with consent_request exposed as json swagger:model PreviousConsentSession

func (*PreviousConsentSession) MarshalBinary

func (m *PreviousConsentSession) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*PreviousConsentSession) UnmarshalBinary

func (m *PreviousConsentSession) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*PreviousConsentSession) Validate

func (m *PreviousConsentSession) Validate(formats strfmt.Registry) error

Validate validates this previous consent session

type RejectRequest

type RejectRequest struct {

	// error
	Error string `json:"error,omitempty"`

	// error debug
	ErrorDebug string `json:"error_debug,omitempty"`

	// error description
	ErrorDescription string `json:"error_description,omitempty"`

	// error hint
	ErrorHint string `json:"error_hint,omitempty"`

	// status code
	StatusCode int64 `json:"status_code,omitempty"`
}

RejectRequest RejectRequest The request payload used to accept a login or consent request. swagger:model rejectRequest

func (*RejectRequest) MarshalBinary

func (m *RejectRequest) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*RejectRequest) UnmarshalBinary

func (m *RejectRequest) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*RejectRequest) Validate

func (m *RejectRequest) Validate(formats strfmt.Registry) error

Validate validates this reject request

type Userinfo

type Userinfo interface{}

Userinfo Userinfo Userinfo Userinfo Userinfo Userinfo The Userinfo type is an immutable encapsulation of username and password details for a URL. An existing Userinfo value is guaranteed to have a username set (potentially empty, as allowed by RFC 2396), and optionally a password. swagger:model Userinfo

type UserinfoResponse

type UserinfoResponse struct {

	// End-User's birthday, represented as an ISO 8601:2004 [ISO8601‑2004] YYYY-MM-DD format. The year MAY be 0000, indicating that it is omitted. To represent only the year, YYYY format is allowed. Note that depending on the underlying platform's date related function, providing just year can result in varying month and day, so the implementers need to take this factor into account to correctly process the dates.
	Birthdate string `json:"birthdate,omitempty"`

	// End-User's preferred e-mail address. Its value MUST conform to the RFC 5322 [RFC5322] addr-spec syntax. The RP MUST NOT rely upon this value being unique, as discussed in Section 5.7.
	Email string `json:"email,omitempty"`

	// True if the End-User's e-mail address has been verified; otherwise false. When this Claim Value is true, this means that the OP took affirmative steps to ensure that this e-mail address was controlled by the End-User at the time the verification was performed. The means by which an e-mail address is verified is context-specific, and dependent upon the trust framework or contractual agreements within which the parties are operating.
	EmailVerified bool `json:"email_verified,omitempty"`

	// Surname(s) or last name(s) of the End-User. Note that in some cultures, people can have multiple family names or no family name; all can be present, with the names being separated by space characters.
	FamilyName string `json:"family_name,omitempty"`

	// End-User's gender. Values defined by this specification are female and male. Other values MAY be used when neither of the defined values are applicable.
	Gender string `json:"gender,omitempty"`

	// Given name(s) or first name(s) of the End-User. Note that in some cultures, people can have multiple given names; all can be present, with the names being separated by space characters.
	GivenName string `json:"given_name,omitempty"`

	// End-User's locale, represented as a BCP47 [RFC5646] language tag. This is typically an ISO 639-1 Alpha-2 [ISO639‑1] language code in lowercase and an ISO 3166-1 Alpha-2 [ISO3166‑1] country code in uppercase, separated by a dash. For example, en-US or fr-CA. As a compatibility note, some implementations have used an underscore as the separator rather than a dash, for example, en_US; Relying Parties MAY choose to accept this locale syntax as well.
	Locale string `json:"locale,omitempty"`

	// Middle name(s) of the End-User. Note that in some cultures, people can have multiple middle names; all can be present, with the names being separated by space characters. Also note that in some cultures, middle names are not used.
	MiddleName string `json:"middle_name,omitempty"`

	// End-User's full name in displayable form including all name parts, possibly including titles and suffixes, ordered according to the End-User's locale and preferences.
	Name string `json:"name,omitempty"`

	// Casual name of the End-User that may or may not be the same as the given_name. For instance, a nickname value of Mike might be returned alongside a given_name value of Michael.
	Nickname string `json:"nickname,omitempty"`

	// End-User's preferred telephone number. E.164 [E.164] is RECOMMENDED as the format of this Claim, for example, +1 (425) 555-1212 or +56 (2) 687 2400. If the phone number contains an extension, it is RECOMMENDED that the extension be represented using the RFC 3966 [RFC3966] extension syntax, for example, +1 (604) 555-1234;ext=5678.
	PhoneNumber string `json:"phone_number,omitempty"`

	// True if the End-User's phone number has been verified; otherwise false. When this Claim Value is true, this means that the OP took affirmative steps to ensure that this phone number was controlled by the End-User at the time the verification was performed. The means by which a phone number is verified is context-specific, and dependent upon the trust framework or contractual agreements within which the parties are operating. When true, the phone_number Claim MUST be in E.164 format and any extensions MUST be represented in RFC 3966 format.
	PhoneNumberVerified bool `json:"phone_number_verified,omitempty"`

	// URL of the End-User's profile picture. This URL MUST refer to an image file (for example, a PNG, JPEG, or GIF image file), rather than to a Web page containing an image. Note that this URL SHOULD specifically reference a profile photo of the End-User suitable for displaying when describing the End-User, rather than an arbitrary photo taken by the End-User.
	Picture string `json:"picture,omitempty"`

	// Non-unique shorthand name by which the End-User wishes to be referred to at the RP, such as janedoe or j.doe. This value MAY be any valid JSON string including special characters such as @, /, or whitespace.
	PreferredUsername string `json:"preferred_username,omitempty"`

	// URL of the End-User's profile page. The contents of this Web page SHOULD be about the End-User.
	Profile string `json:"profile,omitempty"`

	// Subject - Identifier for the End-User at the IssuerURL.
	Sub string `json:"sub,omitempty"`

	// Time the End-User's information was last updated. Its value is a JSON number representing the number of seconds from 1970-01-01T0:0:0Z as measured in UTC until the date/time.
	UpdatedAt int64 `json:"updated_at,omitempty"`

	// URL of the End-User's Web page or blog. This Web page SHOULD contain information published by the End-User or an organization that the End-User is affiliated with.
	Website string `json:"website,omitempty"`

	// String from zoneinfo [zoneinfo] time zone database representing the End-User's time zone. For example, Europe/Paris or America/Los_Angeles.
	Zoneinfo string `json:"zoneinfo,omitempty"`
}

UserinfoResponse The userinfo response swagger:model userinfoResponse

func (*UserinfoResponse) MarshalBinary

func (m *UserinfoResponse) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*UserinfoResponse) UnmarshalBinary

func (m *UserinfoResponse) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*UserinfoResponse) Validate

func (m *UserinfoResponse) Validate(formats strfmt.Registry) error

Validate validates this userinfo response

type Version

type Version struct {

	// Version is the service's version.
	Version string `json:"version,omitempty"`
}

Version version swagger:model version

func (*Version) MarshalBinary

func (m *Version) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*Version) UnmarshalBinary

func (m *Version) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*Version) Validate

func (m *Version) Validate(formats strfmt.Registry) error

Validate validates this version

type WellKnown

type WellKnown struct {

	// URL of the OP's OAuth 2.0 Authorization Endpoint.
	// Required: true
	AuthorizationEndpoint *string `json:"authorization_endpoint"`

	// Boolean value specifying whether the OP can pass a sid (session ID) Claim in the Logout Token to identify the RP
	// session with the OP. If supported, the sid Claim is also included in ID Tokens issued by the OP
	BackchannelLogoutSessionSupported bool `json:"backchannel_logout_session_supported,omitempty"`

	// Boolean value specifying whether the OP supports back-channel logout, with true indicating support.
	BackchannelLogoutSupported bool `json:"backchannel_logout_supported,omitempty"`

	// Boolean value specifying whether the OP supports use of the claims parameter, with true indicating support.
	ClaimsParameterSupported bool `json:"claims_parameter_supported,omitempty"`

	// JSON array containing a list of the Claim Names of the Claims that the OpenID Provider MAY be able to supply
	// values for. Note that for privacy or other reasons, this might not be an exhaustive list.
	ClaimsSupported []string `json:"claims_supported"`

	// URL at the OP to which an RP can perform a redirect to request that the End-User be logged out at the OP.
	EndSessionEndpoint string `json:"end_session_endpoint,omitempty"`

	// Boolean value specifying whether the OP can pass iss (issuer) and sid (session ID) query parameters to identify
	// the RP session with the OP when the frontchannel_logout_uri is used. If supported, the sid Claim is also
	// included in ID Tokens issued by the OP.
	FrontchannelLogoutSessionSupported bool `json:"frontchannel_logout_session_supported,omitempty"`

	// Boolean value specifying whether the OP supports HTTP-based logout, with true indicating support.
	FrontchannelLogoutSupported bool `json:"frontchannel_logout_supported,omitempty"`

	// JSON array containing a list of the OAuth 2.0 Grant Type values that this OP supports.
	GrantTypesSupported []string `json:"grant_types_supported"`

	// JSON array containing a list of the JWS signing algorithms (alg values) supported by the OP for the ID Token
	// to encode the Claims in a JWT.
	// Required: true
	IDTokenSigningAlgValuesSupported []string `json:"id_token_signing_alg_values_supported"`

	// URL using the https scheme with no query or fragment component that the OP asserts as its IssuerURL Identifier.
	// If IssuerURL discovery is supported , this value MUST be identical to the issuer value returned
	// by WebFinger. This also MUST be identical to the iss Claim value in ID Tokens issued from this IssuerURL.
	// Required: true
	Issuer *string `json:"issuer"`

	// URL of the OP's JSON Web Key Set [JWK] document. This contains the signing key(s) the RP uses to validate
	// signatures from the OP. The JWK Set MAY also contain the Server's encryption key(s), which are used by RPs
	// to encrypt requests to the Server. When both signing and encryption keys are made available, a use (Key Use)
	// parameter value is REQUIRED for all keys in the referenced JWK Set to indicate each key's intended usage.
	// Although some algorithms allow the same key to be used for both signatures and encryption, doing so is
	// NOT RECOMMENDED, as it is less secure. The JWK x5c parameter MAY be used to provide X.509 representations of
	// keys provided. When used, the bare key values MUST still be present and MUST match those in the certificate.
	// Required: true
	JwksURI *string `json:"jwks_uri"`

	// URL of the OP's Dynamic Client Registration Endpoint.
	RegistrationEndpoint string `json:"registration_endpoint,omitempty"`

	// Boolean value specifying whether the OP supports use of the request parameter, with true indicating support.
	RequestParameterSupported bool `json:"request_parameter_supported,omitempty"`

	// Boolean value specifying whether the OP supports use of the request_uri parameter, with true indicating support.
	RequestURIParameterSupported bool `json:"request_uri_parameter_supported,omitempty"`

	// Boolean value specifying whether the OP requires any request_uri values used to be pre-registered
	// using the request_uris registration parameter.
	RequireRequestURIRegistration bool `json:"require_request_uri_registration,omitempty"`

	// JSON array containing a list of the OAuth 2.0 response_mode values that this OP supports.
	ResponseModesSupported []string `json:"response_modes_supported"`

	// JSON array containing a list of the OAuth 2.0 response_type values that this OP supports. Dynamic OpenID
	// Providers MUST support the code, id_token, and the token id_token Response Type values.
	// Required: true
	ResponseTypesSupported []string `json:"response_types_supported"`

	// URL of the authorization server's OAuth 2.0 revocation endpoint.
	RevocationEndpoint string `json:"revocation_endpoint,omitempty"`

	// SON array containing a list of the OAuth 2.0 [RFC6749] scope values that this server supports. The server MUST
	// support the openid scope value. Servers MAY choose not to advertise some supported scope values even when this parameter is used
	ScopesSupported []string `json:"scopes_supported"`

	// JSON array containing a list of the Subject Identifier types that this OP supports. Valid types include
	// pairwise and public.
	// Required: true
	SubjectTypesSupported []string `json:"subject_types_supported"`

	// URL of the OP's OAuth 2.0 Token Endpoint
	// Required: true
	TokenEndpoint *string `json:"token_endpoint"`

	// JSON array containing a list of Client Authentication methods supported by this Token Endpoint. The options are
	// client_secret_post, client_secret_basic, client_secret_jwt, and private_key_jwt, as described in Section 9 of OpenID Connect Core 1.0
	TokenEndpointAuthMethodsSupported []string `json:"token_endpoint_auth_methods_supported"`

	// URL of the OP's UserInfo Endpoint.
	UserinfoEndpoint string `json:"userinfo_endpoint,omitempty"`

	// JSON array containing a list of the JWS [JWS] signing algorithms (alg values) [JWA] supported by the UserInfo Endpoint to encode the Claims in a JWT [JWT].
	UserinfoSigningAlgValuesSupported []string `json:"userinfo_signing_alg_values_supported"`
}

WellKnown WellKnown WellKnown WellKnown WellKnown represents important OpenID Connect discovery metadata

It includes links to several endpoints (e.g. /oauth2/token) and exposes information on supported signature algorithms among others. swagger:model wellKnown

func (*WellKnown) MarshalBinary

func (m *WellKnown) MarshalBinary() ([]byte, error)

MarshalBinary interface implementation

func (*WellKnown) UnmarshalBinary

func (m *WellKnown) UnmarshalBinary(b []byte) error

UnmarshalBinary interface implementation

func (*WellKnown) Validate

func (m *WellKnown) Validate(formats strfmt.Registry) error

Validate validates this well known

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL