grove.connectors.okta package

Okta connectors for Grove.

Submodules

grove.connectors.okta.api module

Okta API client.

class grove.connectors.okta.api.Client(domain: str = 'okta.com', identity: str | None = None, token: str | None = None, retry: bool | None = True)[source]

Bases: object

get_audit_logs(since: str | None = None, cursor: str | None = None) AuditLogEntries[source]

Get log data from the upstream API.

The Okta system log API uses Polling Requests and Bounded Requests and has a request limit of 1000 per minute:

Parameters:
  • since – Filters the upper time bound of the log events published property for bounded queries or persistence time for polling queries.

  • cursor – Cursor to use when fetching results. Supersedes other parameters.

Returns:

AuditLogEntries object containing a pagination cursor, and log entries.

grove.connectors.okta.system_log module

Okta SystemLog connector for Grove.

class grove.connectors.okta.system_log.Connector(config: ConnectorConfig, context: Dict[str, str])[source]

Bases: BaseConnector

LOG_ORDER = 'CHRONOLOGICAL'
NAME = 'okta_system_log'
POINTER_PATH = 'published'
collect()[source]

Collects all logs from the Okta Audit API.

This will first check whether there are any pointers cached to indicate previous collections. If not, the last week of data will be collected.

property domain

Fetches the Okta domain from the configuration.

This field is used to allow configuration of collection of log data from specific Okta domains, including okta-emea.com, and oktapreview.com. This must not include the customer name / organisation name. The default is ‘okta.com’.

Returns:

The “domain” portion of the connector’s configuration.