Documentation
¶
Index ¶
- Variables
- func RequiredLiveApprovals() []string
- type AbusePolicy
- type AccountConsent
- type Action
- type ApprovalPackage
- type ApprovalValidationReport
- type AuditPolicy
- type ComplianceReport
- type ComplianceRequest
- type CustodyPolicy
- type EgressPolicy
- type LiveApprovalSet
- type Mode
- type OperatorApproval
- type Policy
- type ServiceAuthorization
- type ServiceAuthorizationType
Constants ¶
This section is empty.
Variables ¶
View Source
var ErrLiveServiceDisabled = errors.New("live Signal service transport disabled")
ErrLiveServiceDisabled is returned by code paths that hard-disable live mode or would create/use a live official Signal service transport without a complete approval package.
Functions ¶
func RequiredLiveApprovals ¶ added in v0.3.0
func RequiredLiveApprovals() []string
Types ¶
type AbusePolicy ¶ added in v0.4.0
type AccountConsent ¶ added in v0.4.0
type Action ¶ added in v0.2.0
type Action string
const ( ActionRegister Action = "register" ActionLogin Action = "login" ActionLinkedDevice Action = "linked_device" ActionSend Action = "send" ActionReceive Action = "receive" ActionBackupUpload Action = "backup_upload" ActionBackupDownload Action = "backup_download" ActionUsernameReserve Action = "username_reserve" ActionProductionEgress Action = "production_egress" )
type ApprovalPackage ¶ added in v0.4.0
type ApprovalPackage struct {
OperatorApproval OperatorApproval
ServiceAuthorization ServiceAuthorization
AccountConsent AccountConsent
CustodyPolicy CustodyPolicy
AbusePolicy AbusePolicy
EgressPolicy EgressPolicy
AuditPolicy AuditPolicy
}
type ApprovalValidationReport ¶ added in v0.4.0
func ValidateApprovalPackage ¶ added in v0.4.0
func ValidateApprovalPackage(pkg ApprovalPackage, now time.Time, requested []Action) ApprovalValidationReport
type AuditPolicy ¶ added in v0.4.0
type ComplianceReport ¶ added in v0.2.0
type ComplianceReport struct {
Mode Mode
Approved bool
LiveServiceDisabled bool
BlockedActions []Action
RequiredApprovals []string
DeferredDomains []string
}
func EvaluateCompliance ¶ added in v0.2.0
func EvaluateCompliance(req ComplianceRequest) ComplianceReport
type ComplianceRequest ¶ added in v0.2.0
type CustodyPolicy ¶ added in v0.4.0
type EgressPolicy ¶ added in v0.4.0
type LiveApprovalSet ¶ added in v0.3.0
func NewLiveApprovalSet ¶ added in v0.3.0
func NewLiveApprovalSet(approvals ...string) LiveApprovalSet
type OperatorApproval ¶ added in v0.4.0
type Policy ¶
type Policy struct {
Mode Mode
}
func (Policy) AllowsApprovedLiveTransport ¶ added in v0.4.0
func (Policy) AllowsLiveTransport ¶
func (p Policy) AllowsLiveTransport(approval ApprovalPackage, now time.Time, requested ...Action) bool
AllowsLiveTransport reports whether policy metadata contains the machine-checkable approvals a future live transport would require. This package still ships no live transport implementation, and Validate continues to reject ModeLive.
type ServiceAuthorization ¶ added in v0.4.0
type ServiceAuthorization struct {
Type ServiceAuthorizationType
EvidenceRef string
ExpiresAt time.Time
}
type ServiceAuthorizationType ¶ added in v0.4.0
type ServiceAuthorizationType string
const ( ServiceAuthorizationNone ServiceAuthorizationType = "none" ServiceAuthorizationSignalPermission ServiceAuthorizationType = "signal-written-permission" ServiceAuthorizationOfficialTestEndpoint ServiceAuthorizationType = "official-test-endpoint" ServiceAuthorizationThrowawayAccount ServiceAuthorizationType = "throwaway-owned-account" )
Click to show internal directories.
Click to hide internal directories.