Documentation ¶
Overview ¶
Package api MinIO Console Server
Schemes: http ws Host: localhost BasePath: /api/v1 Version: 0.1.0 Consumes: - application/json - multipart/form-data Produces: - application/zip - application/octet-stream - application/json
swagger:meta
Index ¶
- Constants
- Variables
- func AuditLogMiddleware(next http.Handler) http.Handler
- func AuthenticationMiddleware(next http.Handler) http.Handler
- func ContextMiddleware(next http.Handler) http.Handler
- func DifferenceArrays(a, b []string) []string
- func ExpireSessionCookie() http.Cookie
- func FileServerMiddleware(next http.Handler) http.Handler
- func GetConsoleHTTPClient(address string, clientIP string) *http.Client
- func GetHostname() string
- func GetMinIORegion() string
- func GetPort() int
- func GetSecureAllowedHosts() []string
- func GetSecureAllowedHostsAreRegex() bool
- func GetSecureBrowserXSSFilter() bool
- func GetSecureContentSecurityPolicy() string
- func GetSecureContentSecurityPolicyReportOnly() string
- func GetSecureContentTypeNonSniff() bool
- func GetSecureFeaturePolicy() string
- func GetSecureForceSTSHeader() bool
- func GetSecureFrameDeny() bool
- func GetSecureHostsProxyHeaders() []string
- func GetSecureReferrerPolicy() string
- func GetSecureSTSIncludeSubdomains() bool
- func GetSecureSTSPreload() bool
- func GetSecureSTSSeconds() int64
- func GetSecureTLSHost() string
- func GetSecureTLSTemporaryRedirect() bool
- func GetSubnetHTTPClient(ctx context.Context, minioClient MinioAdmin) (*xhttp.Client, error)
- func GetSubnetKeyFromMinIOConfig(ctx context.Context, minioClient MinioAdmin) (*subnet.LicenseTokenConfig, error)
- func GetSubnetRegToken(ctx context.Context, minioClient MinioAdmin) (string, error)
- func GetSubnetRegister(ctx context.Context, minioClient MinioAdmin, httpClient xhttp.ClientI, ...) error
- func GetTLSPort() int
- func GetTLSRedirect() string
- func IsElementInArray(a []string, b string) bool
- func NewConsoleCredentials(accessKey, secretKey, location, clientIP string) (*credentials.Credentials, error)
- func NewMinioAdminClient(ctx context.Context, sessionClaims *models.Principal) (*madmin.AdminClient, error)
- func NewSessionCookieForConsole(token string) http.Cookie
- func PrepareConsoleHTTPClient(insecure bool, clientIP string) *http.Client
- func RandomCharString(n int) string
- func RandomCharStringWithAlphabet(n int, alphabet string) string
- func RejectS3Middleware(next http.Handler) http.Handler
- func SanitizeEncodedPrefix(rawPrefix string) string
- func SetPolicy(ctx context.Context, client MinioAdmin, name, entityName string, ...) error
- func SubnetLogin(client xhttp.ClientI, username, password string) (string, string, error)
- func SubnetLoginWithMFA(client xhttp.ClientI, username, mfaToken, otp string) (*models.SubnetLoginResponse, error)
- func SubnetRegisterWithAPIKey(ctx context.Context, minioClient MinioAdmin, apiKey string) (bool, error)
- func UniqueKeys(a []string) []string
- func ValidateEncodedStyles(encodedStyles string) error
- type AdminClient
- type AdminClientMock
- type CodedAPIError
- func Error(err ...interface{}) *CodedAPIError
- func ErrorWithContext(ctx context.Context, err ...interface{}) *CodedAPIError
- func GetKMSAPIsResponse(session *models.Principal, params kmsAPI.KMSAPIsParams) (*models.KmsAPIsResponse, *CodedAPIError)
- func GetKMSAssignPolicyResponse(session *models.Principal, params kmsAPI.KMSAssignPolicyParams) *CodedAPIError
- func GetKMSCreateKeyResponse(session *models.Principal, params kmsAPI.KMSCreateKeyParams) *CodedAPIError
- func GetKMSDeleteIdentityResponse(session *models.Principal, params kmsAPI.KMSDeleteIdentityParams) *CodedAPIError
- func GetKMSDeleteKeyResponse(session *models.Principal, params kmsAPI.KMSDeleteKeyParams) *CodedAPIError
- func GetKMSDeletePolicyResponse(session *models.Principal, params kmsAPI.KMSDeletePolicyParams) *CodedAPIError
- func GetKMSDescribeIdentityResponse(session *models.Principal, params kmsAPI.KMSDescribeIdentityParams) (*models.KmsDescribeIdentityResponse, *CodedAPIError)
- func GetKMSDescribePolicyResponse(session *models.Principal, params kmsAPI.KMSDescribePolicyParams) (*models.KmsDescribePolicyResponse, *CodedAPIError)
- func GetKMSDescribeSelfIdentityResponse(session *models.Principal, params kmsAPI.KMSDescribeSelfIdentityParams) (*models.KmsDescribeSelfIdentityResponse, *CodedAPIError)
- func GetKMSGetPolicyResponse(session *models.Principal, params kmsAPI.KMSGetPolicyParams) (*models.KmsGetPolicyResponse, *CodedAPIError)
- func GetKMSImportKeyResponse(session *models.Principal, params kmsAPI.KMSImportKeyParams) *CodedAPIError
- func GetKMSKeyStatusResponse(session *models.Principal, params kmsAPI.KMSKeyStatusParams) (*models.KmsKeyStatusResponse, *CodedAPIError)
- func GetKMSListIdentitiesResponse(session *models.Principal, params kmsAPI.KMSListIdentitiesParams) (*models.KmsListIdentitiesResponse, *CodedAPIError)
- func GetKMSListKeysResponse(session *models.Principal, params kmsAPI.KMSListKeysParams) (*models.KmsListKeysResponse, *CodedAPIError)
- func GetKMSListPoliciesResponse(session *models.Principal, params kmsAPI.KMSListPoliciesParams) (*models.KmsListPoliciesResponse, *CodedAPIError)
- func GetKMSMetricsResponse(session *models.Principal, params kmsAPI.KMSMetricsParams) (*models.KmsMetricsResponse, *CodedAPIError)
- func GetKMSSetPolicyResponse(session *models.Principal, params kmsAPI.KMSSetPolicyParams) *CodedAPIError
- func GetKMSStatusResponse(session *models.Principal, params kmsAPI.KMSStatusParams) (*models.KmsStatusResponse, *CodedAPIError)
- func GetKMSVersionResponse(session *models.Principal, params kmsAPI.KMSVersionParams) (*models.KmsVersionResponse, *CodedAPIError)
- func GetReleaseListResponse(_ *models.Principal, params release.ListReleasesParams) (*models.ReleaseListResponse, *CodedAPIError)
- func GetSubnetAPIKeyResponse(session *models.Principal, params subnetApi.SubnetAPIKeyParams) (*models.APIKey, *CodedAPIError)
- func GetSubnetInfoResponse(session *models.Principal, params subnetApi.SubnetInfoParams) (*models.License, *CodedAPIError)
- func GetSubnetLoginResponse(session *models.Principal, params subnetApi.SubnetLoginParams) (*models.SubnetLoginResponse, *CodedAPIError)
- func GetSubnetLoginWithMFAResponse(session *models.Principal, params subnetApi.SubnetLoginMFAParams) (*models.SubnetLoginResponse, *CodedAPIError)
- func GetSubnetRegTokenResponse(session *models.Principal, params subnetApi.SubnetRegTokenParams) (*models.SubnetRegTokenResponse, *CodedAPIError)
- func GetSubnetRegisterResponse(session *models.Principal, params subnetApi.SubnetRegisterParams) *CodedAPIError
- type Conditions
- type ConfigurationSetItem
- type ConsoleCredentials
- type ConsoleCredentialsI
- type ConsoleTransport
- type ConsoleWebsocket
- type ConsoleWebsocketAdmin
- type ConsoleWebsocketMClient
- type Context
- type CustomButtonStyle
- type CustomInputStyle
- type CustomStyles
- type CustomSwitchStyle
- type CustomTableStyle
- type DataResult
- type GridPos
- type LabelResponse
- type LabelResults
- type ListObjectsOpts
- type LogRequest
- type MCClient
- type Metric
- type MetricOptions
- type MinIOConfig
- type MinioAdmin
- type MinioClient
- type MultiLifecycleResult
- type ObjectResponse
- type ObjectsRequest
- type PromResp
- type PromRespData
- type ReduceOptions
- type RemoteBucketResult
- type Server
- func (s *Server) ConfigureAPI()
- func (s *Server) ConfigureFlags()
- func (s *Server) Fatalf(f string, args ...interface{})
- func (s *Server) GetHandler() http.Handler
- func (s *Server) HTTPListener() ([]net.Listener, error)
- func (s *Server) Listen() error
- func (s *Server) Logf(f string, args ...interface{})
- func (s *Server) Serve() (err error)
- func (s *Server) SetAPI(api *operations.ConsoleAPI)
- func (s *Server) SetHandler(handler http.Handler)
- func (s *Server) Shutdown() error
- func (s *Server) TLSListener() ([]net.Listener, error)
- func (s *Server) UnixListener() (net.Listener, error)
- type SubnetPlan
- type SubnetRegistration
- type Target
- type TraceRequest
- type UsageInfo
- type VersionState
- type WSConn
- type WSResponse
- type Widget
- type WidgetLabel
Constants ¶
const ( Unknown = 0 Allow = 1 Deny = -1 )
Policy evaluated constants
const ( // Constants for common configuration ConsoleMinIOServer = "CONSOLE_MINIO_SERVER" ConsoleSubnetProxy = "CONSOLE_SUBNET_PROXY" ConsoleMinIORegion = "CONSOLE_MINIO_REGION" ConsoleHostname = "CONSOLE_HOSTNAME" ConsolePort = "CONSOLE_PORT" ConsoleTLSPort = "CONSOLE_TLS_PORT" // Constants for Secure middleware ConsoleSecureAllowedHosts = "CONSOLE_SECURE_ALLOWED_HOSTS" ConsoleSecureAllowedHostsAreRegex = "CONSOLE_SECURE_ALLOWED_HOSTS_ARE_REGEX" ConsoleSecureFrameDeny = "CONSOLE_SECURE_FRAME_DENY" ConsoleSecureContentTypeNoSniff = "CONSOLE_SECURE_CONTENT_TYPE_NO_SNIFF" ConsoleSecureBrowserXSSFilter = "CONSOLE_SECURE_BROWSER_XSS_FILTER" ConsoleSecureContentSecurityPolicy = "CONSOLE_SECURE_CONTENT_SECURITY_POLICY" ConsoleSecureContentSecurityPolicyReportOnly = "CONSOLE_SECURE_CONTENT_SECURITY_POLICY_REPORT_ONLY" ConsoleSecureHostsProxyHeaders = "CONSOLE_SECURE_HOSTS_PROXY_HEADERS" ConsoleSecureSTSSeconds = "CONSOLE_SECURE_STS_SECONDS" ConsoleSecureSTSIncludeSubdomains = "CONSOLE_SECURE_STS_INCLUDE_SUB_DOMAINS" ConsoleSecureSTSPreload = "CONSOLE_SECURE_STS_PRELOAD" ConsoleSecureTLSRedirect = "CONSOLE_SECURE_TLS_REDIRECT" ConsoleSecureTLSHost = "CONSOLE_SECURE_TLS_HOST" ConsoleSecureTLSTemporaryRedirect = "CONSOLE_SECURE_TLS_TEMPORARY_REDIRECT" ConsoleSecureForceSTSHeader = "CONSOLE_SECURE_FORCE_STS_HEADER" ConsoleSecurePublicKey = "CONSOLE_SECURE_PUBLIC_KEY" ConsoleSecureReferrerPolicy = "CONSOLE_SECURE_REFERRER_POLICY" ConsoleSecureFeaturePolicy = "CONSOLE_SECURE_FEATURE_POLICY" ConsoleSecureExpectCTHeader = "CONSOLE_SECURE_EXPECT_CT_HEADER" PrometheusURL = "CONSOLE_PROMETHEUS_URL" PrometheusAuthToken = "CONSOLE_PROMETHEUS_AUTH_TOKEN" PrometheusJobID = "CONSOLE_PROMETHEUS_JOB_ID" PrometheusExtraLabels = "CONSOLE_PROMETHEUS_EXTRA_LABELS" ConsoleLogQueryURL = "CONSOLE_LOG_QUERY_URL" ConsoleLogQueryAuthToken = "CONSOLE_LOG_QUERY_AUTH_TOKEN" ConsoleMaxConcurrentUploads = "CONSOLE_MAX_CONCURRENT_UPLOADS" ConsoleMaxConcurrentDownloads = "CONSOLE_MAX_CONCURRENT_DOWNLOADS" ConsoleDevMode = "CONSOLE_DEV_MODE" ConsoleAnimatedLogin = "CONSOLE_ANIMATED_LOGIN" LogSearchQueryAuthToken = "LOGSEARCH_QUERY_AUTH_TOKEN" SlashSeparator = "/" LocalAddress = "127.0.0.1" )
list of all console environment constants
const EnvSubnetLicense = "CONSOLE_SUBNET_LICENSE"
const (
SubPath = "CONSOLE_SUBPATH"
)
Variables ¶
var ( // Port console default port Port = "9090" // Hostname console hostname // avoid listening on 0.0.0.0 by default // instead listen on all IPv4 and IPv6 // - Hostname should be empty. Hostname = "" // TLSPort console tls port TLSPort = "9443" // TLSRedirect console tls redirect rule TLSRedirect = "on" ConsoleResourceName = "console-ui" )
var ( // GlobalRootCAs is CA root certificates, a nil value means system certs pool will be used GlobalRootCAs *x509.CertPool // GlobalPublicCerts has certificates Console will use to serve clients GlobalPublicCerts []*x509.Certificate // GlobalTLSCertsManager custom TLS Manager for SNI support GlobalTLSCertsManager *xcerts.Manager )
var ( // SwaggerJSON embedded version of the swagger document used at generation time SwaggerJSON json.RawMessage // FlatSwaggerJSON embedded flattened version of the swagger document used at generation time FlatSwaggerJSON json.RawMessage )
var ( ErrDefault = errors.New("an error occurred, please try again") ErrInvalidLogin = errors.New("invalid Login") ErrForbidden = errors.New("403 Forbidden") ErrBadRequest = errors.New("400 Bad Request") ErrFileTooLarge = errors.New("413 File too Large") ErrInvalidSession = errors.New("invalid session") ErrNotFound = errors.New("not found") ErrGroupAlreadyExists = errors.New("error group name already in use") ErrInvalidErasureCodingValue = errors.New("invalid Erasure Coding Value") ErrBucketBodyNotInRequest = errors.New("error bucket body not in request") ErrBucketNameNotInRequest = errors.New("error bucket name not in request") ErrGroupBodyNotInRequest = errors.New("error group body not in request") ErrGroupNameNotInRequest = errors.New("error group name not in request") ErrPolicyNameNotInRequest = errors.New("error policy name not in request") ErrPolicyBodyNotInRequest = errors.New("error policy body not in request") ErrPolicyNameContainsSpace = errors.New("error policy name cannot contain spaces") ErrInvalidEncryptionAlgorithm = errors.New("error invalid encryption algorithm") ErrSSENotConfigured = errors.New("error server side encryption configuration not found") ErrBucketLifeCycleNotConfigured = errors.New("error bucket life cycle configuration not found") ErrChangePassword = errors.New("error please check your current password") ErrInvalidLicense = errors.New("invalid license key") ErrLicenseNotFound = errors.New("license not found") ErrAvoidSelfAccountDelete = errors.New("logged in user cannot be deleted by itself") ErrAccessDenied = errors.New("access denied") ErrOauth2Provider = errors.New("unable to contact configured identity provider") ErrOauth2Login = errors.New("unable to login using configured identity provider") ErrNonUniqueAccessKey = errors.New("access key already in use") ErrRemoteTierExists = errors.New("specified remote tier already exists") ErrRemoteTierNotFound = errors.New("specified remote tier was not found") ErrRemoteTierUppercase = errors.New("tier name must be in uppercase") ErrRemoteTierBucketNotFound = errors.New("remote tier bucket not found") ErrRemoteInvalidCredentials = errors.New("invalid remote tier credentials") ErrUnableToGetTenantUsage = errors.New("unable to get tenant usage") ErrTooManyNodes = errors.New("cannot request more nodes than what is available in the cluster") ErrTooFewNodes = errors.New("there are not enough nodes in the cluster to support this tenant") ErrTooFewAvailableNodes = errors.New("there is not enough available nodes to satisfy this requirement") ErrFewerThanFourNodes = errors.New("at least 4 nodes are required for a tenant") ErrUnableToGetTenantLogs = errors.New("unable to get tenant logs") ErrUnableToUpdateTenantCertificates = errors.New("unable to update tenant certificates") ErrUpdatingEncryptionConfig = errors.New("unable to update encryption configuration") ErrDeletingEncryptionConfig = errors.New("error disabling tenant encryption") ErrEncryptionConfigNotFound = errors.New("encryption configuration not found") ErrPolicyNotFound = errors.New("policy does not exist") ErrLoginNotAllowed = errors.New("login not allowed") ErrSubnetUploadFail = errors.New("SUBNET upload failed") ErrHealthReportFail = errors.New("failure to generate Health report") )
var ( LogInfo = logInfo LogError = logError LogIf = logIf )
globally changeable logger styles
var ErrSubnetLicenseNotFound = errors.New("license not found")
var InstanceLicensePlan = PlanAGPL
var (
MinioServerInfoMock func(ctx context.Context) (madmin.InfoMessage, error)
)
Functions ¶
func DifferenceArrays ¶
DifferenceArrays returns the elements in `a` that aren't in `b`.
func ExpireSessionCookie ¶
func FileServerMiddleware ¶
FileServerMiddleware serves files from the static folder
func GetConsoleHTTPClient ¶
GetConsoleHTTPClient caches different http clients depending on the target endpoint while taking in consideration CA certs stored in ${HOME}/.console/certs/CAs and ${HOME}/.minio/certs/CAs If the target endpoint points to a loopback device, skip the TLS verification.
func GetHostname ¶
func GetHostname() string
GetHostname gets console hostname set on env variable, default one or defined on run command
func GetMinIORegion ¶
func GetMinIORegion() string
func GetSecureAllowedHosts ¶
func GetSecureAllowedHosts() []string
Get secure middleware env variable configurations
func GetSecureAllowedHostsAreRegex ¶
func GetSecureAllowedHostsAreRegex() bool
AllowedHostsAreRegex determines, if the provided AllowedHosts slice contains valid regular expressions. Default is false.
func GetSecureBrowserXSSFilter ¶
func GetSecureBrowserXSSFilter() bool
If BrowserXssFilter is true, adds the X-XSS-Protection header with the value `1; mode=block`. Default is true.
func GetSecureContentSecurityPolicy ¶
func GetSecureContentSecurityPolicy() string
ContentSecurityPolicy allows the Content-Security-Policy header value to be set with a custom value. Default is "". Passing a template string will replace `$NONCE` with a dynamic nonce value of 16 bytes for each request which can be later retrieved using the Nonce function.
func GetSecureContentSecurityPolicyReportOnly ¶
func GetSecureContentSecurityPolicyReportOnly() string
ContentSecurityPolicyReportOnly allows the Content-Security-Policy-Report-Only header value to be set with a custom value. Default is "".
func GetSecureContentTypeNonSniff ¶
func GetSecureContentTypeNonSniff() bool
If ContentTypeNosniff is true, adds the X-Content-Type-Options header with the value `nosniff`. Default is true.
func GetSecureFeaturePolicy ¶
func GetSecureFeaturePolicy() string
FeaturePolicy allows the Feature-Policy header with the value to be set with a custom value. Default is "".
func GetSecureForceSTSHeader ¶
func GetSecureForceSTSHeader() bool
STS header is only included when the connection is HTTPS.
func GetSecureFrameDeny ¶
func GetSecureFrameDeny() bool
If FrameDeny is set to true, adds the X-Frame-Options header with the value of `DENY`. Default is true.
func GetSecureHostsProxyHeaders ¶
func GetSecureHostsProxyHeaders() []string
HostsProxyHeaders is a set of header keys that may hold a proxied hostname value for the request.
func GetSecureReferrerPolicy ¶
func GetSecureReferrerPolicy() string
ReferrerPolicy allows the Referrer-Policy header with the value to be set with a custom value. Default is "".
func GetSecureSTSIncludeSubdomains ¶
func GetSecureSTSIncludeSubdomains() bool
If STSIncludeSubdomains is set to true, the `includeSubdomains` will be appended to the Strict-Transport-Security header. Default is false.
func GetSecureSTSPreload ¶
func GetSecureSTSPreload() bool
If STSPreload is set to true, the `preload` flag will be appended to the Strict-Transport-Security header. Default is false.
func GetSecureSTSSeconds ¶
func GetSecureSTSSeconds() int64
STSSeconds is the max-age of the Strict-Transport-Security header. Default is 0, which would NOT include the header.
func GetSecureTLSHost ¶
func GetSecureTLSHost() string
TLSHost is the host name that is used to redirect HTTP requests to HTTPS. Default is "", which indicates to use the same host.
func GetSecureTLSTemporaryRedirect ¶
func GetSecureTLSTemporaryRedirect() bool
If TLSTemporaryRedirect is true, the a 302 will be used while redirecting. Default is false (301).
func GetSubnetHTTPClient ¶
GetSubnetHTTPClient will return a client with proxy if configured, otherwise will return the default console http client
func GetSubnetKeyFromMinIOConfig ¶
func GetSubnetKeyFromMinIOConfig(ctx context.Context, minioClient MinioAdmin) (*subnet.LicenseTokenConfig, error)
func GetSubnetRegToken ¶
func GetSubnetRegToken(ctx context.Context, minioClient MinioAdmin) (string, error)
func GetSubnetRegister ¶
func GetSubnetRegister(ctx context.Context, minioClient MinioAdmin, httpClient xhttp.ClientI, params subnetApi.SubnetRegisterParams) error
func GetTLSPort ¶
func GetTLSPort() int
GetTLSPort gets console tls port set on env variable or default one
func GetTLSRedirect ¶
func GetTLSRedirect() string
If GetTLSRedirect is set to true, then only allow HTTPS requests. Default is true.
func IsElementInArray ¶
IsElementInArray returns true if the string belongs to the slice
func NewConsoleCredentials ¶
func NewConsoleCredentials(accessKey, secretKey, location, clientIP string) (*credentials.Credentials, error)
func NewMinioAdminClient ¶
func PrepareConsoleHTTPClient ¶
PrepareConsoleHTTPClient returns an http.Client with custom configurations need it by *credentials.STSAssumeRole custom configurations include the use of CA certificates
func RandomCharString ¶
func RejectS3Middleware ¶
RejectS3Middleware will reject requests that have AWS S3 specific headers.
func SanitizeEncodedPrefix ¶
SanitizeEncodedPrefix replaces spaces for + since those are lost when you do GET parameters
func SetPolicy ¶
func SetPolicy(ctx context.Context, client MinioAdmin, name, entityName string, entityType models.PolicyEntity) error
SetPolicy calls MinIO server to assign policy to a group or user.
func SubnetLogin ¶
func SubnetLoginWithMFA ¶
func UniqueKeys ¶
UniqueKeys returns an array without duplicated keys
func ValidateEncodedStyles ¶
Types ¶
type AdminClient ¶
type AdminClient struct {
Client *madmin.AdminClient
}
Interface implementation
Define the structure of a minIO Client and define the functions that are actually used from minIO api.
func (AdminClient) AccountInfo ¶
func (ac AdminClient) AccountInfo(ctx context.Context) (madmin.AccountInfo, error)
AccountInfo implements madmin.AccountInfo()
type AdminClientMock ¶
type AdminClientMock struct{}
func (AdminClientMock) AccountInfo ¶
func (ac AdminClientMock) AccountInfo(ctx context.Context) (madmin.AccountInfo, error)
type CodedAPIError ¶
func Error ¶
func Error(err ...interface{}) *CodedAPIError
Error receives an errors object and parse it against k8sErrors, returns the right errors code paired with a generic errors message
func ErrorWithContext ¶
func ErrorWithContext(ctx context.Context, err ...interface{}) *CodedAPIError
ErrorWithContext :
func GetKMSAPIsResponse ¶
func GetKMSAPIsResponse(session *models.Principal, params kmsAPI.KMSAPIsParams) (*models.KmsAPIsResponse, *CodedAPIError)
func GetKMSAssignPolicyResponse ¶
func GetKMSAssignPolicyResponse(session *models.Principal, params kmsAPI.KMSAssignPolicyParams) *CodedAPIError
func GetKMSCreateKeyResponse ¶
func GetKMSCreateKeyResponse(session *models.Principal, params kmsAPI.KMSCreateKeyParams) *CodedAPIError
func GetKMSDeleteIdentityResponse ¶
func GetKMSDeleteIdentityResponse(session *models.Principal, params kmsAPI.KMSDeleteIdentityParams) *CodedAPIError
func GetKMSDeleteKeyResponse ¶
func GetKMSDeleteKeyResponse(session *models.Principal, params kmsAPI.KMSDeleteKeyParams) *CodedAPIError
func GetKMSDeletePolicyResponse ¶
func GetKMSDeletePolicyResponse(session *models.Principal, params kmsAPI.KMSDeletePolicyParams) *CodedAPIError
func GetKMSDescribeIdentityResponse ¶
func GetKMSDescribeIdentityResponse(session *models.Principal, params kmsAPI.KMSDescribeIdentityParams) (*models.KmsDescribeIdentityResponse, *CodedAPIError)
func GetKMSDescribePolicyResponse ¶
func GetKMSDescribePolicyResponse(session *models.Principal, params kmsAPI.KMSDescribePolicyParams) (*models.KmsDescribePolicyResponse, *CodedAPIError)
func GetKMSDescribeSelfIdentityResponse ¶
func GetKMSDescribeSelfIdentityResponse(session *models.Principal, params kmsAPI.KMSDescribeSelfIdentityParams) (*models.KmsDescribeSelfIdentityResponse, *CodedAPIError)
func GetKMSGetPolicyResponse ¶
func GetKMSGetPolicyResponse(session *models.Principal, params kmsAPI.KMSGetPolicyParams) (*models.KmsGetPolicyResponse, *CodedAPIError)
func GetKMSImportKeyResponse ¶
func GetKMSImportKeyResponse(session *models.Principal, params kmsAPI.KMSImportKeyParams) *CodedAPIError
func GetKMSKeyStatusResponse ¶
func GetKMSKeyStatusResponse(session *models.Principal, params kmsAPI.KMSKeyStatusParams) (*models.KmsKeyStatusResponse, *CodedAPIError)
func GetKMSListIdentitiesResponse ¶
func GetKMSListIdentitiesResponse(session *models.Principal, params kmsAPI.KMSListIdentitiesParams) (*models.KmsListIdentitiesResponse, *CodedAPIError)
func GetKMSListKeysResponse ¶
func GetKMSListKeysResponse(session *models.Principal, params kmsAPI.KMSListKeysParams) (*models.KmsListKeysResponse, *CodedAPIError)
func GetKMSListPoliciesResponse ¶
func GetKMSListPoliciesResponse(session *models.Principal, params kmsAPI.KMSListPoliciesParams) (*models.KmsListPoliciesResponse, *CodedAPIError)
func GetKMSMetricsResponse ¶
func GetKMSMetricsResponse(session *models.Principal, params kmsAPI.KMSMetricsParams) (*models.KmsMetricsResponse, *CodedAPIError)
func GetKMSSetPolicyResponse ¶
func GetKMSSetPolicyResponse(session *models.Principal, params kmsAPI.KMSSetPolicyParams) *CodedAPIError
func GetKMSStatusResponse ¶
func GetKMSStatusResponse(session *models.Principal, params kmsAPI.KMSStatusParams) (*models.KmsStatusResponse, *CodedAPIError)
func GetKMSVersionResponse ¶
func GetKMSVersionResponse(session *models.Principal, params kmsAPI.KMSVersionParams) (*models.KmsVersionResponse, *CodedAPIError)
func GetReleaseListResponse ¶
func GetReleaseListResponse(_ *models.Principal, params release.ListReleasesParams) (*models.ReleaseListResponse, *CodedAPIError)
func GetSubnetAPIKeyResponse ¶
func GetSubnetAPIKeyResponse(session *models.Principal, params subnetApi.SubnetAPIKeyParams) (*models.APIKey, *CodedAPIError)
func GetSubnetInfoResponse ¶
func GetSubnetInfoResponse(session *models.Principal, params subnetApi.SubnetInfoParams) (*models.License, *CodedAPIError)
func GetSubnetLoginResponse ¶
func GetSubnetLoginResponse(session *models.Principal, params subnetApi.SubnetLoginParams) (*models.SubnetLoginResponse, *CodedAPIError)
func GetSubnetLoginWithMFAResponse ¶
func GetSubnetLoginWithMFAResponse(session *models.Principal, params subnetApi.SubnetLoginMFAParams) (*models.SubnetLoginResponse, *CodedAPIError)
func GetSubnetRegTokenResponse ¶
func GetSubnetRegTokenResponse(session *models.Principal, params subnetApi.SubnetRegTokenParams) (*models.SubnetRegTokenResponse, *CodedAPIError)
func GetSubnetRegisterResponse ¶
func GetSubnetRegisterResponse(session *models.Principal, params subnetApi.SubnetRegisterParams) *CodedAPIError
type Conditions ¶
type Conditions struct {
S3Prefix []string `json:"s3:prefix"`
}
type ConfigurationSetItem ¶
type ConsoleCredentials ¶
type ConsoleCredentials struct { ConsoleCredentials *credentials.Credentials AccountAccessKey string }
Interface implementation
func (ConsoleCredentials) Expire ¶
func (c ConsoleCredentials) Expire()
Expire implements *Login.Expire()
func (ConsoleCredentials) Get ¶
func (c ConsoleCredentials) Get() (credentials.Value, error)
Get implements *Login.Get()
func (ConsoleCredentials) GetAccountAccessKey ¶
func (c ConsoleCredentials) GetAccountAccessKey() string
type ConsoleCredentialsI ¶
type ConsoleCredentialsI interface { Get() (credentials.Value, error) Expire() GetAccountAccessKey() string }
ConsoleCredentialsI interface with all functions to be implemented by mock when testing, it should include all needed consoleCredentials.Login api calls that are used within this project.
type ConsoleTransport ¶
func PrepareSTSClientTransport ¶
func PrepareSTSClientTransport(insecure bool, remoteAddress string) *ConsoleTransport
PrepareSTSClientTransport :
type ConsoleWebsocket ¶
type ConsoleWebsocket interface {
// contains filtered or unexported methods
}
ConsoleWebsocket interface of a Websocket Client
type ConsoleWebsocketAdmin ¶
type ConsoleWebsocketAdmin interface {
// contains filtered or unexported methods
}
ConsoleWebsocketAdmin interface of a Websocket Client
type ConsoleWebsocketMClient ¶
type ConsoleWebsocketMClient interface {
// contains filtered or unexported methods
}
ConsoleWebSocketMClient interface of a Websocket Client
type Context ¶
type Context struct { Host string HTTPPort, HTTPSPort int TLSRedirect string // Legacy options, TODO: remove in future TLSCertificate, TLSKey, TLSca string }
Context captures all command line flags values
type CustomButtonStyle ¶
type CustomButtonStyle struct { BackgroundColor *string `json:"backgroundColor"` TextColor *string `json:"textColor"` HoverColor *string `json:"hoverColor"` HoverText *string `json:"hoverText"` ActiveColor *string `json:"activeColor"` ActiveText *string `json:"activeText"` DisabledColor *string `json:"disabledColor"` DisabledText *string `json:"disdabledText"` }
type CustomInputStyle ¶
type CustomStyles ¶
type CustomStyles struct { BackgroundColor *string `json:"backgroundColor"` FontColor *string `json:"fontColor"` SecondaryFontColor *string `json:"secondaryFontColor"` BorderColor *string `json:"borderColor"` LoaderColor *string `json:"loaderColor"` BoxBackground *string `json:"boxBackground"` OkColor *string `json:"okColor"` ErrorColor *string `json:"errorColor"` WarnColor *string `json:"warnColor"` LinkColor *string `json:"linkColor"` DisabledLinkColor *string `json:"disabledLinkColor"` HoverLinkColor *string `json:"hoverLinkColor"` ButtonStyles *CustomButtonStyle `json:"buttonStyles"` SecondaryButtonStyles *CustomButtonStyle `json:"secondaryButtonStyles"` RegularButtonStyles *CustomButtonStyle `json:"regularButtonStyles"` TableColors *CustomTableStyle `json:"tableColors"` InputBox *CustomInputStyle `json:"inputBox"` Switch *CustomSwitchStyle `json:"switch"` }
type CustomSwitchStyle ¶
type CustomSwitchStyle struct { SwitchBackground *string `json:"switchBackground"` BulletBorderColor *string `json:"bulletBorderColor"` BulletBGColor *string `json:"bulletBGColor"` DisabledBackground *string `json:"disabledBackground"` DisabledBulletBorderColor *string `json:"disabledBulletBorderColor"` DisabledBulletBGColor *string `json:"disabledBulletBGColor"` }
type CustomTableStyle ¶
type DataResult ¶
type LabelResponse ¶
type LabelResults ¶
type LabelResults struct { Label string Response LabelResponse }
type ListObjectsOpts ¶
type ListObjectsOpts struct {
// contains filtered or unexported fields
}
type LogRequest ¶
type LogRequest struct {
// contains filtered or unexported fields
}
Type for log requests. This allows for filtering by node and kind
type MCClient ¶
type MCClient interface {
// contains filtered or unexported methods
}
MCClient interface with all functions to be implemented by mock when testing, it should include all mc/S3Client respective api calls that are used within this project.
type MetricOptions ¶
type MetricOptions struct {
ReduceOptions ReduceOptions
}
type MinIOConfig ¶
type MinIOConfig struct {
OpenIDProviders oauth2.OpenIDPCfg
}
MinIOConfig represents application configuration passed in from the MinIO server to the console.
var GlobalMinIOConfig MinIOConfig
GlobalMinIOConfig is the global application configuration passed in from the MinIO server.
type MinioAdmin ¶
type MinioAdmin interface { AccountInfo(ctx context.Context) (madmin.AccountInfo, error) // contains filtered or unexported methods }
MinioAdmin interface with all functions to be implemented by mock when testing, it should include all MinioAdmin respective api calls that are used within this project.
type MinioClient ¶
type MinioClient interface { GetBucketTagging(ctx context.Context, bucketName string) (*tags.Tags, error) SetBucketTagging(ctx context.Context, bucketName string, tags *tags.Tags) error RemoveBucketTagging(ctx context.Context, bucketName string) error // contains filtered or unexported methods }
MinioClient interface with all functions to be implemented by mock when testing, it should include all MinioClient respective api calls that are used within this project.
type MultiLifecycleResult ¶
type ObjectResponse ¶
type ObjectsRequest ¶
type PromResp ¶
type PromResp struct { Status string `json:"status"` Data PromRespData `json:"data"` }
type PromRespData ¶
type PromRespData struct { ResultType string `json:"resultType"` Result []DataResult `json:"result"` }
type ReduceOptions ¶
type ReduceOptions struct {
Calcs []string
}
type RemoteBucketResult ¶
type Server ¶
type Server struct { EnabledListeners []string `long:"scheme" description:"the listeners to enable, this can be repeated and defaults to the schemes in the swagger spec"` CleanupTimeout time.Duration `long:"cleanup-timeout" description:"grace period for which to wait before killing idle connections" default:"10s"` GracefulTimeout time.Duration `long:"graceful-timeout" description:"grace period for which to wait before shutting down the server" default:"15s"` MaxHeaderSize flagext.ByteSize `` /* 231-byte string literal not displayed */ SocketPath flags.Filename `long:"socket-path" description:"the unix socket to listen on" default:"/var/run/console.sock"` Host string `long:"host" description:"the IP to listen on" default:"localhost" env:"HOST"` Port int `long:"port" description:"the port to listen on for insecure connections, defaults to a random value" env:"PORT"` ListenLimit int `long:"listen-limit" description:"limit the number of outstanding requests"` KeepAlive time.Duration `` /* 169-byte string literal not displayed */ ReadTimeout time.Duration `long:"read-timeout" description:"maximum duration before timing out read of the request" default:"30s"` WriteTimeout time.Duration `long:"write-timeout" description:"maximum duration before timing out write of the response" default:"60s"` TLSHost string `long:"tls-host" description:"the IP to listen on for tls, when not specified it's the same as --host" env:"TLS_HOST"` TLSPort int `long:"tls-port" description:"the port to listen on for secure connections, defaults to a random value" env:"TLS_PORT"` TLSCertificate flags.Filename `long:"tls-certificate" description:"the certificate to use for secure connections" env:"TLS_CERTIFICATE"` TLSCertificateKey flags.Filename `long:"tls-key" description:"the private key to use for secure connections" env:"TLS_PRIVATE_KEY"` TLSCACertificate flags.Filename `long:"tls-ca" description:"the certificate authority file to be used with mutual tls auth" env:"TLS_CA_CERTIFICATE"` TLSListenLimit int `long:"tls-listen-limit" description:"limit the number of outstanding requests"` TLSKeepAlive time.Duration `` /* 160-byte string literal not displayed */ TLSReadTimeout time.Duration `long:"tls-read-timeout" description:"maximum duration before timing out read of the request"` TLSWriteTimeout time.Duration `long:"tls-write-timeout" description:"maximum duration before timing out write of the response"` // contains filtered or unexported fields }
Server for the console API
func NewServer ¶
func NewServer(api *operations.ConsoleAPI) *Server
NewServer creates a new api console server but does not configure it
func (*Server) ConfigureAPI ¶
func (s *Server) ConfigureAPI()
ConfigureAPI configures the API and handlers.
func (*Server) ConfigureFlags ¶
func (s *Server) ConfigureFlags()
ConfigureFlags configures the additional flags defined by the handlers. Needs to be called before the parser.Parse
func (*Server) Fatalf ¶
Fatalf logs message either via defined user logger or via system one if no user logger is defined. Exits with non-zero status after printing
func (*Server) GetHandler ¶
GetHandler returns a handler useful for testing
func (*Server) HTTPListener ¶
HTTPListener returns the http listener
func (*Server) Logf ¶
Logf logs message either via defined user logger or via system one if no user logger is defined.
func (*Server) SetAPI ¶
func (s *Server) SetAPI(api *operations.ConsoleAPI)
SetAPI configures the server with the specified API. Needs to be called before Serve
func (*Server) SetHandler ¶
SetHandler allows for setting a http handler on this server
func (*Server) TLSListener ¶
TLSListener returns the https listener
type SubnetPlan ¶
type SubnetPlan int
const ( PlanAGPL SubnetPlan = iota PlanStandard PlanEnterprise )
func (SubnetPlan) String ¶
func (sp SubnetPlan) String() string
type SubnetRegistration ¶
type SubnetRegistration struct { AccessToken string MFAToken string Organizations []models.SubnetOrganization }
type TraceRequest ¶
type TraceRequest struct {
// contains filtered or unexported fields
}
Types for trace request. this adds support for calls, threshold, status and extra filters
type UsageInfo ¶
type UsageInfo struct { Buckets int64 Objects int64 Usage int64 DrivesUsage int64 Servers []*models.ServerProperties EndpointNotReady bool Backend *models.BackendProperties }
func GetAdminInfo ¶
func GetAdminInfo(ctx context.Context, client MinioAdmin) (*UsageInfo, error)
GetAdminInfo invokes admin info and returns a parsed `UsageInfo` structure
type VersionState ¶
type VersionState string
const ( VersionEnable VersionState = "enable" VersionSuspend VersionState = "suspend" )
type WSConn ¶
type WSConn interface {
// contains filtered or unexported methods
}
WSConn interface with all functions to be implemented by mock when testing, it should include all websocket.Conn respective api calls that are used within this project.
type WSResponse ¶
type WSResponse struct { RequestID int64 `json:"request_id,omitempty"` Error *CodedAPIError `json:"error,omitempty"` RequestEnd bool `json:"request_end,omitempty"` Prefix string `json:"prefix,omitempty"` BucketName string `json:"bucketName,omitempty"` Data []ObjectResponse `json:"data,omitempty"` }
type WidgetLabel ¶
type WidgetLabel struct {
Name string
}
Source Files ¶
- admin_arns.go
- admin_client_mock.go
- admin_config.go
- admin_console.go
- admin_groups.go
- admin_health_info.go
- admin_idp.go
- admin_info.go
- admin_inspect.go
- admin_kms.go
- admin_nodes.go
- admin_notification_endpoints.go
- admin_objects.go
- admin_policies.go
- admin_profiling.go
- admin_releases.go
- admin_remote_buckets.go
- admin_replication_status.go
- admin_service.go
- admin_site_replication.go
- admin_speedtest.go
- admin_subnet.go
- admin_tiers.go
- admin_trace.go
- admin_users.go
- client-admin.go
- client.go
- config.go
- configure_console.go
- consts.go
- custom-server.go
- doc.go
- embedded_spec.go
- errors.go
- license.go
- logs.go
- service_accounts_handlers.go
- tls.go
- user_account.go
- user_bucket_quota.go
- user_buckets.go
- user_buckets_events.go
- user_buckets_lifecycle.go
- user_log_search.go
- user_login.go
- user_logout.go
- user_objects.go
- user_session.go
- user_support.go
- user_watch.go
- utils.go
- ws_handle.go
- ws_objects.go