Documentation ¶
Index ¶
- Constants
- type AuthorizationRegistry
- type ClientToken
- type CredentialSubject
- type DSBAToken
- type DSBAVerifiableCredential
- type Decision
- type Delegation
- type DelegationEvidence
- type DelegationRequest
- type DelegationRequestWrapper
- type DelegationResponse
- type DelegationTarget
- type Environment
- type GaiaXSubject
- type GaiaXToken
- type HttpError
- type IShareCredentialsSubject
- type IShareToken
- type PartyInfo
- type PartyToken
- type Policy
- type PolicySet
- type PolicySetEnvironment
- type PolicySetTarget
- type PolicyTarget
- type ProblemDetails
- type Resource
- type Role
- type Roles
- type Rule
- type RuleTarget
- type TrustedCertificate
- type TrustedListResponse
- type TrustedListToken
- type TrustedParticipant
- type TrustedPartyResponse
Constants ¶
* * Constant indicating the "permit" effect as defined by iShare
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type AuthorizationRegistry ¶
type AuthorizationRegistry struct { Id string `json:"id,omitempty"` Host string `json:"host"` // will use default path it not included - {host}/connect/token TokenPath string `json:"tokenPath,omitempty"` // will use default path it not included - {host}/delegation DelegationPath string `json:"delegationPath,omitempty"` }
func (AuthorizationRegistry) GetDelegationAddress ¶
func (ar AuthorizationRegistry) GetDelegationAddress() string
func (AuthorizationRegistry) GetTokenAddress ¶
func (ar AuthorizationRegistry) GetTokenAddress() string
type ClientToken ¶
type CredentialSubject ¶
type CredentialSubject struct { Id string `json:"id,omitempty"` *GaiaXSubject *Roles }
type DSBAToken ¶
type DSBAToken struct { VerifiableCredential *DSBAVerifiableCredential `json:"verifiableCredential"` jwt.RegisteredClaims }
type DSBAVerifiableCredential ¶
type DSBAVerifiableCredential struct { Context []string `json:"@context,omitempty"` Id string `json:"id,omitempty"` Type []string `json:"type,omitempty"` Issuer string `json:"issuer,omitempty"` IssuanceDate string `json:"issuanceDate,omitempty"` ValidFrom string `json:"validFrom,omitempty"` ExpirationDate string `json:"expirationDate,omitempty"` CredentialSubject CredentialSubject `json:"credentialSubject,omitempty"` }
type Delegation ¶
type Delegation struct { Issuer string `json:"iss,omitempty"` Subject string `json:"sub,omitempty"` JwtId string `json:"jti,omitempty"` IssuedAt int `json:"iat,omitempty"` Expiry int `json:"exp,omitempty"` Audience string `json:"aud,omitempty"` DelegationEvidence DelegationEvidence `json:"delegationEvidence,omitempty"` }
type DelegationEvidence ¶
type DelegationEvidence struct { NotBefore int64 `json:"notBefore,omitempty"` NotOnOrAfter int64 `json:"notOnOrAfter,omitempty"` PolicyIssuer string `json:"policyIssuer,omitempty"` Target DelegationTarget `json:"target,omitempty"` PolicySets []PolicySet `json:"policySets,omitempty"` }
type DelegationRequest ¶
type DelegationRequest struct { PolicyIssuer string `json:"policyIssuer,omitempty"` Target *DelegationTarget `json:"target,omitempty"` PolicySets []*PolicySet `json:"policySets,omitempty"` DelegationPath []string `json:"delegation_path,omitempty"` PreviousSteps []string `json:"previous_steps,omitempty"` }
type DelegationRequestWrapper ¶
type DelegationRequestWrapper struct {
DelegationRequest *DelegationRequest `json:"delegationRequest,omitempty"`
}
type DelegationResponse ¶
type DelegationResponse struct {
DelegationToken string `json:"delegation_token,omitempty"`
}
type DelegationTarget ¶
type DelegationTarget struct {
AccessSubject string `json:"accessSubject,omitempty"`
}
type Environment ¶
type Environment struct {
ServiceProviders []string `json:"serviceProviders,omitempty"`
}
type GaiaXSubject ¶
type GaiaXSubject struct {
Type string `json:"type,omitempty"`
}
type GaiaXToken ¶
type GaiaXToken struct { VerifiablePresentation []interface{} `json:"verifiablePresentation"` jwt.RegisteredClaims }
type IShareCredentialsSubject ¶
type IShareCredentialsSubject struct { string]AuthorizationRegistry `json:"authorizationRegistry,omitempty"` }AuthorizationRegistries *map[
type IShareToken ¶
type IShareToken struct {}
func (IShareToken) GetIssuer ¶
func (ist IShareToken) GetIssuer() string
type PartyInfo ¶
type PartyInfo struct { PartyId string `json:"party_id"` PartyName string `json:"party_name"` Certificates *[]TrustedCertificate `json:"certificates"` }
type PartyToken ¶
type PartyToken struct { PartyInfo *PartyInfo `json:"party_info"` jwt.RegisteredClaims }
func (PartyToken) GetIssuer ¶
func (ist PartyToken) GetIssuer() string
type Policy ¶
type Policy struct { Target *PolicyTarget `json:"target,omitempty"` Rules []Rule `json:"rules,omitempty"` }
type PolicySet ¶
type PolicySet struct { MaxDelegationDepth int `json:"maxDelegationDepth,omitempty"` Target *PolicySetTarget `json:"target,omitempty"` Policies []Policy `json:"policies,omitempty"` }
type PolicySetEnvironment ¶
type PolicySetEnvironment struct {
Licenses []string `json:"licenses,omitempty"`
}
type PolicySetTarget ¶
type PolicySetTarget struct {
Environment *PolicySetEnvironment `json:"environment,omitempty"`
}
type PolicyTarget ¶
type PolicyTarget struct { Resource *Resource `json:"resource,omitempty"` Actions []string `json:"actions,omitempty"` Environment *Environment `json:"environment,omitempty"` }
type ProblemDetails ¶
type Rule ¶
type Rule struct { Effect string `json:"effect,omitempty"` Target *RuleTarget `json:"target,omitempty"` }
type RuleTarget ¶
type TrustedCertificate ¶
type TrustedListResponse ¶
type TrustedListResponse struct {
TrustedListToken string `json:"trusted_list_token"`
}
type TrustedListToken ¶
type TrustedListToken struct { TrustedList *[]TrustedParticipant `json:"trusted_list"` jwt.RegisteredClaims }
func (TrustedListToken) GetIssuer ¶
func (ist TrustedListToken) GetIssuer() string
type TrustedParticipant ¶
type TrustedPartyResponse ¶
type TrustedPartyResponse struct {
PartyToken string `json:"party_token"`
}
Click to show internal directories.
Click to hide internal directories.