mirror of
https://github.com/minio/minio.git
synced 2025-04-20 10:37:31 -04:00
fix: missing audit logger call for some admin APIs (#17623)
This commit is contained in:
parent
43b3c093ef
commit
85f5700e4e
@ -37,7 +37,7 @@ import (
|
|||||||
"github.com/minio/pkg/ldap"
|
"github.com/minio/pkg/ldap"
|
||||||
)
|
)
|
||||||
|
|
||||||
func (a adminAPIHandlers) addOrUpdateIDPHandler(ctx context.Context, w http.ResponseWriter, r *http.Request, isUpdate bool) {
|
func addOrUpdateIDPHandler(ctx context.Context, w http.ResponseWriter, r *http.Request, isUpdate bool) {
|
||||||
objectAPI, cred := validateAdminReq(ctx, w, r, iampolicy.ConfigUpdateAdminAction)
|
objectAPI, cred := validateAdminReq(ctx, w, r, iampolicy.ConfigUpdateAdminAction)
|
||||||
if objectAPI == nil {
|
if objectAPI == nil {
|
||||||
return
|
return
|
||||||
@ -201,7 +201,7 @@ func (a adminAPIHandlers) AddIdentityProviderCfg(w http.ResponseWriter, r *http.
|
|||||||
ctx := newContext(r, w, "AddIdentityProviderCfg")
|
ctx := newContext(r, w, "AddIdentityProviderCfg")
|
||||||
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
||||||
|
|
||||||
a.addOrUpdateIDPHandler(ctx, w, r, false)
|
addOrUpdateIDPHandler(ctx, w, r, false)
|
||||||
}
|
}
|
||||||
|
|
||||||
// UpdateIdentityProviderCfg: updates an existing IDP config for openid/ldap.
|
// UpdateIdentityProviderCfg: updates an existing IDP config for openid/ldap.
|
||||||
@ -213,7 +213,7 @@ func (a adminAPIHandlers) UpdateIdentityProviderCfg(w http.ResponseWriter, r *ht
|
|||||||
ctx := newContext(r, w, "UpdateIdentityProviderCfg")
|
ctx := newContext(r, w, "UpdateIdentityProviderCfg")
|
||||||
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
||||||
|
|
||||||
a.addOrUpdateIDPHandler(ctx, w, r, true)
|
addOrUpdateIDPHandler(ctx, w, r, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
// ListIdentityProviderCfg:
|
// ListIdentityProviderCfg:
|
||||||
|
@ -549,12 +549,14 @@ func (a adminAPIHandlers) SiteReplicationResyncOp(w http.ResponseWriter, r *http
|
|||||||
|
|
||||||
// SiteReplicationDevNull - everything goes to io.Discard
|
// SiteReplicationDevNull - everything goes to io.Discard
|
||||||
// [POST] /minio/admin/v3/site-replication/devnull
|
// [POST] /minio/admin/v3/site-replication/devnull
|
||||||
func (a *adminAPIHandlers) SiteReplicationDevNull(w http.ResponseWriter, r *http.Request) {
|
func (a adminAPIHandlers) SiteReplicationDevNull(w http.ResponseWriter, r *http.Request) {
|
||||||
|
ctx := newContext(r, w, "SiteReplicationDevNull")
|
||||||
|
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
||||||
|
|
||||||
globalSiteNetPerfRX.Connect()
|
globalSiteNetPerfRX.Connect()
|
||||||
defer globalSiteNetPerfRX.Disconnect()
|
defer globalSiteNetPerfRX.Disconnect()
|
||||||
|
|
||||||
connectTime := time.Now()
|
connectTime := time.Now()
|
||||||
ctx := newContext(r, w, "SiteReplicationDevNull")
|
|
||||||
for {
|
for {
|
||||||
n, err := io.CopyN(io.Discard, r.Body, 128*humanize.KiByte)
|
n, err := io.CopyN(io.Discard, r.Body, 128*humanize.KiByte)
|
||||||
atomic.AddUint64(&globalSiteNetPerfRX.RX, uint64(n))
|
atomic.AddUint64(&globalSiteNetPerfRX.RX, uint64(n))
|
||||||
@ -578,7 +580,10 @@ func (a *adminAPIHandlers) SiteReplicationDevNull(w http.ResponseWriter, r *http
|
|||||||
|
|
||||||
// SiteReplicationNetPerf - everything goes to io.Discard
|
// SiteReplicationNetPerf - everything goes to io.Discard
|
||||||
// [POST] /minio/admin/v3/site-replication/netperf
|
// [POST] /minio/admin/v3/site-replication/netperf
|
||||||
func (a *adminAPIHandlers) SiteReplicationNetPerf(w http.ResponseWriter, r *http.Request) {
|
func (a adminAPIHandlers) SiteReplicationNetPerf(w http.ResponseWriter, r *http.Request) {
|
||||||
|
ctx := newContext(r, w, "SiteReplicationNetPerf")
|
||||||
|
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
||||||
|
|
||||||
durationStr := r.Form.Get(peerRESTDuration)
|
durationStr := r.Form.Get(peerRESTDuration)
|
||||||
duration, _ := time.ParseDuration(durationStr)
|
duration, _ := time.ParseDuration(durationStr)
|
||||||
if duration < globalNetPerfMinDuration {
|
if duration < globalNetPerfMinDuration {
|
||||||
|
@ -1242,11 +1242,6 @@ func (a adminAPIHandlers) NetperfHandler(w http.ResponseWriter, r *http.Request)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// SpeedtestHandler - Deprecated. See ObjectSpeedTestHandler
|
|
||||||
func (a adminAPIHandlers) SpeedTestHandler(w http.ResponseWriter, r *http.Request) {
|
|
||||||
a.ObjectSpeedTestHandler(w, r)
|
|
||||||
}
|
|
||||||
|
|
||||||
// ObjectSpeedTestHandler - reports maximum speed of a cluster by performing PUT and
|
// ObjectSpeedTestHandler - reports maximum speed of a cluster by performing PUT and
|
||||||
// GET operations on the server, supports auto tuning by default by automatically
|
// GET operations on the server, supports auto tuning by default by automatically
|
||||||
// increasing concurrency and stopping when we have reached the limits on the
|
// increasing concurrency and stopping when we have reached the limits on the
|
||||||
@ -1416,6 +1411,7 @@ func validateObjPerfOptions(ctx context.Context, storageInfo madmin.StorageInfo,
|
|||||||
// NetSpeedtestHandler - reports maximum network throughput
|
// NetSpeedtestHandler - reports maximum network throughput
|
||||||
func (a adminAPIHandlers) NetSpeedtestHandler(w http.ResponseWriter, r *http.Request) {
|
func (a adminAPIHandlers) NetSpeedtestHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
ctx := newContext(r, w, "NetSpeedtestHandler")
|
ctx := newContext(r, w, "NetSpeedtestHandler")
|
||||||
|
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
||||||
|
|
||||||
writeErrorResponseJSON(ctx, w, errorCodes.ToAPIErr(ErrNotImplemented), r.URL)
|
writeErrorResponseJSON(ctx, w, errorCodes.ToAPIErr(ErrNotImplemented), r.URL)
|
||||||
}
|
}
|
||||||
@ -1545,6 +1541,7 @@ func extractTraceOptions(r *http.Request) (opts madmin.ServiceTraceOpts, err err
|
|||||||
// The handler sends http trace to the connected HTTP client.
|
// The handler sends http trace to the connected HTTP client.
|
||||||
func (a adminAPIHandlers) TraceHandler(w http.ResponseWriter, r *http.Request) {
|
func (a adminAPIHandlers) TraceHandler(w http.ResponseWriter, r *http.Request) {
|
||||||
ctx := newContext(r, w, "HTTPTrace")
|
ctx := newContext(r, w, "HTTPTrace")
|
||||||
|
defer logger.AuditLog(ctx, w, r, mustGetClaimsFromToken(r))
|
||||||
|
|
||||||
// Validate request signature.
|
// Validate request signature.
|
||||||
_, adminAPIErr := checkAdminRequestAuth(ctx, r, iampolicy.TraceAdminAction, "")
|
_, adminAPIErr := checkAdminRequestAuth(ctx, r, iampolicy.TraceAdminAction, "")
|
||||||
|
@ -283,7 +283,7 @@ func registerAdminRouter(router *mux.Router, enableConfigOps bool) {
|
|||||||
Queries("paths", "{paths:.*}").HandlerFunc(gz(httpTraceHdrs(adminAPI.ForceUnlockHandler)))
|
Queries("paths", "{paths:.*}").HandlerFunc(gz(httpTraceHdrs(adminAPI.ForceUnlockHandler)))
|
||||||
}
|
}
|
||||||
|
|
||||||
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest").HandlerFunc(httpTraceHdrs(adminAPI.SpeedTestHandler))
|
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest").HandlerFunc(httpTraceHdrs(adminAPI.ObjectSpeedTestHandler))
|
||||||
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest/object").HandlerFunc(httpTraceHdrs(adminAPI.ObjectSpeedTestHandler))
|
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest/object").HandlerFunc(httpTraceHdrs(adminAPI.ObjectSpeedTestHandler))
|
||||||
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest/drive").HandlerFunc(httpTraceHdrs(adminAPI.DriveSpeedtestHandler))
|
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest/drive").HandlerFunc(httpTraceHdrs(adminAPI.DriveSpeedtestHandler))
|
||||||
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest/net").HandlerFunc(httpTraceHdrs(adminAPI.NetperfHandler))
|
adminRouter.Methods(http.MethodPost).Path(adminVersion + "/speedtest/net").HandlerFunc(httpTraceHdrs(adminAPI.NetperfHandler))
|
||||||
|
Loading…
x
Reference in New Issue
Block a user