Interface AuditTrail
- All Known Implementing Classes:
LoggingAuditTrail
public interface AuditTrail
-
Field Summary
Fields -
Method Summary
Modifier and TypeMethodDescriptionvoidaccessDenied(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, org.elasticsearch.transport.TransportRequest transportRequest, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) voidaccessGranted(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, org.elasticsearch.transport.TransportRequest transportRequest, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) voidanonymousAccessDenied(String requestId, String action, org.elasticsearch.transport.TransportRequest transportRequest) voidanonymousAccessDenied(String requestId, org.elasticsearch.rest.RestRequest request) voidauthenticationFailed(String requestId, String action, org.elasticsearch.transport.TransportRequest transportRequest) voidauthenticationFailed(String requestId, String realm, org.elasticsearch.xpack.core.security.authc.AuthenticationToken token, String action, org.elasticsearch.transport.TransportRequest transportRequest) voidauthenticationFailed(String requestId, String realm, org.elasticsearch.xpack.core.security.authc.AuthenticationToken token, org.elasticsearch.rest.RestRequest request) voidauthenticationFailed(String requestId, org.elasticsearch.rest.RestRequest request) voidauthenticationFailed(String requestId, org.elasticsearch.xpack.core.security.authc.AuthenticationToken token, String action, org.elasticsearch.transport.TransportRequest transportRequest) voidauthenticationFailed(String requestId, org.elasticsearch.xpack.core.security.authc.AuthenticationToken token, org.elasticsearch.rest.RestRequest request) voidauthenticationSuccess(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, org.elasticsearch.transport.TransportRequest transportRequest) voidauthenticationSuccess(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, org.elasticsearch.rest.RestRequest request) voidconnectionDenied(InetAddress inetAddress, String profile, SecurityIpFilterRule rule) voidconnectionGranted(InetAddress inetAddress, String profile, SecurityIpFilterRule rule) TheconnectionGranted(InetAddress, String, SecurityIpFilterRule)andconnectionDenied(InetAddress, String, SecurityIpFilterRule)methods do not have a requestId because they related to a potentially long-lived TCP connection, not a single request.voidcoordinatingActionResponse(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, org.elasticsearch.transport.TransportRequest transportRequest, org.elasticsearch.transport.TransportResponse transportResponse) voidexplicitIndexAccessEvent(String requestId, AuditLevel eventType, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, String indices, String requestName, InetSocketAddress remoteAddress, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) This is a "workaround" method to log index "access_granted" and "access_denied" events for actions not tied to aTransportMessage, or when the connection is not 1:1, i.e.name()voidrunAsDenied(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, org.elasticsearch.transport.TransportRequest transportRequest, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) voidrunAsDenied(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, org.elasticsearch.rest.RestRequest request, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) voidrunAsGranted(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, org.elasticsearch.transport.TransportRequest transportRequest, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) voidtamperedRequest(String requestId, String action, org.elasticsearch.transport.TransportRequest transportRequest) voidtamperedRequest(String requestId, org.elasticsearch.rest.RestRequest request) voidtamperedRequest(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, org.elasticsearch.transport.TransportRequest transportRequest)
-
Field Details
-
X_FORWARDED_FOR_HEADER
- See Also:
-
-
Method Details
-
name
String name() -
authenticationSuccess
void authenticationSuccess(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, org.elasticsearch.rest.RestRequest request) -
authenticationSuccess
-
anonymousAccessDenied
-
anonymousAccessDenied
-
authenticationFailed
-
authenticationFailed
-
authenticationFailed
-
authenticationFailed
void authenticationFailed(String requestId, org.elasticsearch.xpack.core.security.authc.AuthenticationToken token, org.elasticsearch.rest.RestRequest request) -
authenticationFailed
-
authenticationFailed
-
accessGranted
-
accessDenied
-
tamperedRequest
-
tamperedRequest
-
tamperedRequest
-
connectionGranted
TheconnectionGranted(InetAddress, String, SecurityIpFilterRule)andconnectionDenied(InetAddress, String, SecurityIpFilterRule)methods do not have a requestId because they related to a potentially long-lived TCP connection, not a single request. For both Transport and Rest connections, a single connection granted/denied event is generated even if that connection is used for multiple Elasticsearch actions (potentially as different users) -
connectionDenied
-
runAsGranted
-
runAsDenied
-
runAsDenied
void runAsDenied(String requestId, org.elasticsearch.xpack.core.security.authc.Authentication authentication, org.elasticsearch.rest.RestRequest request, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) -
explicitIndexAccessEvent
void explicitIndexAccessEvent(String requestId, AuditLevel eventType, org.elasticsearch.xpack.core.security.authc.Authentication authentication, String action, String indices, String requestName, InetSocketAddress remoteAddress, org.elasticsearch.xpack.core.security.authz.AuthorizationEngine.AuthorizationInfo authorizationInfo) This is a "workaround" method to log index "access_granted" and "access_denied" events for actions not tied to aTransportMessage, or when the connection is not 1:1, i.e. several audit events for an action associated with the same message. It is currently only used to audit the resolved index (alias) name for eachBulkItemRequestcomprised by aBulkShardRequest. We should strive to not use this and TODO refactor it out! -
coordinatingActionResponse
-