Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Manage just-in-time, just-enough access to servers, RDPs, internal apps, and more
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Loading...
Apono is the best solution for just-in-time, temporary access to sensitive cloud resources
Apono lets you automate static access policies by turning them into declarative, dynamic Access Flows. Integrate your cloud environment, CI/CD stack, cloud infrastructure and databases with Apono. Create Access Flows with our declarative UI or in Terraform, and your developers can use Slack, Teams or CLI to request and approve access.
Protect what matters without breaking a sweat.
Do developers have admin/write access or read-only access to production?
Can you answer that, or must you sort through your cloud resources to find out? Of course, by the time you get to the last one, you'll have to recheck the first because so much time has elapsed, and access changes constantly. While discussing it, how long would it take to revoke access to a production cloud resource in an emergency?
With Apono, you have a single point of control for managing access without creating a single point of failure.
Use Apono for on-demand access to critical resources. Grant an engineer permission to fix a production issue in an emergency. Grant a data scientist access to a data lake when needed. Just as important is to revoke access once it's no longer needed.
Apono's permissions are just-in-time and also ephemeral. Access is automatically revoked when no longer needed. No more forgotten privileges or group memberships left open. Access begins and ends according to Access Flow definition.
No need to manually change permissions for each resource on your cloud platform every time someone needs access to one of its resources. While access can be granted at a granular level, large-scale environments can be managed efficiently by creating Access Flows, for individuals and groups, to all cloud resources and assets.
Your environment is always evolving, and so does Apono. Use hierarchies, tags and exclude for dynamic access management.
Are you using Terraform to manage your cloud platforms?
That's great because Apono is a Terraform provider and can be provisioned to work alongside your resources by adding code blocks to integrate them into Apono. When you bring up a resource, it will immediately benefit from Apono access management.
Apono lets you turn static access policies into dynamic Access Flows directly from Terraform. Reuse a simple build file to build the perfect workflows for your organization without ever leaving Terraform.
With Apono, you will work smarter with less effort to manage and gain access to your cloud resources. You will take control of your cloud resource inventory from one central location.
Apono's Access Flows prepare for contingencies, emergency access and regular maintenance. Onboarding becomes quick and easy, with our dynamic Access Flows and access bundles. There's no need for writing and maintaining home-grown scripts and complex workflows.
Your developers can request access bundles and get just the access they need exactly when they need it, no hassle.
Developers and engineers love ChatOps and CLI, so why should they have to use another interface?
Apono integrates with Slack, Teams and CLI, so your R&D can use the tools they know to request & approve access, connect to the resources, and, after the access is automatically revoked, request the access again when they need it.
Apono has developed a declarative, natural language format for defining access permissions. No need to edit config files. We call it Access Flow, and it looks like this:
Select a resource and then add (a) who is allowed to gain access (b) what kind of access (roles or permissions) to grant, (c) which specific resources in the integration to allow access to, (d) how long the access should last, (e) should access be approved automatically or by someone in the organization.
In fact, integrating with Apono and creating Access Flows has proven so intuitive that most Apono customers set up and deploy access control for their entire organizations within two weeks.
Apono doesn't have access to any of your data. Ever.
How does it work? Install our connector in your environment, direct it to your secret store and you're done! The connector manages the data syncs to our app and handles access provisioning and de-provisioning to your services, without storing or caching secrets.
We call it SasS with on-premise level of security. And you can tell your customers that they can be confident that access to their data is protected.
Apono's comprehensive access management covers your entire cloud, with Access Flows defined for every cloud service and resource type. Need to maintain least-privileges to production environments, financial data, PII, and other critical assets? Check!
Access requests and granted access are all logged, so you have a reliable audit of the access to your data. As part of your IT compliance reporting to SOX, HIPAA, GDPR, PCI DSS, SOC 2 and others, use Apono's audit logs and reports. Send them to external auditors, internal GRC and security teams, and export logs directly to ITSM, SIEM and compliance tools.
Commonly used Apono terms
Term | Meaning |
---|---|
Apono syncs with your apps' data, grants and revokes access
How does Apono securely integrate with your environment?
How are Access Flows defined and managed?
How do developers request and approve access?
How do admins manage access logs and audit reports?
Great questions, let's get to it:
Three easy steps are what it takes to create Just-In-Time and Just Enough permissions for everyone with access to your cloud assets and resources.
Connectors are the components that mediate between Apono and your resources to sync data from cloud applications and grant and revoke access permissions.
The Connector does not read, cache or store any secrets, nor does Apono need an account with admin privileges to function. The Connector contacts your secret store or key vault when it needs to sync data or provision access.
Here's how Connectors work:
After you've installed the Connector, integrate Apono with your cloud applications to sync data on users, groups, resources and permissions.
Apono currently has integrations for 35+ resource types in AWS, GCP, Azure and Kubernetes platforms, as well as development and CI/CD tools, databases, incident response tools, IdP, ChatOps products, and more. Check the Integrations Catalog for details and to see the latest.
Create an Access Flows by answering five questions:
Who should get access?
What can they gain access to?
What Actions will they be able to perform?
How Long should they have the access?
Who must Approve the request?
Fill in the blanks using information from drop-down lists, click Create, and you're done.
Apono is completely self-serve! Curious? Try it for yourself (no demo needed)!
Using Terraform? Edit your Terraform .tf file to add Apono access management to your resources
Open-source Terraform or AWS ecosystem, Apono is a recognized provider for both.
Prepare Terraform configuration scripts by referring to the Terraform Installation Guide. You will also need the Integrations Metadata to learn what to included in each Apono resource.
Apono's Terraform provider is great for creating and managing integrations, as well as Access Flows!
Apono is built with DevX in mind. With Apono, developers can:
Gain automatic access without waiting for approval if the Access Flow allows it
Get access details directly in Slack, Teams or CLI and use them with ease
No more complex forms, old service systems, proxies and clients to install, or hackling your IT department when you need to get work done.
That's why thousands of engineers use Apono for access requests every month!
Apono automates access logs and audit reports:
Every access request and action are fully logged
Query logs to get exactly what you need, even with our Public API!
Periodic reports and compliance needs? No problem! Create, save, download and schedule reports at will. We'll send it directly to your inbox.
Apono helps you manage just-in-time access in a secure, least privilege way
Apono was built and designed with security in mind so that any company is able to use it in their environment.
We applied the same least privilege principles to our product that Apono unlocks for its users:
Ensure users receive just the right amount of permissions they need
Ensure users receive access only for the limited time they need them
The Apono platform is built by two separate components:
The Web App
The Connector
The web app continuously receives basic data about users, resources and permissions from the connector.
The connector is fully deployed within the organization’s environment and has a limited set of template functions that can be invoked and are fully in the organization control.
This architecture ensures high reliability as well as segregation of environments, keeping any access to the environment within the environment.
Our web app is a portal for admins to create and manage integrations and Access Flows.
The portal:
Could only be accessed by admins of the system who've authenticated using the organizational identity provider.
Doesn't require access to the organization's environment resources. No roles, permissions, privileges, or actions are granted to the app.
Integrates with the organizational identity provider as the source of truth for the organizational identities.
Doesn't access your data or environment, and only communicates with the Apono connector.
Our connector is a component you install in your cloud environment (AWS, GCP, Azure, Kubernetes). It communicates with your cloud services and cloud apps using, but not caching or storing, your secrets.
The connector:
Is completely within the organization's control, as it is installed in your cloud provider.
Can be uninstalled or disconnected at any time without support from Apono.
Uses fully visible template functions, mutable by the organization’s environment owner. These functions limit the ability of the connector to only invoke specific actions that are predefined.
Has no permissions to access the data itself.
Does not store any secrets.
👍 The Apono Connector is High Availability
No downtime, no outages, no problem!
Our Round Robin method helps ensure uptime for your Apono integrations as users request access. Several connector instances will continue provisioning and deprovisioning access as needed.
When you integrate your cloud applications and IdP with Apono, Apono syncs metadata and configuration information continuously. We only sync basic information needed for access management: users, groups, resources and permissions.
Apono:
Does not read your data, like datasets, files, documents, code, etc.
Does not collect any personal data about your employees: Apono needs a user's email, and that's it.
Does not store or cache secrets or credentials
Apono does not store or cache any of your secrets.
When a data sync is required, the connector gets the secret from your cloud's Secret Store to access the data it needs. After authenticating, the secret is not saved anywhere.
👍 Credentials rotation as often as you need
When granting access to users, Apono enforces password reset and credentials rotation out of the box to meet the strictest compliance and security standards. Read more here.
Get started with Apono in 10 minutes to get dynamic, centralized, just-in-time access management for your cloud!
Get a taste of what Apono can do by (it's free!) and then follow our onboarding wizard.
You will complete 3 steps to see how easy it is for Admins to manage access with dynamic Access Flows, and how intuitive it is for developers and other end users to request and use Apono access just-in-time.
Try Apono in AWS, then unlock all of your cloud providers and applications for centralized, streamlined access management.
What's a connector? What makes it so secure?
The Apono Connector is an on-prem connection that can be used to connect resources to Apono and separate the Apono app from the environment for maximal security.
If you're just getting started with Apono, we recommend using a local connector deployed with docker image.
You should know:
A local connector is only active as long as the container is running. This means you will have to rerun the command when the container is down.
The local connector leverages your existing AWS Profiles. Make sure you have an AWS Profile with Admin permissions to an AWS account, like playground, staging, dev, etc.
If your organization requires MFA, SSO login, VPN login or other security policies, the local connector using your AWS profile will need them to work.
Prerequisites
A configured AWS profile in your AWS CLI with these permissions: List and IAM to the AWS account and resources you want to integrate.
Steps
In the catalog, pick AWS.
Pick Account
Install a new connector and pick "Local Installation"
For Linux/mac:
Copy the command that appears in the Apono App and run it in your terminal:
bash <(curl -s https://apono-public.s3.amazonaws.com/local-connector/install.sh) --apono-token <TOKEN>
The<TOKEN>
will appear in the one-liner the UI generates for you.
Follow the interactive prompts and assign:
AWS profile: Apono will leverage the permissions of the profile you pick. If you don't specify the profile, press enter and Apono will use the default profile.
Results:
If installed successfully, you will see this message: Installation complete. You can return to the Apono App
Go back to the Apono App and continue to integrate AWS. The local connector should appear on the screen with a green checkmark:
For Windows
Copy the command that appears in the Apono App and run it in your terminal:
iex ([System.Text.Encoding]::UTF8.GetString((Invoke-WebRequest -Uri "https://apono-public.s3.amazonaws.com/local-connector/install.ps1" -UseBasicParsing).Content))
Follow the interactive prompts and assign:
The <APONO TOKEN>
that appears in the Apono App under the one-liner command.
Results:
If installed successfully, you will see the container ID that started running.
Go back to the Apono App and continue to integrate AWS. The local connector should appear on the screen with a green checkmark:
Provide the AWS config:
An integration name of your choosing
The region of the account you'd like to integrate
Click Connect
Wait for the integration to sync. This may take a few minutes.
Results:
You should see a success message indicating that Apono has successfully integrated with AWS Test.
Fill in the Access Flow form:
Click Someone to pick who can request the access. You can pick yourself under Users.
Click Select Target to pick the AWS Account you just connected and **the cloud service **you'd like to manage access to. Duplicate this line to include more cloud services in the Access Flow.
Click Any to pick the specific resources in the Access Flow by name, by AWS tags, or by excluding specific resources. You can also leave it as Any.
Click Permissions to pick the permissions users will be able to request.
You can leave the access time as 1 Hour and the approval as Automatic or change them as you'd like.
Click Create Access Flow.
In the next screen, click Request Access continue to Step 3.
Developers and other end users in the organizations will request access according to the Access Flows using Slack, Teams, CLI, or the Apono Web Portal.
Fill in the request form:
Pick the integration
Pick the resource type
Pick resources
Pick permissions
Insert a justification
Click Request
The request will appear on the screen with the status Pending
Once the connector provisions the access successfully, the status of the request will change to Granted
Click View access details
The access details can be used to gain the access you just requested! Test it in AWS!
Click Finish onboarding.
All done!
Check out the Apono Activity log to see how Apono reports and audits access requests.
You can also Revoke the access you were just granted to see how Apono deprovisions access when the access time is up.
How Apono integrations work and what to expect
In order to manage just-in-time access, Apono needs to integrate with your cloud applications. Our integration:
Syncs data on users, resources and permissions
Automates granting and revoking of users' access to cloud resources
Each integration requires:
An installed connector in your cloud environment
A specific configuration, which may include:
A role created for Apono
Metadata like proxy address, hostname, port, region, clusters, secret store, etc. To learn more about each integration's required config, visit the integration guide or our guides.
Apono's unique architecture makes the integration extra secure. Learn more .
Install a connector
A connector can be installed on AWS (using Cloudformation [ECS], Terraform [EKS], CLI [EKS]) , GCP (using CLI [GKE]), Azure (using Terraform or CLI) or Kubernetes (using Terraform or Helm).
Follow NOTE: If you have installed a connector in the past, you may use it for more than 1 integration\
Follow the integration guide Per each integration's requirements, supply Apono with:
The role or permission needed to manage access
The metadata to complete the integration NOTE: During this process, you may be required to leave Apono and complete some steps in the source application portal\
Give the integration a name
The integration name is used when creating Access Flows
This name will be displayed to end-users when creating access requests
Wait for the first sync to complete
Follow the status in the Integrations page Connected tab. A healthy integration looks like this:
In case of error, follow our
All set! with your new integration
This is what a healthy AWS Account integration process looks like when using an existing connector:
Apono currently supports 3 types of integrations:
Resources - these integrations sync data on resources and permissions. Apono then manages JIT access to these resources by granting and revoking users' access based on the Access Flows.
Cloud infrastructure
Databases
CI/CD and development tools
Network and VPN
IdP groups
User information - these integrations sync data on your users and their attributes, like manager, shift, groups, etc.
Identity providers (IdP)
Incident response/on-call tools
IT service management (ITSM) tools
Communications (chat-ops)
Whether you manage your cloud environment in AWS, GCP or Azure, Apono lets you integrate all your cloud services at once!
This means you can manage your entire environment with Apono in a single integration: Apono integrates multiple cloud services from the same AWS Account, GCP Project or Azure Subscription.
In AWS, simply install the connector and secret on any Account you'd like to manage, provide the region and we will do the rest: we'll sync all your resource types, like EC2, RDS, S3 buckets, IAM roles&policies, ECR, EKS, and more all at once.
In GCP, simply install the connector and secret on any Project you'd like to manage and we will do the rest: we'll sync all your resource types, like BigQuery tables, Spanner, Storage, and more all at once.
In Azure, simply install the connector and secret on any Subscription you'd like to manage, and we will do the rest: we'll sync all your resource types, like Storage, MySQL, PostgreSQL, and more all at once.
Go to the Apono Integrations page and click the Catalog tab.
Pick your cloud provider: AWS, GCP or Azure
Pick the level you'd like to integrate on:
AWS:
Pick Organization to manage access to the SSO Identity Center
Pick Account to sync and manage access to a specific Account and multiple services it contains
GCP
Pick Organization to manage access to the Organization or Folder roles.
Pick Project to sync and manage access to a specific Project and multiple services it contains
Azure
Pick Subscription to sync and manage access to a specific Resource Group and multiple services it contains
Provide Apono with the required configuration, and you're done! We'll sync all the services for you.
You'll be redirected to the Connected tab, where you can see your integrations and all the services or resource types that were synced for it. This is also the place to see and troubleshoot integration errors and create new Access Flows.
Connect and disconnect the Apono connector and cloud resources at will
Read more .
You can also install a connector in your cloud environment. Read more .
Go to the and sign up
Otherwise, go back and edit the integration to fix the errors that appear on the screen. Learn more .
An Access Flow is a smart, dynamic access workflow or policy in human readable language that determines who can request access to what, and what the access duration and approval flow should be. Read more about Access Flows .
Browse our in the Apono app.
Access Flow
A dynamic flow to manage and control access. The Access Flow, set by the admin, determines the: -Requester (the user or group of users) -Resource or bundle of resources -Permission or permissions -Approval flow (automatic or by approver) -Access duration
Visit the Access Flows page to see how easily an Access Flow definition is created with step by step instructions.
Access Graph
The Apono Access Graph maps your organization's access: which users, groups and service accounts can access which cloud resources and with which roles and permissions. The graph visualizes the access paths so that you know exactly how access is granted to resources, whether JIT, via group membership or with standing access. Learn more here.
Access Request
Users request access to resources controlled by Apono's Access Flows using Slack, Teams or CLI. This Access Request is either automatically approved or sent to the flow's approver who must then either approve or reject it.
Every access request is fully logged and auditable.
Admin role
Admins are users in Apono who integrate Apono with their environment and create and manage Access Flows.
Approver
A user, group of users, manager or shift member who have been listed on a specific Access Flow as those who must approve or reject an access request.
Bundle
A bundle is a combination of resources and permissions, grouped together so that they can be easily requested and granted together.
Bundles are great for: -Dynamic management - Admins can create a bundle once and use it in different Access Flows with different requesters, approval flows, and access duration. -Ease of use - Requesters can request a bundle of access for the task or incident they are currently handling.
Connector
Connectors are very small apps added to a cloud service that allows secure data sync and access management functions to be run by Apono.
End-user/Grantee
The person who has been granted access to a resource or resources according to an Access Flow and will actually be using it.
Identities
Users in the organization, synced from your identity provider.
IdP
Identity Provider; A service that stores and manages digital identities. Companies use these services to allow their employees or users to connect with the resources they need. They provide a way to manage access, adding or removing privileges, while security remains tight. Read more here.
Integration
Your cloud integrations must be connected with Apono to sync data on identities, resources and permissions and to manage access just-in-time. See the Apono catalog for a complete list of supported integrations.
Just In Time (JIT)
Just In Time refers to that part of the Access Flow that makes a resource available to a user only when they need it and only as long as it is needed. It is JIT, but it also means that access isn't left and forgotten and left available past the time it is used.
You might also have heard the terms short-lived access, ephemeral access or temporary access.
Permission
The type of action users can perform on a resource. Actions are usually grouped into roles; for example an Admin role usually contains all the possible actions, like read, write, delete, etc.
Some permissions are more powerful than other. For example, a write permission (which allows you to edit a resource) is more powerful than a read permission (which only allows you to view it).
Permissions are at the heart of the Least Privilege principal; permissions (especially strong ones/those that apply to sensitive or critical resources) should be kept to a minimum and be granted only upon need (just-in-time).
RBAC
Role-based access control (RBAC) systems assign access and actions according to a person's role within the system. Everyone who holds that role has the same set of rights. Those who hold different roles have different rights. Read more here.
Resource
A resource is a cloud service or other instance that a user can gain access to. For example, repositories, servers, machines, buckets, databases, but also accounts, projects, folders, clusters, etc. Every cloud application artifact can be a resource, and if integrated with Apono - users can request and be granted access to it.
The permission determines which actions the user can perform on the resources.
Resource Type
The resource type is the family the resource belongs to. For example, every S3 bucket instance has a name and path, but all S3 Buckets belong to the S3 Bucket family.
To manage access to on-prem resources with Apono, install a connector as a Docker Container
If you want the flexibility of installing the Apono connector on any machine, a docker container is a great alternative.
A docker installed on any machine
An Apono token
Find Your Integration Token:
Select any integration in the Catalog.
Under the Connector section, select Add a New Connector from the drop-down list
Copy the token displayed toward the bottom of the section. This token is unique per account.
In the following command, replace the variables:
Replace APONO-TOKEN
with the token you copied in the Prerequisites
For CONNECTOR_ID
, insert any name of your choosing
Run the command in the terminal:
That's it!
If done correctly, you should see your docker Connector in the new integration dropdown list, or in the Connectors page
Find, rename, and delete an existing Apono connector
After creating a connector in your AWS, Azure, GCP, or Kubernetes environment, you can use the Apono UI to find, rename, and delete that connector.
You can search for a connector to view its related information.
Follow this step to locate a connector in the Apono UI:
On the Connectors page, in the search bar, enter the name of the connector. All matching connectors appear.
The Connectors tab displays context information related to each connector:
Name
Location
Version
Status
This information is intended to help you quickly identify specific connectors.
If you change the name of a connector in the Apono UI, you must also change the connector_id
param in the installed connector.
Failure to update the connector_id
will cause the integration to stop working.
Follow these steps to rename a connector:
On the Connectors page, in the search bar, enter the name of the connector. All matching connectors appear.
In the row of the connector, click ⠇**> Edit**. The Edit the Connector page for the connector appears.
Update the Connector Name.
Click Update Connector.
Follow these steps to delete a connector:
Delete the connector within your cloud environment.
On the Connectors page, in the search bar, enter the name of the connector. All matching connectors appear.
In the row of the connector, click ⠇**> Delete**. A confirmation popup window appears.
If the connector is associated with one or more integrations, a popup window will appear with a link to show the integrations:
Click Show Integrations to see the list of associated integrations.
For each integration, delete the integration.
Click Yes.
\
Find, edit, and delete and more for an integration
After creating an integration, you can use the Apono UI to find, edit, delete, and perform additional actions on that integration.
You can search for an integration to view its related information.
Follow these steps to locate an integration in the Apono UI:
On the Connected tab, in the search bar, enter the name of the integration. All matching integrations appear.
(Optional) Apply one or more filters.
After searching and applying filters, only integrations matching criteria appear on the Connected tab.
The Connected tab displays context information related to each integration:
Name
Connector
Resource Types
Sync Summary
Status
This information is intended to help you quickly identify specific integrations.
Follow these steps to apply filters:
Click the Filters dropdown menu. The filter options appear.
From the Where dropdown menu, select an option.
From the is dropdown menu, select a value.
(Optional) Click + Add new filter and repeat steps 2-3 to add more filters.
Click Apply.
Follow these steps to edit an integration:
In the row of the integration, click ⠇**> Edit**. The Edit Integration page for the integration appears.
Update the integration information.
Click Update.
The integration will re-sync. If the updates are valid, you will get a success message and see synced resources. Otherwise, error messages will be displayed.
Follow these steps to delete an integration:
In the row of the integration, click ⠇**> Delete**. A confirmation popup window appears.
Be mindful of the following:
If your integration is associated with one or more access flows, a popup window will appear listing the access flows. For each access flow, click the link and delete the access flow.
If your integration has active access requests, a popup window will appear listing the request IDs. For each request, click the link and revoke the access.
Click Yes.
In addition to finding, editing, or deleting integrations, you can perform other tasks to manage integrations from the Apono UI.
Follow these steps to view the associated integration resources:
In the row of the integration, click ⠇**> Resources**. A page of the integration's resources appears.
Follow these steps to refresh an integration:
In the row of the integration, click ⠇**> Refresh**. Apono syncs the integration.
\
Many integrations require granting Apono connector credentials to allow it to authenticate and connect. You can create secrets in different secrets managers (e.g. AWS, GCP, Azure) and specify them in the integration secret store. This allows the connector to safely and securely retrieve its credentials in order to connect to the desired integration resources.
Apono supports the following secret managers:
Use Apono to store your connector credentials for the desired integration resources.
Using the Apono secret store option is not recommended for production environments.
We suggest creating a secret in one of the supported cloud providers secret manager or in a Kubernetes secret. Storing secrets in a secret manager enables Apono to sync and provision cloud resources without the need to store credentials for a specific environment in Apono.
From your Integration configuration page expand Secret Store, click on the APONO tab and enter the required credentials information for the integration.
Use Kubernetes secret to store your connector credentials for the desired integration resources.
Apono connector installed in your Kubernetes cluster
Kubectl command-line interface
Run the following commands to create a secret from the Kubectl CLI.
Create the secret.
Label the secret with apono-connector-read:true
Give the Apono connector permissions to the secret:
Apono connector installed in your Kubernetes cluster
Terraform command-line interface
Use the following configuration to create a secret from the Terraform CLI.
From your Integration configuration page expand Secret Store, click on the Kubernetes tab and enter the required secret namespace and name.
Use AWS Secret Manager to store your connector credentials for the desired integration resources.
AWS role or user with SecretsManagerReadWrite
attached policy
AWS command-line interface
Run the following commands to create a secret from the AWS CLI.
AWS role or user with SecretsManagerReadWrite
attached policy.
Follow these steps to create a secret:
From the Secret Manager, click Store a new secret. The Choose secret type page appears.
Select Other type of secret.
Under Key/value pairs, enter your secret through one of the following approaches:
On the Key/value tab, enter your information in the two fields: key in the first field, value in the second field.
On the Plaintext tab, enter your secret in JSON key/value pairs.
Click Next. The Configure secret page appears.
Under Tags, click Add.
In the Key field, enter apono-connector-read.
In the Value field, enter true.
AWS role or user with SecretsManagerReadWrite
attached policy
Terraform command-line interface
Use the following configuration to create a secret from the Terraform CLI.
From your Integration configuration page expand Secret Store, click on the AWS tab and enter the required secret region and secret name.
Use Azure Key Vault to store your connector credentials for the desired integration resources.
Azure user with the following permission on the Key Vault:
For Azure Key Vault that configured with 'Azure role-based access control' permission model grant the user the Key Vault Secrets Officer
role.
For Azure Key Vault that configured with 'access policy' permission model create and grant the user an access policy with the following secret permissions (Secret Management Operations):
Get
Set
Azure command-line interface
Run the following commands to create a secret from the Azure CLI.
Azure user with the following permission on the Key Vault:
For Azure Key Vault that configured with 'Azure role-based access control' permission model grant the user the Key Vault Secrets Officer
role.
For Azure Key Vault that configured with 'access policy' permission model create and grant the user an access policy with the following secret permissions (Secret Management Operations):
Get
Set
Follow these steps to create a secret:
Navigate to your key vault in the Azure portal.
On the Key Vault left-hand sidebar, select Objects then select Secrets.
Select + Generate/Import.
On the Create a secret screen choose the following values:
Upload options: Manual.
Name: Type a name for the secret. The secret name must be unique within a Key Vault. The name must be a 1-127 character string, starting with a letter and containing only 0-9, a-z, A-Z, and -. For more information on naming, see Key Vault objects, identifiers, and versioning
Value: Type a value for the secret. Key Vault APIs accept and return secret values as strings.
Leave the other values to their defaults. Select Create.
Azure user with the following permission on the Key Vault:
For Azure Key Vault that configured with 'Azure role-based access control' permission model grant the user the Key Vault Secrets Officer
role.
For Azure Key Vault that configured with 'access policy' permission model create and grant the user an access policy with the following secret permissions (Secret Management Operations):
Get
Set
Terraform command-line interface
Use the following configuration to create a secret from the Terraform CLI.
From your Integration configuration page expand Secret Store, click on the Azure tab and enter the required secret key vault URL and secret nam
Use GCP Secret Manager to store your connector credentials for the desired integration resources.
GCP user with Secret Manager Admin
(roles/secretmanager.admin)
role.
Secret Manager API (enabled once per project)
gcloud command-line interface
Run the following commands to create a secret from the gcloud CLI.
GCP user with Secret Manager Admin
(roles/secretmanager.admin)
role.
Secret Manager API (enabled once per project)
Follow these steps to create a secret:
Go to the Secret Manager page in the Google Cloud console.
On the Secret Manager page, click Create Secret.
On the Create secret page, under Name, enter my-secret
.
In the Secret value field, enter my super secret data
.
Click the Create secret button.
GCP user with Secret Manager Admin
(roles/secretmanager.admin)
role.
Secret Manager API (enabled once per project)
Terraform command-line interface
Use the following configuration to create a secret from the Terraform CLI.
From your Integration configuration page expand Secret Store, click on the GCP tab and enter the required secret Project and secret ID.
Use HashiCorp Vault to store your connector credentials for the desired integration resources.
Required Apono connector version: 1.6.6
HashiCorp Vault token
Create token using:
You can use one of the following methods to create a secret in HashiCorp Vault to use in your integration.
Enable Secret Engine
If you did not set the VAULT_ADDR
, VAULT_NAMESPACE
, and VAULT_TOKEN
environment variables, refer to the steps in the Create a Vault Cluster on HCP tutorial.
Verify that the VAULT_NAMESPACE
environment variable is set to admin
.
If not, be sure to set it before you continue.
Enable key/value v2 secrets engine (kv-v2
) at secret/
.
Create New Secret
Store api-key
with value ABC0DEFG9876
at the path secret/test/webapp
.
Example output:
To verify, read back the secret at secret/test/webapp
.
Example output:
Enable Secret Engine
In the Vault UI, set the current namespace to admin/
.
Select Secrets engines.
Click Enable new engine.
Select KV from the list, and then click Next.
Enter secret
in the Path field.
Click Enable Engine to complete.
Now that you have a secret engine enabled, you will create a new secret.
Create New Secret
Click Create secret. Enter test/webapp
in the Path for this secret field.
Under the Secret data section, enter api-key
in the key field, and ABC0DEFG9876
in the value field. You can click on the sensitive information toggle to show or hide the entered secret values.
Update Apono Connector Configuration to Integrate with HashiCorp Vault
Define vault in your connector using:
environment variable: export HASHICORP_VAULT_CONFIG='[{"address":"http://HASHICORP_VAULT_URL","token":"HASHICORP_VAULT_TOKEN"}]'
Read from file (docker secrets/secret file mount into the container): export HASHICORP_VAULT_CONFIG_FILE_PATH="/path/to/vault/config.json"
To authenticate HashiCorp Vault with SSL/TLS client certificate you can use the following environment variable:
[{"address":"http://HASHICORP_VAULT_URL","token":"HASHICORP_VAULT_TOKEN", "ca_cert_base64": "BASE64_HASHICORP_VAULT"}]
To skip certificate verification use the following environment variable:
[{"address":"http://HASHICORP_VAULT_URL","token":"HASHICORP_VAULT_TOKEN", "skip_verify": "true"}]
Define HashiCorp Vault Fetch Secret Definition from Secret Manager
You can define HashiCorp vault to fetch secret definition from AWS, GCP, Azure or Kubernetes secret managers using the following environment variable:
From your Integration configuration page expand Secret Store, click on the HashiCorp tab and enter the required secret Secret engine and Secret path.
Cloud computing has become an essential tool for businesses of all sizes. As a provider of many services and tools, Amazon Web Services (AWS) is a cloud environment supported by Apono.
The articles in this section will help you connect Apono with your AWS-based resources so that you can effectively manage permissions to these resources.
Deploy active-active HA instances of the same connector
Active-active availability refers to a high availability (HA) architecture, where two or more systems are actively handling requests simultaneously.
HA can provide the following benefits:
Provide redundancy by maintaining operations during downtime
Distribute requests across multiple active systems to improve load balancing
Maximize resource use by employing standby systems
Reroute traffic through automatic failover to the remaining active system
Apono leverages HA to guarantee uptime to customers. Our on-premise connector can be deployed with several instances. If one instance is down, HA ensures that others are available to continue provisioning.
Item | Description |
---|---|
For HA, you can add instances to an existing connector using the same connector ID.
All connector instances must be the same version. Update any older versions to maintain functionality (AWS | Azure | GCP | Kubernetes).
Follow these steps to add a connector instance for high availability:
From the Connectors page, click Install Connector. The Install Connector page appears.
Select Cloud Installation.
Select a platform for the connector. The permission options appear.
Select a permissions option.
Select an installation method.
The Apono UI auto-populates the token for the new connector instance.
In the connector installation module, configure the connector ID parameter to share the same value as an existing connector ID in the environment. You can find the connector ID of an existing instance on the Connectors page.
Depending on the environment, the connector ID parameter may appear as any of the following properties:
APONO_CONNECTOR_ID
apono.connectorId
connectorId
Complete the installation of the connector in your environment (AWS | Azure | GCP | Kubernetes).
Upon completion, you can integrate your HA connectors with your environment.
Learn how to update a connector through the AWS CLI
Periodically, you may need to update your AWS connector to help maintain functionality, performance, and security.
This article explains how to update a connector through the AWS CLI and redeploy the CloudFormation stack with the latest connector template.
Item | Description |
---|
Follow these steps to update a connector:
Copy the following Account level or Organization level AWS update script. Be sure to replace AWS_STACK_NAME
with your AWS stack name.
Be sure to replace AWS_PROFILE
and AWS_SERVER_REGION
with your profile and region values.
At your AWS CLI prompt, enter the updated script from the previous step to initiate the update. The AWS CLI will return an object containing the StackId
.
In CloudFormation, on the Stack Info tab, confirm that the update has completed:
Under the Stack name column, click the stack name.
On the Stack info tab, check the Status.
This section details common errors that can occur during the updating process. If an error occurs that is not listed below, please contact your Apono representative.
How to install a Connector on an AWS account to integrate an AWS Account or Organization with Apono
To integrate with AWS and start managing JIT access to AWS cloud resources, you must first install a connector in your AWS environment.
The connector should match the level of access management you want to achieve with Apono: on a single account or on the entire organization.
To manage access to a single AWS account, install a connector on that account. Follow .
To manage access to all the accounts in the AWS organization:
Install a connector on the management account. Follow . OR
Install a connector in any account with ECS or EKS and give it delegated permissions to the management account. Follow .
What's a connector? What makes it so secure?
The Apono Connector is an on-prem connection that can be used to connect resources to Apono and separate the Apono web app from the environment for maximal .
Read more about the recommended .
First, decide if you want to integrate Apono with a specific AWS Account or with the entire Organization (containing multiple Accounts).
Now, follow one of the guides below depending on your selection:
Administrator permissions to the AWS account you want to connect.
VPC with outbound connectivity
Login to the Apono platform
Go to the Apono Integrations page
From the Catalog, pick AWS
Choose Cloudformation
Click "Open Cloud Formation"
Sign in to your AWS user and click Next
Within the AWS create stack page, scroll down
Make sure you pick at least one Subnet and one VPC from the dropdown lists
Tick the acknowledge box and then select Create Stack
Apono integrates with AWS natively, using AWS CloudFormation as a standard mechanism to deploy all required configurations including a Cross Account Role with Read permission, a SNS notification message, and the Apono Connector that runs using an AWS ECS on Fargate.
Administrator permissions to the AWS management account in the Organization.
VPC with outbound connectivity.
Login to the Apono platform
Go to the Apono Integrations page
From the Catalog, pick AWS
Click "Open Cloud Formation"
Sign in to your AWS user and click Next
The new stack should be installed in the management account (which manages the organization's Identity Center)
Within the AWS create stack page, scroll down
Make sure you pick at least one Subnet and one VPC from the dropdown lists
Tick the acknowledge box and then select Create Stack
Apono integrates with AWS natively, using AWS CloudFormation as a standard mechanism to deploy all required configurations including a Cross Account Role with Read permission, a SNS notification message, and the Apono Connector that runs using an AWS ECS on Fargate.
Administrator permissions to the AWS management account in the Organization
For EKS: admin permissions on the cluster
Using CloudFormation (ECS)
Open the CloudFormation in the member account you want to deploy at.
Fill the SubnetIDs, VpcId parameters
Create stack, and wait to finish
Copy the connector role from the "Outputs" tab
Using Helm (EKS)
Set the following environment variables, to set the AWS Role for the connector deployed in EKS.
Where:
AWS_ACCOUNT_ID
is the account where the EKS deployment is hosted
AWS_ROLE_NAME
is the role defined for the connector in step 1
CONNECTOR_TOKEN
is the token generated in the Apono UI when creating a new connector
[block:image] { "images": [ { "image": [ "https://files.readme.io/78e94c2-image.png", null, "" ], "align": "center", "sizing": "300px" } ] } [/block]
CONNECTOR_ID
is the connector name. Set any name of your choosing.
Run the following helm command to deploy the connector
Copy the role given to the connector (arn:aws:iam::$AWS_ACCOUNT_ID:role/$AWS_ROLE_NAME
)
Interested in HA for the connector?
Add this variable to the Helm chart to create one or more replicas of the Apono connector instance:
--set-string replicaCount=<number_of_replicas>
In "ConnectorRoleArn" parameter, paste the connector role from the previous step.
Fill the "OrganizationalUnitId" parameter.
Create stack, and wait to finish.
Copy the Management Account Role ARN from the "Outputs" tab.
Verify that the Stackset was created successfully and that Cloudformation finished.
Then, In the Apono app, you will see the connector was found and a green checkmark indication.
Hurray!
If your organization uses Amazon Web Services (AWS) as a cloud platform, Apono's AWS integrations can help you securely manage access to your AWS cloud-based services and databases.
By identifying and transforming existing privileges, Apono can shift your cloud management from broad permissions to on-demand access flows.
Through our AWS integrations, Apono enables you to perform the following access tasks:
Limit Access: Discover existing cloud privileges and convert them to just-in-time access flows.
Enable Self-Service Access: Allow developers to request access to AWS services, buckets, and instances via Slack.
Automate Approval Workflows: Create automatic approval processes for sensitive AWS resources.
Restrict Third-Party Access: Grant third-parties (customers or vendors) time-based access to specific S3 buckets, RDS, or EC2 instances with MFA verification.
Review Access: Audit user cloud access, permissions granted, and reasons for access across AWS.
Create a connector on Amazon Elastic Container Service
Connectors are secure on-prem components that link Apono and your resources:
No secrets are read, cached, or stored.
No account admin privileges need to be granted to Apono.
The connector contacts your secret store or key vault to sync data or provision access.
Once set up, this connector will enable you to sync data from cloud applications and grant and revoke access permissions through Amazon Elastic Container Service (ECS).
Item | Description |
---|
Use the following steps to install an Apono connector for AWS on ECS:
At the shell prompt, define an environment variable named TF_VAR_APONO_TOKEN
with your Apono token value.
When using the following snippets, be sure to use the correct value for assignPublicIp
:
true
: Set when a subnet has an Internet Gateway
false
: Set shen a subnet has a NAT Gateway
Enables installing the connector in the cloud environment and managing access to resources, such as Amazon RDS, S3 buckets, EC2 machines, and self-hosted databases
Enables installing the connector in the cloud environment but managing access to non-AWS resources, such as self-hosted databases
At the Terraform CLI, download and install the provider plugin and module.
Apply the Terraform changes. The proposed changes and a confirmation prompt will be listed.
Enter yes to confirm deploying the changes to your AWS account.
Learn how to complete an AWS integration in the Apono UI
Apono offers AWS users a simple way to centralize cloud management through our platform. Through a single integration, you can manage multiple AWS services across various accounts and organizations.
installed in your AWS account
To sync and manage access to EC2 servers, make sure you add the AmazonSSMManagedInstanceCore
policy to the connector's IAM role
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to integrate Apono with your AWS account:
Under Discovery, click Amazon Account.
Click one or more resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage Access Flows to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
After connecting your AWS account to Apono, you will be redirected to the Connected tab to view your integrations. The new AWS integration will initialize once it completes its first data fetch. Upon completion, the integration will be marked Active.
To sync and manage access to EC2 servers, make sure you add the AmazonSSMManagedInstanceCore
policy to the connector's IAM role
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to integrate Apono with your AWS organization:
Under Discovery, click Amazon Organization.
Click one or more resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage access flows to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
After connecting your AWS account to Apono, you will be redirected to the Connected tab to view your integrations. The new AWS integration will initialize once it completes its first data fetch. Upon completion, the integration will be marked Active.
This guide is intended for admins managing a Connector in the environment
📘 You have chosen the advanced installation method
You can also easily connect AWS in Apono following this UI guide
Required CLI: terraform
Login to Apono and create connector in the
Important: before you start, copy the connector Terraform params and export them in the terminal.
** if you already use your own providers, you can skip this step
Run terraform init
to validate it works
It's required that your EKS cluster OIDC provider will be added to your IAM. This step is required only once, and you may have already done it.
The Connector is deployed using helm and requires an IAM Role to be able to access tagged ASM secrets in the future.
If you have not defined a default region and , you must specify the region and profile in the script:
Go to the page. A list of the stacks in the account are displayed.
Locate and copy the stack name under the Stack name column of the page.
Repeat the .
Pick Account
Install a new connector in AWS. Read more .
Choose the desired deployment method
Pick Organization
Choose Cloudformation
Verify that "trusted access" is activated for your organization. Read more .
Create an AWS role for the connector. Follow step 3 in .
Read more .
Open CloudFormation in the AWS Management account using .
You can now !
In a new or existing Terraform (.tf) file, add the following provider and module information to create a connector or .
On the page, verify that the connector has been deployed.
On the tab, click AWS. The Connect Integrations Group page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an .
Setting | Description |
---|
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to AWS IAM resources, such as AWS Roles.
installed in your AWS management account OR a
On the tab, click AWS. The Connect Integrations Group page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an .
Setting | Description |
---|
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to AWS IAM resources, such as AWS Roles.
Please refer to our if you encounter errors while integrating.
You can validate the Connector is installed in the .
Installed connector
Active Apono connector
The connector can be installed in any of the following environments:
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Region | Region in which the organization runs |
AWS Profile Name | (Optional) Name of the AWS profile By default, Apono sets this value to apono. |
Enable Audit | (Optional) Feature that allows Apono to ingest and aggregate session audit logs |
Apono AWS EC2 Integration utilizes SSM (System Manager) Agent to for JIT access management for AWS VMs
Have you connected an AWS account?
Make sure you integrated your AWS account to Apono. Follow this AWS Integration step-by-step guide.
This integration provides the ability to grant users permissions to connect to the EC2 with a secure connection - SSM.
An integration between Apono and the AWS Organization or Account where the EC2 is.
EC2 machine with SSM agent installed. Installed by default in most EC2s docs.aws.amazon.com/systems-manager/latest/userguide/ssm-agent
End users will need to install the session manager plugin for AWS CLI on the local user's computer. docs.aws.amazon.com/systems-manager/latest/userguide/session-manager-working-with-install-plugin
Follow the steps below to create an EC2 instance role with the AmazonSSMManagedInstanceCore
managed policy. Read more here.
In the AWS IAM, Click Create new IAM Role
Click Create Role
Choose the AWS Service option
From the dropdown list, choose EC2
Choose EC2 Role for AWS System Manager. Click Next.
Verify that the AmazonSSMManagerInstanceCore
policy is added. Click Next
Fill the Role name box (for example, ec2-ssm)
Click Create role
Go back to the Modify IAM Role page
From the dropdown list, choose the new IAM role we created (ec2-ssm)
Click Update IAM role
Pleas note: it takes about 30 minutes for the AWS sync to finish.
In the Apono UI, edit an existing AWS Org or AWS Account integration or create a new one.
Add the EC2 Connect resource type.
Complete the integration and click Integrate.
Apono should now discover EC2 machines! You can now create access flows to EC2 instances.
AWS Stack Name | In AWS CloudFormation, name of a collection of AWS resources managed as a single unit Use the following steps to retrieve the stack name:
|
AWS Command Line Interface (AWS CLI) |
AWS Permissions |
AdminstratorAccess Role |
Apono Token | Account-specific Apono authentication value Use the following steps to obtain your token:
|
Virtual Private Cloud (VPC) ID |
Subnet IDs |
Terraform CLI |
Credential Rotation | (Optional) Number of days after which the database credentials must be rotated |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Region | Region in which the organization runs |
AWS SSO Region | Region for which your single sign-on is configured |
SSO Portal |
Management Account Role ARN |
Exclude Organization Unit IDs | ID of organizational units to exclude Example: ou-aaa1-1111,ou-bbb2-2222 |
Enable Audit | (Optional) Feature that allows Apono to ingest and aggregate session audit logs |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Amazon RDS for MySQL is an open-source relational database management service in the cloud. Through AWS RDS MySQL integration, you will be able to integrate with AWS RDS MySQL:
Database
Table
Role
If you already have AWS Apono connector:
Make sure the connector's minimum version is 1.5.3.
If you still don't have AWS Apono connector:
Create user and grant permissions:
You can use only one authentication option on the RDS instance at a time.
(MySQL 8.0+) Grant the service account the authority to manage other roles. This enables Apono to create, alter, and drop roles. However, this role does not inherently grant specific database access permissions.
In the Apono admin console, go to the Integrations page and click the Add Integration button in the top-left side, or press on the Catalog blade.
In the Catalog page search for and select AWS RDS MySQL.
In Discovery step, select one or multiple AWS RDS MySQL resource types for Apono to discover.
In Apono connector step, select the connector with the required permissions to be used with your AWS RDS MySQL.
In Integration config step, provide the following information about your AWS RDS MySQL:
In Secret Store step, provide the connector credentials using one of the following secret store options:
When using IAM authentication, **a secret does not need to be created**. The service account and its permissions are managed through IAM roles and policies. The service account is used to authenticate the MySQL instance instead of a secret.
For the AWS RDS MySQL integration, use the following secret format:
username:<The database username>
password:<The user password>
\
(Optional) In Get more with Apono step, you can set up the following:
Integrate with Apono to view existing permissions and create Access Flows to Amazon Redshift clusters
Amazon Redshift is a fast, scalable, and secure fully managed data warehouse service in the cloud, serving as a primary data store for vast datasets and analytic workloads. Amazon Web Services (AWS) enables businesses to analyze their data using standard SQL and existing business intelligence tools, promoting insightful decision-making and integration with various AWS services.
Through this integration, Apono helps you securely manage access to your Amazon Redshift instance.
Item | Description |
---|---|
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Amazon Redshift. The Connect Integration page appears.
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an Apono connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Amazon Redshift instance.
Refer to Troubleshooting Errors for information about errors that may occur.
Learn how to integrate an AWS Lambda Custom Integration with Apono
AWS Lambda enables you to build and connect cloud services and internal web apps by writing single-purpose functions that are attached to events emitted from your cloud infrastructure and services.
Its serverless architecture frees you to write, test, and deploy functions quickly without having to manage infrastructure setup.
With this integration, you can connect your internal applications to AWS Lambda functions and manage access to those applications with Apono.
Before starting this integration, create the items listed in the following table.
Item | Description |
---|---|
You can also use the steps below to integrate with Apono using Terraform.
In step 8, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click AWS Lambda Custom Integration. The Connect Integration page appears.
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an AWS connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your AWS Lambda function.
Integrate with AWS-managed PostgreSQL for JIT access management for RDS
PostgreSQL databases are open-source relational database management systems emphasizing extensibility and SQL compliance. AWS enables developers to create cloud-hosted PostgreSQL databases.
Through this integration, Apono helps you securely manage access to your AWS RDS for PostgreSQL instances.
Item | Description |
---|---|
You must create a user in your AWS RDS PostgreSQL instance for the Apono connector and grant that user permissions to your databases.
Follow these steps to create a user and grant it database permissions:
Create a new user with either Built-in authentication or IAM authentication.
You can use only one authentication option on the RDS instance at a time.
Built-in authentication identifies a user through a username and password.
Be sure to select a strong password for the user.
After enabling IAM on your RDS instance, create an AWSAuthenticationPlugin
user for the Apono connector. AWSAuthenticationPlugin
is an AWS-provided plugin that works seamlessly with IAM to authenticate your users.
To create the user, run the following commands from your Postgre client.
From your preferred client tool, grant rds_superuser
access to the user.
(IAM authentication only) Create and attach the following IAM policy to your identity center permissions set or role.
(Built-in authentication only) Create an AWS secret with the credentials from step 1.
When using IAM authentication, a secret does not need to be created.
The service account and its permissions are managed through IAM roles and policies. The service account is used to authenticate the PostgreSQL instance instead of a secret.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click AWS RDS PostgreSQL. The Connect Integration page appears.
Under Discovery, click one or more resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage Access Flows to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an AWS connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
A secret is not needed for IAM authentication.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your RDS for PostgreSQL database.
Create an integration to manage access to a Kubernetes cluster on AWS
With Elastic Kubernetes Service (EKS) on AWS, EKS simplifies the management complexities of Kubernetes.
Through this integration, Apono helps you securely manage access to your AWS Elastic Kubernetes cluster.
Authentication can be completed with an Identity and Access Management IAM user or an IAM role. To grant a user access to an EKS cluster, the IAM user or IAM role must be mapped with a specific user identifier, such as an email address.Apono supports this mapping with an IAM role through AWS SSO or SAML federation from any identity provider (IdP).
Follow these steps to create a new policy:
Under Access management on the Identity and Access Management (IAM) page in AWS, click Policies > Create policy. The Specify permission page appears.
Click JSON.
Replace the default policy with the following policy. Be sure to replace the placeholder.
Click Next. The Review and create page appears.
Enter a Policy name. This name is used to identify this policy.
Click Create policy.
Follow these steps to create the IAM role:
Under Access management on the Identity and Access Management (IAM) page in AWS, click Roles > Create role. The Select trusted entity page appears.
Under Trusted entity type, select Custom trust policy.
Under Custom trust policy, replace the default policy with one of the following trust policies. Be sure to replace the placeholders.
Click Next. The Add permissions page appears.
Under Permissions policies, select the newly created policy.
Click Next. The Name, review, and create page appears.
For the Role name, enter apono-k8s-access.
For the Description, enter required for k8s access managed by Apono.
Click Create role.
If an Overly permission trust policy popup window appears, click Continue.
Now that the IAM role has been created, you must authenticate the EKS cluster with the ConfigMap or EKS API.
Read Apply the aws-auth ConfigMap
to your cluster to learn more about editing the aws-auth ConfigMap
.
Follow these steps to authenticate the cluster:
Log into the EKS cluster with a user account that has the cluster admin permission.
Edit the aws-auth ConfigMap
to include the following mapRoles
entry. Be sure to replace the placeholder.
Follow these steps to authenticate the cluster:
Change the authentication mode to EKS API.
For the IAM principal, enter arn:aws:iam::<AWS_ACCOUNT_ID>:role/apono-k8s-access.
For the Username use apono:{{SessionName}}
.
Choose Cluster as the access scope.
Now, you can integrate with EKS.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Elastic Kubernetes Service (EKS). The Connect Integration page appears.
Under Discovery, click one or more resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage access flows to these resources.
Click Next. The Apono connector section appears.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an Apono Connector for Kubernetes on an EKS cluster.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
When the Apono connector is installed on the EKS cluster, you do not need to enter values for the other optional fields.
Click Next. The Secret Store section expands.
When the Apono connector is installed on the EKS cluster, you do not need to provide a secret.
(Optional) Associate the secret or credentials.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Elastic Kubernetes Service cluster.
After a user gains access to an EKS resource, the user must authenticate with the cluster. The user must assume the apono-k8s-access
role.
The following table shows two approaches to assume this role.
Learn how to deploy a connector in an Azure environment
Azure Container Instances (ACI) is a managed, serverless compute platform for running containerized applications. This guide explains how to install and configure an Apono connector on ACI in your Azure environment using Azure CLI.
Item | Description |
---|
You can install a connector for an Azure Management Group or Subscription.
Follow these steps to install a new connector:
At the shell prompt, set the environment variables.
Log in to your Azure account.
Set the REGION
environment variable.
Run the following command to deploy the connector on your ACI.
Add the User Access Administrator role to the connector in the management group scope.
For Azure AD, add the Director Readers role to the connector. For Azure AD Groups, add the Groups Administrator and Privileged Role Administrator roles.
On the page, verify that the connector has been updated.
You can now integrate with an .
Follow these steps to install a new connector:
Export the following environment variables.
Log in to your Azure account.
Set the REGION
environment variable.
Run the following command to deploy the connector on your ACI.
Add the User Access Administrator role to the connector in the subscription scope.
For Azure AD, add the Director Readers role to the connector. For Azure AD Groups, add the Groups Administrator and Privileged Role Administrator roles.
Create an integration to manage access to Azure-managed MySQL databases
MySQL is a reliable and secure open-source relational database system. It serves as the main data store for various applications, websites, and products. This includes mission-critical applications and dynamic websites.
Microsoft enables developers to create cloud-hosted MySQL databases.
Through this integration, Apono helps you securely manage access to your Azure MySQL databases.
Before starting this integration, create the items listed in the following table.
Item | Description |
---|
You must create a user in your MySQL instance for the Apono connector and grant that user permissions to your databases.
Use the following steps to create a user and grant it permissions:
In your preferred client tool, create a new user. Be sure to set a strong password for the user.
Expose databases to the user. This allows Apono to view database names without accessing the contents of each database.
Grant the user database permissions. The following commands grant Apono the following permissions:
Creating users
Updating user information and privileges
Monitoring and troubleshooting processes running on the database\
Grant the user only one of the following sets of permissions. The chosen set defines the highest level of permissions to provision with Apono. Expand each of the following options to reveal the SQL commands:
(MySQL 8.0+) Grant the service account the authority to manage other roles. This enables Apono to create, alter, and drop roles. However, this role does not inherently grant specific database access permissions.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click one or more resource types and cloud services to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage Access Flows to these resources.
Click Next. The Apono connector section appears.
From the dropdown menu, select a connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Custom Access Details section expands.
Define the Get more with Apono settings.
Click Confirm.
Learn how to update a connector through the Azure CLI
Periodically, you may need to update your Azure connector to help maintain functionality, performance, and security.
This article explains how to update and redeploy a connector through the Azure CLI.
Item | Description |
---|
To update an Apono connector for Azure, follow these steps in the shell environment with Azure CLI installed:
Set the APONO_CONNECTOR_ID
environment variable to your chosen connector ID.
Set the APONO_TOKEN
environment variable to your account token.
Set the SUBSCRIPTION_ID
environment variable to the Azure subscription ID.
Set the RESOURCE_GROUP_NAME
environment variable to the Azure resource group name.
Set the REGION
environment variable.
Run the following command to deploy an updated version of the connector on the Azure Container Instance service.
7. On the [**Connectors**](https://app.apono.io/connectors) page, verify that the connector has been updated.
If your organization uses Azure as a cloud platform, Apono can help you securely manage access to your Azure cloud-based services, subscriptions, and resource groups.
By identifying and transforming existing privileges, Apono can shift your cloud management from broad permissions to on-demand . Through our integrations, Apono enables you to perform the following access tasks:
Limit Access: Discover existing privileges in Azure and convert them to just-in-time Access Flows.
Enable Self-Service Access: Allow developers to request access to Azure services, buckets, and instances via Slack.
Automate Approval Workflows: Create automatic approval processes for sensitive Azure resources.
Restrict Third-Party Access: Grant third-parties (customers or vendors) time-based access to specific services with MFA verification.
Review Access: Audit user cloud access, permissions granted, and reasons for access across Azure.
How to install a Connector on your Azure environment to integrate with Azure management group or subscription
If your organization uses Azure as it's cloud provider, you can take advantage of Apono , allowing you to create just-in-time access management based on Access Flows and user requests to your Azure resources.
The integration between Azure and Apono requires an Azure Apono connector installed in your Azure environment.
The remainder of this guide focuses on installing and configuring the Azure Apono connector on ACI in your Azure environment.
Azure user with the following permissions on your Azure management group/subscription:
Role | Permissions |
---|
Command-line.
The Apono Azure Management Groups integration allows you to auto-discover all resources under your Tenant by installing the connector on one of the Azure Subscriptions under the Tenant Root Management Group.
Go to Integrations, under Environment from the left navigator.
Under Integrations, click the Catalog tab and select under Cloud provider category.
Under Apono connector, choose + Add new connector.
Choose installation method and copy the Apono token.
Learn how to deploy a connector in an Azure environment
Azure Container Instances (ACI) is a managed, serverless compute platform for running containerized applications. This guide explains how to install and configure an Apono connector on ACI in your Azure environment using Terraform.
Item | Description |
---|
Follow these steps to set up a new connector:
At the shell prompt, set the Apono environment variables to your account token.
In a new or existing Terraform (.tf) file, add the following provider and module information to create a connector or :
Enables installing the connector in the cloud environment and managing access to resources
Enables installing the connector in the cloud environment but managing access to non-Azure resources, such as self-hosted databases
At the Terraform CLI, download and install the provider plugin and module.
Apply the Terraform changes. The proposed changes and a confirmation prompt will be listed.
Enter yes to confirm deploying the changes to your Azure account.
Learn how to deploy a connector in an Azure environment
Azure Container Instances (ACI) is a managed, serverless compute platform for running containerized applications. This guide explains how to install and configure an Apono connector on ACI in your Azure environment using PowerShell.
Item | Description |
---|
You can install a connector for an Azure Management Group or Subscription.
Follow these steps to install a new connector:
At the shell prompt, set the environment variables.
Log in to your Azure account.
Set the REGION
environment variable.
Run the following command to deploy the connector on your ACI.
Add the User Access Administrator role to the connector in the management group scope.
For Azure AD, add the Director Readers role to the connector. For Azure AD Groups, add the Groups Administrator and Privileged Role Administrator roles.
Follow these steps to install a new connector:
Export the following environment variables.
Log in to your Azure account.
Set the REGION
environment variable.
Run the following command to deploy the connector on your ACI.
Add the User Access Administrator role to the connector in the subscription scope.
For Azure AD, add the Director Readers role to the connector. For Azure AD Groups, add the Groups Administrator and Privileged Role Administrator roles.
Go to the page.
enabling interaction with AWS services using your command-line shell
enabling the ability to update the stack via AWS CLI
that provides full access to AWS services and resources
On the page, click Install Connector. The Install Connector page appears.
dedicated to an AWS account
within a VPC
for provisioning and managing infrastructure
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
This is required for Apono to generate a sign-in link for end users to use their granted access.
(step 5) of the role to assume in the management account
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
Variable | Value | Required |
---|---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Permission | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Placeholder | Description |
---|---|
Placeholder | Description |
---|---|
Placeholder | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Approach | Details |
---|---|
Placeholder | Description |
---|---|
On the page, verify that the connector has been updated.
You can now create integrate with an .
Using the credentials from step 1, for the database instance and associate it to the Azure connector.
You can now .
On the tab, click Azure MySQL. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an and with the connector.
Setting | Description |
---|
.
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Azure MySQL database instance.
In integration page under Discovery, choose between Azure Management Group and Azure Subscription, then select the resource types you want to integrate with.
On the page, verify that the connector has been deployed.
You can now integrate with an .
On the page, verify that the connector has been updated.
You can now integrate with an .
On the page, verify that the connector has been updated.
You can now create integrate with an .
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Hostname
Hostname of the Amazon Redshift instance to connect
Port
Port value for the instance By default, Apono sets this value to 5439.
Database Name
Name of the database
Credential Rotation
(Optional) Number of days after which the database credentials must be rotated
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Custom Parameters
Key-value pairs to send to the lambda function For example, you can provide a lambda function with a redirect URL that is used for internal provisioning access and passed as part of the action requests.
Region
Region of the AWS Lambda instance
Function Name
Named of the AWS Lambda function
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Apono Connector
On-prem connection with network access to your AWS RDS for PostgreSQL instances Minimum Required Version: 1.5.3 Use the following steps to update an existing connector.
NOTE: When installing the Apono connector with CloudFormation, the AWS RDS database policy is automatically created.
If you do not use CloudFormation, you must create the following policy and assign it to the Apono connector role.
PostgreSQL Info
Information for the database instance to be integrated:
Instance ID
Database Name
AWS Tag
(Optional) Metadata label assigned to AWS resources Adding an AWS tag, enables Apono to discover and add resources on your behalf. When adding an AWS tag, use the following information:
Tag key: apono-secret
Value: (AWS Secret)
ALTER USER apono_connector WITH CREATEROLE;
Allows Apono connector to create, alter, and drop user roles
GRANT rds_superuser TO apono_connector;
Assigns the RDS superuser role to the Apono connector, providing comprehensive permissions for database management
Credential Rotation
(Optional) Number of days after which the database credentials must be rotated
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
<AWS_ACCOUNT_ID>
AWS account ID where the EKS is hosted
<AWS_ACCOUNT_ID>
AWS account ID where the EKS is hosted
<SAML_PROVIDER>
Identity provider name
<AWS_ACCOUNT_ID>
AWS account ID where the EKS is hosted
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Server URL
(Optional) URL of the Kubernetes API server used to interact with the Kubernetes cluster
Certification Authority
(Optional) Certificate that ensures that the Kubernetes API server is trusted and authentic Leave this field empty if you want to connect the cluster where the connector is deployed.
EKS Cluster Name
Unique name of the cluster to integrate
AWS Role Name
(Optional) Role defined for the connector
Region
(Optional) Location where the AWS Elastic Kubernetes cluster is deployed
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
AWS CLI
In the AWS CLI, run the aws sts assume-role
command. Be sure to replace the placeholders.
Config File
Edit ~/.aws/config to contain the following profile. Be sure to replace the placeholders.
<AWS_ACCOUNT_ID>
AWS account ID where the EKS is hosted
<EMAIL>
User email listed in the IdP
Integration Name
The integration name.
Yes
Auth Type
The authentication method for connecting to an AWS RDS instance, with options for password (username and password) or iam (IAM-based authentication).
Yes
Region
AWS region where the RDS instance is located.
Yes
Instance ID
The unique identifier of the AWS RDS instance.
Yes
Credentials rotation period (in days)
i.e.: 90
No
User cleanup after access is revoked (in days)
i.e.: 90
No
Custom Access Details
Customize the access details message that will be displayed to end users when they access this integration.
Integration Owner
Apono can use the integration owner for access requests approval if no owner is found. Enter one or more users, groups, shifts or attributes. This field is mandatory when using Resource Owners and serves as a fallback approver if no resource owner is found.
Resource Owner
Apono will sync each resource's owner from the source integration. Use this for Resource Owner access requests approval. Enter the tag key that contains owners info, and map it to an attribute in Apono.
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Hostname | Hostname of the MySQL instance to connect |
Port | Port value for the database By default, Apono sets this value to 3306. |
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Auth Type
Authorization type for the MySQL service account user
Option
Description
IAM Auth
IAM authentication
User / Password
Built-in authentication
Region
Location where the PostgreSQL database is deployed
Instance ID
ID of the PostgreSQL instance
Database Name
Name of the PostgreSQL database
SSL Mode
(Optional) Mode of Secure Sockets Layer (SSL) encryption used to secure the connection with the SQL database server
Option
Description
require
An SSL-encrypted connection must be used.
allow
An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used.
disable
An unencrypted connection is used.
prefer
An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used.
verify-ca
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
verify-full
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names.
Enable Audit
(Optional) Feature that allows Apono to ingest and aggregate session audit logs
Apono Token | Account-specific Apono authentication value Use the following steps to obtain your token:
|
Azure Cloud Command Line Interface (AZ CLI) |
Azure Cloud Information | Information for your Azure Cloud instance: |
Owner Role (Azure RBAC) |
|
Global Administrator |
|
Apono Connector |
MySQL Info | Information for the database instance to be integrated:
|
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Token | Account-specific Apono authentication value Use the following steps to obtain your token:
|
Azure Command Line Interface (Azure CLI) |
Resource Group Name |
Subscription ID |
User Access Administrator Role |
User Administrator Role |
|
Apono Token | Account-specific Apono authentication value Use the following steps to obtain your token:
|
Terraform Command Line Interface (Terraform CLI) |
Azure Cloud Information | Information for your Azure Cloud instance: |
Owner Role (Azure RBAC) |
|
Global Administrator |
|
Apono Token | Account-specific Apono authentication value Use the following steps to obtain your token:
|
PowerShell |
Azure Cloud Information | Information for your Azure Cloud instance: |
Owner Role (Azure RBAC) |
|
Global Administrator |
|
How to install a Connector on a GCP Project to integrate a GCP Organization or Project with Apono with Helm
To integrate with GCP and start managing JIT access to GCP cloud resources, you must first install a connector in your GCP environment.
The GCP connector must be installed on a GKE cluster. You can do this with CLI or with GCP Deployment Manager in the GCP Portal. The Apono connector will require permissions to the organization or to a specific project, depending on the level of access management you want to achieve with Apono.
To manage access to a single GCP Project, install a connector in a GKE cluster on that project and give the connector the appropriate role to the project. Follow this guide.
To manage access to a GCP Organization, install a connector in a GKE cluster on any project and give the connector the appropriate role to the organization. Follow this guide.
What's a connector? What makes it so secure?
The Apono Connector is an on-prem connection that can be used to connect resources to Apono and separate the Apono web app from the environment for maximal security.
Read more about the recommended GCP Installation Architecture.
Prerequisites
A GKE cluster on any GCP Project of your choosing
Kubernetes command-line tool (kubectl)
The Apono GCP token generated in the Apono UI:
Step-by-step guide
Prepare parameters for Apono installation
Fill and set the values for the following variables:
Set the connector service account variable:
Make sure Cloud Resource Manager API is enabled
Create IAM Service Account and grant it the roles: Browser, Security Admin and Tag Viewer for the entire organization.
Verifying default GKE cluster for installation
Open the Kubernetes command-line tool
Run kubectl config get-contexts
to see the GKE clusters list
Set the desired cluster to be the default - kubectl config use-context
#the name of the cluster
Run kubectl get-contexts
- verify the "*" indicates the correct cluster.
Bind the IAM Service Account to the K8S Service Account
Install Helm Chart
The helm chart installs the following:
Kubernetes Deployment containing the Apono-Connector image container
Kubernetes Service Account annotated with GCP IAM Service Account
Kubernetes Secret containing Docker Registry credentials
Interested in HA for the connector?
Add this variable to the Helm chart to create one or more replicas of the Apono connector instance:
--set-string replicaCount=<number_of_replicas>
Read more here.
Prerequisites
A GKE cluster on the GCP Project you'd like to integrate with Apono
Kubernetes command-line tool (kubectl)
The Apono GCP token generated in the Apono UI:
Step-by-step guide
Prepare parameters for Apono installation
Fill and set the values for the following variables:
Set the following variable:
Enable Cloud Resource Manager API
Create IAM Service Account and grant it with the roles: Browser, Security Admin and Tag Viewer for the project.
Verifying default GKE cluster for installation
Open the Kubernetes command-line tool
Run kubectl config get-contexts
to see the GKE clusters list
Set the desired cluster to be the default - kubectl config use-context
#the name of the cluster
Run kubectl get-contexts
- verify the "*" indicates the correct cluster.
Bind the IAM Service Account to the K8S Service Account
Install Helm Chart
The helm chart installs the following:
Kubernetes Deployment containing the Apono-Connector image container
Kubernetes Service Account annotated with GCP IAM Service Account
Kubernetes Secret containing Docker Registry credentials
Interested in HA for the connector?
Add this variable to the Helm chart to create one or more replicas of the Apono connector instance:
--set-string replicaCount=<number_of_replicas>
Read more here.
You can validate the Connector is installed in the Connector status page.
Then, In the Apono app, you will see the connector was found and a green checkmark indication.
Hurray!
You now have a GCP connector installed in your GCP environment with permissions to the Project.
You can now integrate Apono with a GCP Project or GCP Organization.
Apono Connector
On-prem connection serving as a bridge between an Amazon Redshift instance and Apono Minimum Required Version: 1.3.2 Use the following steps to update an existing connector.
Secret
Value generated through AWS or Kubernetes
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal security.
User
Redshift user for Apono with the CREATEUSER
permission
Amazon Redshift Info
Information for the Amazon Redshift instance to be integrated:
Hostname
Port Number
Apono Connector
On-prem connection serving as a bridge between your AWS Lambda functions and Apono Minimum Required Version: 1.4.1 Use the following steps to update an existing connector.
Lambda Function
Named function set up within AWS Lambda
💡 When creating the Lambda function, apply the tag
apono-connector-access: "true"
.
Item
Description
Apono Connector
Connection installed on the EKS cluster that serves as a bridge between the cluster and Apono
Apono Premium
Apono plan providing all available features and dedicated account support
Cluster Admin Access
Admin access to the cluster to integrate The cluster admin access can be the built-in cluster-admin role or equivalent permission level. Apono does not require admin permissions to the Kubernetes environment.
EKS Cluster Name
Unique name of the cluster to integrate
AWS SSO | SAML Federation
Authentication for requester Security Assertion Markup Language (SAML) federation for authentication can be provided by providers such as Okta, Onelogin, Jumpcloud, and Ping Identity.
Can manage all aspects of Microsoft Entra ID and Microsoft services that use Microsoft Entra identities. |
|
Deploy the Docker image of the Apono connector as Cloud Run service
Cloud Run is a managed compute platform that enables running containerized applications in a fully managed serverless environment.
This article explains how to setup an Apono connector for Cloud Run with a Docker image.
Item | Description |
---|---|
Use the following sections to create a Cloud Run user for either your Google Project or Google Organization.
Follow these steps to create a service account for Cloud Run in a Google Project:
In your shell environment, log in to Google Cloud and enable the API.
Set the environment variables.
Create the service account.
Assign the following roles to the service account.
Follow these steps to create a service account for Cloud Run in a Google Organization:
In your shell environment, log in to Google Cloud and enable the API.
Set the environment variables.
Create the service account.
Assign the following roles to the service account.
Follow these steps to deploy the Apono connector:
Push the connector image to GCP Artifact Registry.
The following sets of commands push the connector image to the GCP Artifact Registry:
New Registry: Use the code on this tab to push the Apono connector Docker image to a new GCP Artifact Registry.
Existing Registry: Use the code on this tab to push the Apono connector Docker image to an existing Docker-format GCP Artifact Registry
Deploy the Docker image of the Apono connector to the Cloud Run service.
Deploy the Apono connector with Helm
Integrating a cloud account with Apono allows you to sync and manage your resources:
Discover existing privileges and identities
Manage employee and application provisioning to cloud assets and data repositories with delegated approval workflows
Provide granular permissions to customer-sensitive data
This article explains how to set up an Apono connector for Google Cloud with Helm.
Item | Description |
---|---|
Use the following sections to create an IAM service account user for either your Google Project or Google Organization.
Follow these steps to create a service account for a Google Project:
In your shell environment, log in to Google Cloud and enable the API.
Set the environment variables.
Create the service account.
Assign the following roles to the service account.
Follow these steps to create a service account for a Google Organization:
In your shell environment, log in to Google Cloud and enable the API.
Set the environment variables.
Create the service account.
Assign the following roles to the service account.
Follow these steps to deploy the Apono connector:
Deploy the Apono connector on a GKE cluster.
Create a new GKE cluster
Connect the GKE cluster.
Verify the GKE cluster is selected as the default cluster. The default cluster is denoted with \*
.
Connect the GKE cluster.
Verify the GKE cluster is selected as the default cluster. The default cluster is denoted with \*
.
Bind the IAM Service Account to the GKE Service Account.
Deploy Apono connector on your GKE cluster using Helm Chart.
Create an integration to manage access to a Kubernetes cluster on Azure
With Azure Kubernetes Service (AKS) on Microsoft Azure, AKS simplifies the management complexities of Kubernetes.
Through this integration, Apono helps you securely manage access to your Microsoft Azure Kubernetes cluster.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Azure Kubernetes Service (AKS). The Connect Integration page appears.
Under Discovery, click one or more resource types and cloud services to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage Access Flows to these resources.
Click Next. The Apono connector section appears.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a Kubernetes connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Azure Kubernetes Service cluster.
Create an integration to manage access to your Azure services
Apono offers Azure users a simple way to centralize cloud management through our platform. Through a single integration, you can manage multiple Azure services across various management groups and subscriptions.
Item | Description |
---|---|
Item | Description |
---|---|
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Azure. The Connect Integration page appears.
Under Discovery, choose Management Group.
Select one or more resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an Azure connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Azure. The Connect Integration page appears.
Under Discovery, choose Subscription.
Select one or more resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an Azure connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Azure services.
Create an integration to manage access to Azure-managed PostgreSQL databases
PostgreSQL databases are open-source relational database management systems emphasizing extensibility and SQL compliance. Microsoft enables developers to create cloud-hosted PostgreSQL databases.
Through this integration, Apono helps you securely manage access to your Azure PostgreSQL instances.
To enable Apono to manage Azure PostgreSQL user access, you must create a user and then configure the integration within the Apono UI.
Item | Description |
---|---|
You must create a user in your PostgreSQL instance for the Apono connector and grant that user permissions to your databases.
You must use the admin account and password to connect to your database.
Use the following steps to create a user and grant it permissions:
In your preferred client tool, create a new user. Use apono_connector
for the username. Be sure to set a strong password for the user.
You must also grant the azure_pg_admin
role to the user in the database instance.
Grant privileges to the azure_pg_admin
role on all databases except template0
and azure_sys
.
This allows Apono to perform tasks that are not restricted to a single schema or object within the database, such as creating, altering, and dropping database objects.
For each database to be managed through Apono, connect to the database and grant azure_pg_admin
privileges on all objects in the schemas.
This allows Apono to perform tasks that are restricted to schemas within the database, such as modifying table structures, creating new sequences, or altering functions.\
Connect to the template1
database and grant azure_pg_admin
privileges on all objects in the schemas.
For any new databases created in the future, this allows Apono to perform tasks that are restricted to schemas within the database, such as modifying table structures, creating new sequences, or altering functions.
5. Using the credentials from step 1, create a secret for the database instance and associate it to the Azure connector.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Azure PostgreSQL. The Connect Integration page appears.
Under Discovery, click one or more resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage Access Flows to these resources.
Click Next. The Apono connector section appears.
From the dropdown menu, select the connector that has been granted read access to the secret for the PostgreSQL instance.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an Azure connector and associate the secret with the connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Azure PostgreSQL instances.
Create a connector on Google Kubernetes Engine
Connectors are secure on-premises components that link Apono to your resources:
No secrets are read, cached, or stored
No account admin privileges need to be granted to Apono
The connector contacts your secret store or key vault to sync data or provision access
Once set up, this connector will enable you to sync data from cloud applications and grant and revoke access permissions through Google Kubernetes Engine (GKE).
Item | Description |
---|---|
Use the following sections to install a connector for either your Google Project or Google Organization.
Follow these steps to install an Apono connector for a Google Project:
In your shell environment, log in to Google Cloud with an account possessing Owner permissions.
At the shell prompt, set the environment variables.
(Optional) Set the following optional environment variables.
In a new or existing Terraform (.tf) file, add the following provider and module information to create a connector.
At the Terraform CLI, download and install the provider plugin and module.
Apply the Terraform changes. The proposed changes and a confirmation prompt will be listed.
Enter yes to confirm deploying the changes to your Google Project instance.
On the Connectors page, verify that the connector has been deployed.
Follow these steps to install an Apono connector for a Google Organization:
In your shell environment, log in to Google Cloud with an account possessing Organization Administrator permissions.
At the shell prompt, set the environment variables.
(Optional) Set the following optional environment variables.
In a new or existing Terraform (.tf) file, add the following provider and module information to create a connector.
At the Terraform CLI, download and install the provider plugin and module.
Apply the Terraform changes. The proposed changes and a confirmation prompt will be listed.
Enter yes to confirm deploying the changes to your Google Organization instance.
On the Connectors page, verify that the connector has been deployed.
Create an integration to manage access to PostgreSQL instances on Google Cloud SQL
Google Cloud SQL PostgreSQL is a fully managed relational database service built for the cloud. It provides a high-performance, scalable, and highly available PostgreSQL database instance without the overhead of managing infrastructure. With Google Cloud SQL, users benefit from Google Cloud's robust infrastructure, which ensures high availability, security, and scalability for their databases.
Through this integration, Apono helps you securely manage access to your Google Cloud SQL PostgreSQL database instances.
To enable Apono to manage Google Cloud SQL PostgreSQL user access, you must create a user and then configure the integration within the Apono UI.
Item | Description |
---|
You must create a user in your PostgreSQL instance for the Apono connector and grant that user permissions to your databases.
You must use the admin account and password to connect to your database.
Following these steps to create a user and grant it permissions:
In the Google Cloud console, with either Built-in authentication or Cloud IAM authentication.
Use apono_connector for the username.
This authentication method grants the user the cloudsqlsuperuser
role. Be sure to set a strong password for the user.
As an alternative, you can run the following command from your Postgre client:
CREATE USER 'apono_connector'@'%' IDENTIFIED BY 'password'
Use apono-connector-iam-sa@[PROJECT_ID].iam.gserviceaccount.com for the Principal.
This authentication method does not grant the user account database privileges.
Be sure that the Apono connector GCP service account (apono-connector-iam-sa@[PROJECT_ID].iam.gserviceaccount.com) has the Cloud SQL Admin
role.
(Cloud IAM only) In your preferred client tool, grant cloudsqlsuperuser
access to the user account.
In your preferred client tool, grant the cloudsqlsuperuser
role privileges on all databases except template0
and cloudsqladmin
.
This allows Apono to perform tasks that are not restricted to a single schema or object within the database, such as creating, altering, and dropping database objects.
For each database to be managed through Apono, connect to the database and grant cloudsqlsuperuser
privileges on all objects in the schemas.
This allows Apono to perform tasks that are restricted to schemas within the database, such as modifying table structures, creating new sequences, or altering functions.
Connect to the template1
database and grant cloudsqlsuperuser
privileges on all objects in the schemas.
For any new databases created in the future, this allows Apono to perform tasks that are restricted to schemas within the database, such as modifying table structures, creating new sequences, or altering functions.
When using Cloud IAM authentication, the service account and its permissions are managed through Google Cloud IAM roles and policies. The service account is used to authenticate to the Cloud SQL instance.
A secret does not need to be created.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click one or more resource types and cloud services to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage access flows to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
A secret is not needed or Cloud IAM authentication.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Create an integration to manage access to a GCP organization or project resources
Apono offers GCP users a simple way to centralize cloud management through our platform. Through a single integration, you can manage multiple GCP services across various organizations and projects.
Item | Description |
---|
Google BigQuery is a fast, scalable, secure, fully managed data warehouse service in the cloud, serving as a primary data store for vast datasets and analytic workloads.
To add this resource to your Google Project or Organization, you must create a custom role with BigQuery dataset permissions and assign the role to the service account for the Apono connector.
The following instructions in this section use the Google Cloud CLI.
However, you can also through the Google Console, and IAM client library, or the REST API. Additionally, you can to the Apono connector through the Google Console.
Follow these steps to associate the permissions through the Google Cloud CLI:
In your shell environment, log in to Google Cloud and enable the API.Shell
Set the environment variables.
Create the custom role. Be sure to replace the placeholders (<ROLE_ID>
, <TITLE>
, and <DESCRIPTION>
) with actual values of your choosing for the role ID, title, and description of the role.
Using the role ID defined in the previous step, assign the custom role to the Apono connector service account.
To manage and monitor your cloud assets, you must enable the Cloud Asset API.
Follow these steps to enable this API:
In your shell environment, log in to Google Cloud and enable the API.
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to integrate Apono with your GCP organization:
Under Discovery, click Google Organization.
Click one or more resource types to sync with Apono.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to the roles available in the organization where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
After connecting your GCP organization to Apono, you will be redirected to the Connected tab to view your integrations. The new GCP integration will initialize once it completes its first data fetch. Upon completion, the integration will be marked Active.
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to integrate Apono with your GCP project:
Under Discovery, click Google Project.
Click one or more resource types to sync with Apono.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to the roles available in the organization where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
After connecting your GCP project to Apono, you will be redirected to the Connected tab to view your integrations. The new GCP integration will initialize once it completes its first data fetch. Upon completion, the integration will be marked Active.
Create an integration to manage access to Cloud SQL MySQL databases
MySQL is a reliable and secure open-source relational database system. It serves as the main data store for various applications, websites, and products. This includes mission-critical applications and dynamic websites. With Cloud SQL, users benefit from Google Cloud's robust infrastructure, which ensures high availability, security, and scalability for their databases.
Through this integration, Apono helps you securely manage access to your Cloud SQL MySQL databases.
Item | Description |
---|
You must create a user in your MySQL instance for the Apono connector and grant that user permissions to your databases.
Follow these steps to create a user and grant it permissions:
In the Google Cloud console, with either Built-in authentication or Cloud IAM authentication.
Use apono_connector for the username.
Be sure to set a strong password for the user.
As an alternative, you can run the following common from your MySQL client:
CREATE USER 'apono_connector'@'%' IDENTIFIED BY 'password';
Use apono-connector-iam-sa@[PROJECT_ID].iam.gserviceaccount.com for the Principal.
Be sure that the Apono connector GCP service account (apono-connector-iam-sa@[PROJECT_ID].iam.gserviceaccount.com) has the Cloud SQL Admin
role.
In your preferred client tool, expose databases to the user. This allows Apono to view database names without accessing the contents of each database.
Grant the user database permissions. The following commands grant Apono the following permissions:
Creating users
Updating user information and privileges
Monitoring and troubleshooting processes running on the database
Grant the user only one of the following sets of permissions. The chosen set defines the highest level of permissions to provision with Apono. Click on each tab to reveal the SQL commands.
Allows Apono to read data from databases
Allows Apono to read and modify data
Allows Apono administrative-level access, including the ability to execute and drop tables
(MySQL 8.0+) Grant the user the authority to manage other roles. This enables Apono to create, alter, and drop roles. However, this role does not inherently grant specific database access permissions.
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click one or more resource types and cloud services to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage access flows to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
A secret is not needed or Cloud IAM authentication.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Create an integration to manage access to Kubernetes clusters on Google Cloud
With a Kubernetes cluster in GKE on Google Cloud, GKE handles the complexities of Kubernetes management. Google Cloud provides a reliable, scalable database service.
Through this integration, Apono helps you securely manage access to your Google Cloud Kubernetes cluster.
Item | Description |
---|
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click one or more resource types and cloud services to sync with Apono.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
When the Apono connector is installed on the GKE cluster, you do not need to enter values for the optional fields or to provide a secret.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Learn how to integrate and manage access to your GCP cloud
If your organization uses Google Cloud Platform (GCP), Apono's GCP integrations can help you securely manage access to your GCP cloud-based services and databases.
By identifying and transforming existing privileges, Apono can shift your cloud management from broad permissions to on-demand access flows.
Through our GCP integrations, Apono enables you to perform the following access tasks:
Limit Access: Discover existing privileges in GCP and convert them to just-in-time Access Flows.
Enable Self-Service Access: Allow developers to request access to GCP services, buckets, and instances via Slack.
Automate Approval Workflows: Create automatic approval processes for sensitive GCP resources.
Restrict Third-Party Access: Grant third-parties (customers or vendors) time-based access to specific services with MFA verification.
Review Access: Audit user cloud access, permissions granted, and reasons for access across GCP.
\
Learn how to update a connector through the Helm CLI
Periodically, you may need to update your Google Cloud connector to help maintain functionality, performance, and security.
This article explains how to update a connector through the Helm CLI.
Item | Description |
---|
To update an Apono connector for Google Cloud, follow these steps in the shell environment:
Set the APONO_CONNECTOR_ID
environment variable to your chosen connector ID value.
Set the APONO_TOKEN
environment variable to your account token.
Set the PROJECT_ID
environment variable to the Google Project ID.
Set the GCP_SERVICE_ACCOUNT_EMAIL
environment variable.
Run the following helm upgrade
command to pull the most recent connector version.
On the page, verify that the connector has been updated.
Google Cloud Functions enables you to build and connect cloud services by writing single-purpose functions that are attached to events emitted from your cloud infrastructure and services.
Its serverless architecture frees you to write, test, and deploy functions quickly without having to manage infrastructure setup.
With this integration, you can connect your internal applications to Cloud Functions and manage access to those applications with Apono.
Apono currently supports the original version of Google Cloud Functions, 1st Gen.
Item | Description |
---|
You can also use the steps below to integrate with Apono using Terraform.
In step 8, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the tab, click Cloud Function Custom Integration. The Connect Integration page appears.
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a .
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Option | Description |
---|---|
Option | Description |
---|---|
On the page, click Install Connector. The Install Connector page appears.
that enables interacting with Azure services using your command-line shell
with the following permissions:
with the following permission:
On-prem serving as a bridge between an Azure MySQL database instance and Apono Minimum Required Version: 1.3.0
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
On the page, click Install Connector.The Install Connector page appears.
that enables interacting with Azure services using your command-line shell
Name of the Azure
Identifier for the
that enables managing user access to Azure resources
that enables the following tasks:
On the page, click Install Connector. The Install Connector page appears.
that enables interacting with Azure services using your command-line shell
with the following permissions:
with the following permission:
On the page, click Install Connector. The Install Connector page appears.
that enables interacting with Azure services using your command-line shell
with the following permissions:
with the following permission:
(Azure Entra)
(Azure RBAC)
Role | Permissions Granted |
---|---|
Role | Permissions Granted |
---|---|
Role | Permissions Granted |
---|---|
Role | Permissions Granted |
---|---|
Item | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
(Built-in authentication only) with the credentials from step 1.
On the tab, click Google Cloud SQL - PostgreSQL. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector.
Setting | Description |
---|
(User/Password only) .
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Google Cloud SQL PostgreSQL instance.
On the tab, click GCP. The Connect Integrations Group page appears.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage to these resources.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an .
Setting | Description |
---|
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to GCP organizational roles.
On the tab, click GCP. The Connect Integrations Group page appears.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage to these resources.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an .
Setting | Description |
---|
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to GCP organizational roles.
with the credentials from step 1 above.
You can now .
On the tab, click Google Cloud SQL - MySQL. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector.
Setting | Description |
---|
(User/Password only) .
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Google Cloud SQL MySQL database.
On the tab, click Google Kubernetes Engine (GKE). The Connect Integration page appears.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage to these resources.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector.
Setting | Description |
---|
(User/Password only) .
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Google Cloud Kubernetes cluster.
Setting | Description |
---|
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your internal application.
IAM Auth
IAM authentication
User / Password
Built-in authentication
require
An SSL-encrypted connection must be used.
allow
An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used.
disable
An unencrypted connection is used.
prefer
An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used.
verify-ca
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
verify-full
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names.
Apono Token
Account-specific Apono authentication value Use the following steps to obtain your token:
On the Connectors page, click Install Connector. The Install Connector page appears.
Click Cloud installation.
Click Cloud installation > GCP > Install and Connect GCP Project > CLI (Cloud Run).
Copy the token listed on the page in step 1.
Kubernetes Command Line Tool (kubectl)
Command-line tool used for communicating with a Kubernetes cluster's control plane
Google Cloud Command Line Interface (Google Cloud CLI)
Command-line interface used to manage Google Cloud resources
Google Cloud Information
Information for your Google Cloud instance
Google-defined Values:
(Organization) Organization ID
Google Cloud Location
Customer-defined Values:
Service Account Name
Artifact Repository Name
Cloud Run Service Name
Google Cloud Roles
Google Cloud role that provides Owner permissions for the project or organization
Project Implementation Role:
Owner
Organization Implementation Roles:
Owner
Organization Administrator
role/secretmanager.secretAccessor
Access secret versions
Read the secret data
roles/iam.securityAdmin
Manage IAM policies, roles, and service accounts
Set and update IAM policies
Grant, modify, and revoke IAM roles for users and service accounts
role/secretmanager.secretAccessor
Access secret versions
Read the secret data
roles/iam.securityAdmin
Manage IAM policies, roles, and service accounts
Set and update IAM policies
Grant, modify, and revoke IAM roles for users and service accounts
roles/browser
List resources within the organization
View metadata
Apono Token
Account-specific Apono authentication value Use the following steps to obtain your token:
On the Connectors page, click Install Connector. The Install Connector page appears.
Click Cloud installation.
Click Cloud installation > GCP > Install and Connect GCP Project > CLI (Cloud Run).
Copy the token listed on the page in step 1.
Kubernetes Command Line Tool (kubectl)
Command-line tool used for communicating with a Kubernetes cluster's control plane
Google Cloud Command Line Interface (Google Cloud CLI)
Command-line interface used to manage Google Cloud resources
Google Cloud Information
Information for your Google Cloud instance:
(Organization) Organization ID
GKE Cluster Namespace
Service Account Name
Owner Role
Google Cloud role that provides Owner permissions for the project or organization
role/secretmanager.secretAccessor
Access secret versions
Read the secret data
roles/iam.securityAdmin
Manage IAM policies, roles, and service accounts
Set and update IAM policies
Grant, modify, and revoke IAM roles for users and service accounts
role/secretmanager.secretAccessor
Access secret versions
Read the secret data
roles/iam.securityAdmin
Manage IAM policies, roles, and service accounts
Set and update IAM policies
Grant, modify, and revoke IAM roles for users and service accounts
roles/browser
List resources within the organization
View metadata
Apono Connector
On-prem connection installed on the AKS cluster that serves as a bridge between the cluster and Apono
Apono Premium
Apono plan providing all available features and dedicated account support
User Access Administrator Role
Azure role that enables granting users the Azure Kubernetes Service Cluster User role. Apono does not require admin permissions to the Kubernetes environment.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Server URL
(Optional) URL of the Kubernetes API server used to interact with the Kubernetes cluster
Certificate Authority
(Optional) Certificate that ensures that the Kubernetes API server is trusted and authentic Leave this field empty if you want to connect the cluster where the connector is deployed.
Resource Group
(Optional) Resource group where the cluster is deployed
This is the resourceGroupName
.
Cluster Name
(Optional) Cluster name as it appears in AKS
This is the resourceName
.
Subscription ID
(Optional) Subscription ID where the cluster is deployed
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Azure Management Group Id
ID of a container for enabling efficient management of access, policies, and compliance across multiple subscriptions
Azure Primary Domain
(Optional) Initial domain assigned to your tenant
Disable Locks
(Optional) Allows Apono to forcefully delete the Azure lock to be able to grant or revoke access to the required resource
Apono will recreate the lock after it has been deleted.
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Azure Subscription Id
(Optional) Unique identifier assigned to an Azure subscription
Azure Primary Domain
(Optional) Initial domain assigned to your tenant
Disable Locks
(Optional) Allows Apono to forcefully delete the Azure lock to be able to grant or revoke access to the required resource
Apono will recreate the lock after it has been deleted.
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Apono Connector
On-prem connection serving as a bridge between an Azure MySQL database instance and Apono Minimum Required Version: 1.3.0
PostgreSQL Info
Information for the database instance to be integrated:
Hostname
Port Number
Database Name
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Apono Token
Account-specific Apono authentication value Use the following steps to obtain your token:
On the Connectors page, click Install Connector. The Install Connector page appears.
Click Cloud installation.
Click Cloud installation > GCP > Install and Connect GCP Project > CLI (GKE).
Copy the token listed on the page in step 1.
Google Cloud Command Line Interface (Google Cloud CLI)
Command-line interface used to manage Google Cloud resources
Google Cloud Information
Information for your Google Cloud instance:
(Organization) Organization ID
Google Cloud Region
GKE Cluster Name
GKE Cluster Region
Tag Key-Value Pairs (if used)
Optional:
Apono Connector ID
Service Account Name
Namespace
Owner Role
Google Cloud role that provides Owner permissions for the project or organization
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Server URL | (Optional) URL of the server where the cluster is deployed Leave this field blank to connect the cluster where the Apono connector is deployed. |
Certificate Authority | (Optional) Ensures that the Kubernetes API server you are communicating with is trusted and authentic Leave this field blank to connect the cluster where the Apono connector is deployed. |
Project ID | (Optional) ID of the GCP project where the cluster is deployed |
Region | (Optional) Location where the cluster is deployed |
Cluster Name | (Optional) Name of the cluster to connect The cluster name should be the same as it appears in GKE. |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Access Details | Instructions for accessing this integrations's resources |
Custom Parameters | Key-value pairs to send to the Google Cloud Function For example, you can provide a Google Function with a redirect URL that is used for internal provisioning access and passed as part of the action requests. |
Project ID | ID of the project associated with the Cloud Function |
Region | Location of the Google Cloud Function instance |
Function Name | Name of the Google Cloud Function |
You have chosen the advanced installation method
You can also easily connect AWS in Apono following this UI guide here
It's required that you have your Cloud Account connected to your Kubernetes Cluster In this example we use Kube2Iam solution for kubernetes on EC2
The Connector is deployed using helm and requires and IAM Role to be able to access tagged ASM secrets in the future. You can choose to install the Connector using either your CLI or Terraform:
CLI
Create a IAM role to allow Connector read access for apono tagged secrets
Get AWS Account
Replace #EKS_CLUSTER_NAME
Create Connector Role
Assign Role Policies
Deploy Apono Connector
Terraform
Required providers: helm
(v2.5.1), aws
, kubernetes
You can validate the Connector is installed in the Connector status page.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Hostname
Hostname of the PostgreSQL instance to connect
Port
Port value for the database By default, Apono sets this value to 5432.
Database Name
Name of the database to integrate By default, Apono sets this value to postgre.
SSL Mode
(Optionl) Mode of Secure Sockets Layer (SSL) encryption used to secure the connection with the SQL database server
Option
Description
require
An SSL-encrypted connection must be used.
allow
An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used.
disable
An unencrypted connection is used.
prefer
An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used.
verify-ca
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
verify-full
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names.
Apono Connector |
Cloud SQL Admin API |
Cloud SQL Admin Role | (Cloud IAM authentication only) Google Cloud role that the Apono connector's service user must have at the instance's project or organization level |
PostgreSQL Info | Information for the database instance to be integrated: |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Auth Type | Authorization type for the MySQL service account user |
Option | Description |
IAM Auth | Cloud IAM authentication |
User / Password | Built-in authentication |
Project ID | ID of the project where the PostgreSQL instance is deployed |
Region | Location where the PostgreSQL instance is deployed |
Instance ID | ID of the PostgreSQL instance |
Instance ID User Override | (Optional) Allows overriding the instance ID for the user |
Database Name | Name of the database to integrate By default, Apono sets this value to postgre. |
SSL Mode | (Optionl) Mode of Secure Sockets Layer (SSL) encryption used to secure the connection with the SQL database server |
Option | Description |
require | An SSL-encrypted connection must be used. |
allow | An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used. |
disable | An unencrypted connection is used. |
prefer | An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used. |
verify-ca | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. |
verify-full | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names. |
Credential Rotation | (Optional) Number of days after which the database credentials must be rotated |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Connector |
Apono Premium |
Google User Account |
Google Cloud Command Line Interface (Google Cloud CLI) |
Google Cloud Information | Information for your Google Cloud instance associated with the Apono connector Google-defined: User-defined
|
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Organization ID |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Project ID |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Connector |
Cloud SQL Admin API |
Cloud SQL Admin Role | (Cloud IAM authentication only) Google Cloud role that the Apono connector's service user must have at the instance's project or organization level |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Auth Type | Authorization type for the MySQL service account user |
Option | Description |
IAM Auth | Cloud IAM authentication |
User / Password | Built-in authentication |
Project ID | ID of the project where the MySQL instance is deployed |
Region | Location where the MySQL instance is deployed |
Instance ID | ID of the MySQL instance |
Instance ID User Override | (Optional) Allows overriding the instance ID for the user |
Credential Rotation | (Optional) Number of days after which the database credentials must be rotated |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Token | Account-specific Apono authentication value Use the following steps to obtain your token:
|
Helm Command Line Interface (Helm CLI) |
Owner Role |
Project ID |
Apono Connector |
Cloud Function (1st gen) |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
How to install a Connector on a Kubernetes cluster to integrate Kubernetes with Apono
To integrate with Kubernetes and start managing JIT access to Kubernetes resources, you must first install a connector in your Kubernetes cluster.
This is can be done by one of the following methods:
Helm
Terraform
What's a connector? What makes it so secure?
The Apono Connector is an on-prem connection that can be used to connect resources to Apono and separate the Apono web app from the environment for maximal security.
An Apono connector is installed in the cloud platform managing your Kubernetes resource. The installation is made by running a Helm command with the necessary parameters.
An existing Kubernetes project on one of the following platforms:
Google Kubernetes Engine (GKE)
Elastic Kubernetes Service (EKS)
Azure Kubernetes Engine (AKS)
Kubernetes (self-managed)
Helm
kubectl
Select any Kubernetes integration in the Catalog.
You can install a new connector from any Kubernetes New Integration form. Pick the one relevant to your network.
Connectors for EKS, GKE, AKS and self-managed Kubernetes work in the same way.
From the drop-down list on the next page select Add a New Connector, and then select Help.
Copy the token displayed toward the bottom of the page.
Run the following Helm command in a terminal:
Without permissions
If you would like to install the connector in Kubernetes, but not grant Apono access to read or manage access to Kubernetes resources, use this code:
With permissions
If you would like to install the connector in Kubernetes and grant Apono access to read and manage access to Kubernetes resources, use this code:
Where:
[APONO_TOKEN] is the token copied from the integration page in the previous step.
[CONNECTOR_NAME] is any name you choose to give the connector.
Helm will finish with a message that the apono-connector has been installed.
Interested in HA for the connector?
Add this variable to the Helm chart to create one or more replicas of the Apono connector instance:
--set-string replicaCount=<number_of_replicas>
Read more here.
The Kubernetes Connector is now installed.
Return to the Add new integration form from step 1 for EKS, GKE, AKS or self-managed Kubernetes.
The Connector is found by the form, marked by a green checkmark
You can now integrate Apono with your Kubernetes instance
Complete the integration with EKS, GKE, AKS or self-managed Kubernetes.
If you are managing more than one Kubernetes cluster, you must be certain that the current context points to the cluster into which the Apono connector is to be added.
Get the current context with kubectl config current-context
Set the current context with kubectl config use-context [clustername]
An Apono connector is installed in the cloud platform managing your Kubernetes resource. The installation is made by adding an Apono module to your Terraform configuration.
A Kubernetes project on one of the following platforms:
Google Kubernetes Engine (GKE)
Elastic Kubernetes Service (EKS)
Azure Kubernetes Engine (AKS)
Kubernetes (self-managed)
Terraform with the following providers:
Helm
Kubernetes
AWS
Select any Kubernetes integration in the Catalog.
You can install a new connector from any Kubernetes New Integration form. Pick the one relevant to your network.
Connectors for EKS, GKE, AKS and self-managed Kubernetes work in the same way.
From the drop-down list on the next page select Add a New Connector, and then select Terraform.
Copy the token displayed toward the bottom of the page.
Add the following to your Terraform module.
If you would like to install the connector in Kubernetes, but not grant Apono access to read or manage access to Kubernetes resources, use this code:
If you would like to install the connector in Kubernetes and grant Apono access to read and manage access to Kubernetes resources, use this code:
Where:
[APONO_TOKEN] is the token copied from the integration page in the previous step.
[CONNECTOR_NAME] is any name you choose to give the connector.
Run terraform init
. It will finish with the message:
"Terraform has been successfully initialized!"
Run terraform apply
. It will finish with the message:
"Apply complete! Resources: (N) added.."
The Kubernetes Connector is now installed.
Return to the Add new integration form from step 1 for EKS, GKE, AKS or self-managed Kubernetes.
The Connector is found by the form, marked by a green checkmark
You can now integrate Apono with your Kubernetes instance
Complete the integration with EKS, GKE, AKS or self-managed Kubernetes.
Return to the Catalog, and select one of the following Kubernetes integrations:
With a connector installed on your Kubernetes platform, the next step is setting permissions for Apono to manage access control.
Cluster admin access to the cluster you'd like to integrate
Helm
An Apono Kubernetes connector
Please note! If you installed the Apono connector on the cluster, there is no need to provide the secret in the Add Integration form in the UI.
The connector already handles the secret ;)
Select Kubernetes from the Catalog.
On the next page, select an existing connector from the drop-down list.
Click Next to view the Kubernetes integration form.
Name the integration.
Enter the following Kubernetes parameters, which can be found with kubectl:
Cluster Name
Secret
If you installed the Apono connector on the cluster, leave this empty. Otherwise:
With a GCP secret manager:
Project
Secret ID
With Kubernetes secret manager:
Namespace
Secret Name
With an Azure secret manager:
Vault URL
Secret Name
Integration of Apono with self-managed Kubernetes is now complete.
Manage users and groups. If you have and IdP set up, for example Okta or Azure AD, you may want to integrate Apono in order to sync users and groups.
You can now control access to this resource by defining Access Flows.
Make it easy for your users to request access by integrating your Slack or Teams organization with Apono.
Apono Connector
On-prem connection serving as a bridge between an Azure instance and Apono
Install an Azure connector using one of these approaches:
Minimum Required Version: 1.3.6
Learn how to update an existing Azure connector.
Azure Management Group ID
ID of a container for enabling efficient management of access, policies, and compliance across multiple subscriptions
Azure Primary Domain
Initial domain assigned to your tenant
Apono Connector
On-prem connection serving as a bridge between an Azure instance and Apono
Install an Azure connector using one of these approaches:
Minimum Required Version: 1.3.6
Learn how to update an existing Azure connector.
Azure Subscription ID
Unique identifier assigned to an Azure subscription
Azure Primary Domain
Initial domain assigned to your tenant
Apono Connector |
Kubernetes Engine Cluster Role |
Create an integration to manage access to an AlloyDB instance
AlloyDB is a fully managed PostgreSQL-compatible database service on Google Cloud. It offers high performance, scalability, and reliability for demanding enterprise workloads.
Through this integration, Apono helps you securely manage access to your AlloyDB instance.
Item | Description |
---|---|
Use the following tabs to assign roles to the Apono connector for either your Google Project or Google Organization.
Follow these steps to assign roles to the Apono connector:
In your shell environment, log in to Google Cloud and enable the API.
Set the environment variables.
Assign roles to the connector.
Follow these steps to assign roles to the Apono connector:
In your shell environment, log in to Google Cloud and enable the API.
Set the environment variables.
Assign roles to the connector.
You must create a user in your AlloyDB instance for the Apono connector and grant that user permissions.
Use the following steps to create a user for the Apono connector and grant it permissions:
Create a new user and grant permissions with either Built-in Authentication or IAM Authentication.
Run the following commands from your PostgreSQL client.
Run the following command to grant superuser privileges to the Apono connector user.
(Built-in Authentication only) Create a secret with the credentials from step 1.
When using IAM authentication, the service account and its permissions are managed through Google Cloud IAM roles and policies.
A secret does not need to be created.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click AlloyDB. The Connect Integration page appears.
Under Discovery, select one or multiple resource types for Apono to discover in the instance.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector for GCP.
Click Next. The Integration Config page appears.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your AlloyDB instance.
Learn how to integrate and manage access to your K8s cluster
If your organization uses Kubernetes for development, Apono's Kubernetes integrations can help you securely manage access to your Kubernetes containers and databases.
By identifying and transforming existing privileges, Apono can shift your management from broad permissions to on-demand access flows. Through our integrations, Apono enables you to perform the following access tasks:
Limit Access: Discover existing cluster privileges and convert them to just-in-time Access Flows.
Enable Self-Service Access: Allow developers to request access to K8s clusters and pods via Slack.
Automate Approval Workflows: Create automatic approval processes for sensitive K8s resources.
Restrict Third-Party Access: Grant third-parties (customers or vendors) time-based access to specific containers with MFA verification.
Review Access: Audit access, permissions granted, and reasons for access across K8s.
Learn how to update a connector through the Helm CLI
Periodically, you may need to update your Kubernetes connector to help maintain functionality, performance, and security.
This article explains how to update a connector through the Helm CLI.
Item | Description |
---|---|
Use the following steps to update an Apono connector for Kubernetes:
In the shell environment, run the following helm upgrade
command to pull the most recent connector version.
Shell
Parameter | Description |
---|---|
On the Connectors page, verify that the connector has been updated.
Create an integration to manage access to a Redis Cloud instance
Redis Cloud is a fully managed, in-memory data store that functions as a database, cache, and message broker. With features such as data persistence, replication, and clustering, Redis Cloud provides high availability and fault tolerance, seamless scalability, and automated maintenance for optimal performance and reliability.
Through this integration, Apono helps you securely manage access to your Redis Cloud instance.
Item | Description |
---|
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the tab, click Redis Cloud (Redislabs). The Connect Integration page appears.
Under Discovery, select one or multiple resource types for Apono to discover in all instances of the environment.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Create an integration to manage access your PostgreSQL databases
PostgreSQL databases are open-source relational database management systems emphasizing extensibility and SQL compliance.
Through this integration, Apono helps you securely manage access to your PostgreSQL instance.
To enable Apono to manage PostgreSQL user access, you must create a user and then configure the integration within the Apono UI.
If your PostgreSQL instance runs on a cloud service, follow one of these guides:
Item | Description |
---|
You must create a user in your PostgreSQL instance for the Apono connector.
You must use the admin account and password to connect to your database.
Follow these steps to create a user and grant it permissions:
In your preferred client tool, create a new user. Use apono_connector for the username. Be sure to set a strong password for the user.
You must also grant the SUPERUSER
role to the user in the database instance.
Using the credentials from step 1, for the database instance.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, select one or multiple resource types for Apono to discover in all instances of the environment.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
How to integrate MongoDB with Apono to manage JIT access to Clusters, Databases and Collections
A document database used to build highly available and scalable internet applications
Self Service Access - Empower your developers to gain self-servable access to databases using Slack.
Automated Approval Workflows - Create approval workflows for specific sensitive databases/collections.
Restricted Third Party Access - Grant third-party (customer or vendor) time-based access to specific databases with MFA verification.
Review Access - View a detailed access audit of who was granted access to which databases with what permission level and why.
- Apono requires a project owner in the cluster's project so it can provision.
Creating an API Key with Project Owner role
Run the following Atlas CLI command:
Make sure to replace #PROJECT_ID
with the project-id that contains the cluster you want to integrate
Copy the Public and Private API Keys in the response
Storing the secret in your environment secret store.
Click on MongoDB integration card
Select the Connector, this is the Connector which is installed in the same AWS account as the MongoDB Atlas instance
Type in a friendly name for the integration
Fill in the Project Id and Cluster Name
AWS Use the respective secret which was stored in AWS Secret Manager previously in this guide.
Select the secret from the Secret Manager according to the appropriate AWS account and region
Click Create
How to integrate any MongoDB DB with Apono, this integration will allow you to manage MongoDB access using Apono
Self Service Access - Empower your developers to gain self-servable access to databases using Slack.
Automated Approval Workflows - Create approval workflows to specific sensitive databases.
Restricted Third Party Access - Grant third-party (customer or vendor) time-based access to specific databases with MFA verification.
Review Access - View a detailed access audit of who was granted access to which databases with what permission level and why.
Apono requires a user in the DB instance so it can provision.
In MongoDB, switch to admin database
Create a user for Connector in the instance, and type the password to the apono-connector user.(password)
Storing the secret in your environment secret store.
Click on MongoDB integration card
Select the Connector, this is the Connector which is installed in the same AWS account as the MongoDB instance
Type in a friendly name for the integration
Fill in the hostname and port
AWS
Use the respective secret which was stored in AWS Secret Manager previously in this guide.
Select the secret from the Secret Manager according to the appropriate AWS account and region
Click Create
In MongoDB, switch to admin database
Create user for Connector in the instance, type in some secure password
Using aws-cli
, store in AWS Secret Manager, make sure to replace #SECRET_NAME
,#REGION
, #PASSWORD
Create an integration to manage access to an Elasticsearch instance
Elasticsearch is a distributed, RESTful search and analytics engine designed for horizontal scalability, reliability, and real-time search. It enables users to store, search, and analyze big volumes of data quickly and in near real-time. Elasticsearch is widely used for log and event data analysis, full-text search, and complex searches across large datasets.
Through this integration, Apono helps you securely manage access to your Elasticsearch instance.
Item | Description |
---|
You can also use the steps below to integrate with Apono using Terraform.
In step 8, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Create an integration to manage access to a MongoDB Atlas Portal instance and its resources
MongoDB Atlas is a fully-managed cloud database service that automates database administration tasks for MongoDB. It supports multiple cloud providers and offers advanced features like real-time analytics and security controls. Atlas simplifies database management, allowing organizations to focus on application development with a scalable, flexible database solution that adapts to changing needs and workloads.
Through this integration, Apono helps you securely manage access to your MongoDB Atlas UI Organizations and Projects.
Item | Description |
---|
You must create an API key with the Organization User role for the Apono connector.
Follow these steps to create the API key:
In the Atlas CLI, create the API key. The following command will return the public and private API keys in the response.
Be sure to replace <ORGANIZATION_ID>
with the organization ID of the MongoDB Atlas UI to integrate.
Using the keys from the previous step, for the MongoDB Atlas UI instance.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click one or both resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage access flows to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Create an integration to manage access to a Microsoft SQL Server database
Microsoft SQL Server is a reliable and secure relational database management system. It can be used as the main data store for various applications, websites, and products.
Microsoft enables developers to create cloud-hosted SQL Server databases.
Through this integration, Apono helps you securely manage access to your Microsoft SQL Server database.
Item | Description |
---|
You must create a user in your Microsoft SQL Server instance for the Apono connector.
Use the following steps to create a user and grant it permissions to your databases:
In your preferred client tool, create a new user. Be sure to set a strong password for the user.
The password must be a minimum of 8 characters and include characters from at least three of these four categories:
Uppercase letters
Lowercase letters
Digits (0-9)
Symbols
Expose databases to the user. This allows Apono to view database names without accessing the contents of each database.
Grant the ALTER ANY LOGIN
database permissions to the user in all the databases.
Grant the user ADMIN permissions: Allows Apono to grant users administrative-level access, including the ability to execute and drop tables\
Grant and revoke server-level roles with Apono
To use Apono for MS SQL server-level roles, you must assign the Apono connector user the securityadmin
role.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click one or more resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage access flow to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Option | Description |
---|---|
On-prem serving as a bridge between your Google Cloud PostgreSQL databases and Apono Minimum Required Version: 1.4.1 Use the following steps to .
for managing database instances with resources, such as BackupRuns, Databases, and Instances
Option | Description |
---|
Option | Description |
---|
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
On-prem serving as a bridge between a Google Cloud instance and Apono
providing the most features and dedicated account support
User account with
used to manage Google Cloud resources
(Organization)
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
On-prem serving as a bridge between your Google Cloud SQL MySQL databases and Apono Minimum Required Version: 1.4.1 Use the following steps to .
for managing database instances with resources, such as BackupRuns, Databases, and Instances
Option | Description |
---|
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
On the page, click Install Connector. The Install Connector page appears.
used to manage Kubernetes applications
that provides full access to most Google Cloud resources
Identifier for the
On-prem serving as a bridge between your Google Function and Apono, deployed with a GCP service account Minimum Required Version: 1.5.3 Use the following steps if you need to .
Named function set up within
To allow the Apono connector to call the Cloud Function, add the Cloud Functions Invoke and Cloud Functions Viewer roles to the apono-connector service account apono-connector-iam-sa
for that Cloud Function.
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
On-prem installed on the GKE cluster that serves as a bridge between a Kubernetes cluster and Apono
that grants the Apono connector's service account access to retrieve and list GKE clusters Apono does not require admin permissions to the Kubernetes environment.
In the Google Cloud console, enable IAM authentication for your AlloyDB instance by setting the alloydb.iam_authentication flag to on.
Setting | Description |
---|---|
Setting | Description |
---|---|
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Setting | Description |
---|
.
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Redis Cloud instance.
You can also input the user credentials directly into the Apono UI during the .
On the tab, click PostgreSQL. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
.
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your PostgreSQL instance.
You can also store the secret in if you use Google Cloud.
Open
You've successfully integrated Apono with your MongoDB. You should now see the new integration in your .
You can now use this integration in your existing or new Access Flow. Check this guide out for more information on .
You can also store the secret in if you use Google Cloud.
Open
requires to have a user in the DB instance so it can provision access. Provisioning is done by creating an admin
user in the database.
Hurray! You've successfully integrated Apono with your MongoDB. You should now see the new integration in your . You can now use this integration in your existing or new Access Flow. Check this guide out for more information on .
On the tab, click Elasticsearch. The Connect integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Setting | Description |
---|
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Elasticsearch instance.
You can now .
On the tab, click Mongo Atlas Portal. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Setting | Description |
---|
.
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your MongoDB Atlas UI Organizations and Projects.
Members of the securityadmin
fixed can GRANT
, DENY
, and REVOKE
server-level permissions. They can also GRANT
, DENY
, and REVOKE
database-level permissions if they have access to a database. Additionally, they can reset passwords for SQL Server logins.
Using the credentials from step 1, for the database instance.
You can now .
On the tab, click Microsoft SQL Server. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Setting | Description |
---|
Associate the .
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Microsoft SQL Server database.
require
An SSL-encrypted connection must be used.
allow
An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used.
disable
An unencrypted connection is used.
prefer
An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used.
verify-ca
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
verify-full
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names.
IAM Auth | Cloud IAM authentication |
User / Password | Built-in authentication |
require | An SSL-encrypted connection must be used. |
allow | An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used. |
disable | An unencrypted connection is used. |
prefer | An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used. |
verify-ca | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. |
verify-full | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names. |
IAM Auth | Cloud IAM authentication |
User / Password | Built-in authentication |
Apono Connector
On-prem connection serving as a bridge between your Google Cloud SQL MySQL databases and Apono
Minimum Required Version: 1.6.4
Use the following steps to update an existing connector.
Allow Connector IP Access
Allows the Apono connector to communicate with the AlloyDB instance
You must allow the connector IP range in the AlloyDB primary instance's IP allow list.
API Services
API services that must enabled:
AlloyDB API
Compute Engine API
Service Networking API
See Enabling and Disabling Services for more information.
AlloyDB Information
Identifiers for AlloyDB resources:
Primary Instance ID
Cluster ID
See View instance details to learn how to obtain these identifiers.
Credential Rotation
(Optional) When Auth Type is set to User / Password, number of days after which the database credentials must be rotated Learn more about the Credentials Rotation Policy.
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources
Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters.
To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found
Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource
Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Cluster admin access
Cluster admin access to the cluster to integrate The cluster admin access can be the built-in cluster-admin role or equivalent permission level.
Helm Command Line Interface (Helm CLI)
Command-line interface used to manage Kubernetes applications
apono.connectorId string
ID for the connector
apono.token string
Token value obtained from the Apono UI
serviceAccount.managerClusterRoles boolean
Configures whether the connector also manages access to the cluster on which it is deployed
The value of serviceAccount.manageClusterRoles
should be based on whether the installation has been set up to manage the cluster roles or not.
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Proxy Address | Elasticsearch proxy address |
Clusters | Array of Elasticsearch clusters
Example: |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Organization ID | ID of the organization of the MongoDB Atlas UI instance to connect |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Hostname | Hostname of the Microsoft SQL Server instance to connect |
Port | Port value for the instance By default, Apono sets this value to 1433. |
Database Name | Name of the database By default, Apono sets this value to master. |
Integrate Apono with your Identity Provider to manage the access of your users and groups
On-Demand Permissions- Managing organizational users’ on demand access permissions to your cloud services or data repositories at granular level.
Extended SSO- Extend organizational authentication to infrastructure, applications and data repositories where you don’t have SSO.
Approval Workflows- Creating approval or trigger-based Access Flows allowing organizational user groups to receive the permissions they need.
Review User Access Permissions- View each organizational users access permissions across the integrated applications and data sources.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Auth Type
Authorization type for the AlloyDB user
Option
Description
User / Password
Apono-created local user credentials
IAM Authentication
Cloud IAM authentication
Project ID
ID of the project associated with the AlloyDB instance
Location
Location of the AlloyDB instance
Primary Instance ID
ID for the primary instance within the AlloyDB cluster
Cluster ID
ID for the AlloyDB cluster
Port
Port value for the database
By default, Apono sets this value to 5432.
Instance ID User Override (optional)
Overrides the instance ID for the user
Database Name
Name of the database to integrate
By default, Apono sets this value to postgre.
SSL Mode
(Optional) Mode of Secure Sockets Layer (SSL) encryption used to secure the connection with the SQL database server
Be sure to choose the SSL mode based on your AlloyDB primary instance SSL mode configuration.
Option
Description
require
An SSL-encrypted connection must be used.
allow
An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used.
disable
An unencrypted connection is used.
prefer
An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used.
verify-ca
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
verify-full
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
Additionally, the server hostname is checked against the certificate's names.
Redis Cloud API |
Redis API credentials | Credentials used to authenticate a Redis REST API request: These credentials are required for creating the Apono Secret in the next row. |
Apono Secret |
|
Apono Connector | On-prem connection serving as a bridge between a Redis Cloud instance and Apono: |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Connector | On-prem connection serving as a bridge between your PostgreSQL databases and Apono: Minimum Required Version: 1.3.0 Use the following steps to update an existing connector: |
PostgreSQL Info | Information for the database instance to be integrated:
|
Setting | Description |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Hostname | Hostname of the PostgreSQL database instance to connect |
Port | Port value for the instance By default, Apono sets this value to 5432. |
Database Name | Name of the database to integrate By default, Apono sets this value to postgre |
SSL Mode | (Optionl) Mode of Secure Sockets Layer (SSL) encryption used to secure the connection with the SQL database server |
Option | Description |
require | An SSL-encrypted connection must be used. |
allow | An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used. |
disable | An unencrypted connection is used. |
prefer | An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used. |
verify-ca | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. |
verify-full | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names. |
Credential Rotation | (Optional) Number of days after which the database credentials must be rotated |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Connector | On-prem connection serving as a bridge between a MongoDB Atlas instance and Apono: |
Atlas Command Line Interface (Atlas CLI) |
MongoDB Atlas Info | Information for the MongoDB Atlas UI resources to be integrated:
|
Credential Rotation | (Optional) Number of days after which the database credentials must be rotated |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Connector | On-prem connection serving as a bridge between a Microsoft SQL Server database instance and Apono: |
Microsoft SQL Server Info | Information for the database instance to be integrated:
|
Credential Rotation | (Optional) Number of days after which the database credentials must be rotated |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
How to integrate with your Azure VM SSH Servers with Apono for JIT access
If users need to debug, develop or troubleshoot Azure VM SSH servers, they can request Just-in-Time access to them in Apono!
Admins can create Access Flows with specific VM SSH servers and build approval and access duration flows for different users, groups, and shifts.
Upon an approved request, Apono creates a certificate that grants access to the server and makes the requester a member of the group(s) representing the access they need. Apono may also use the user's default Linux group.
Installed Apono connector with network access to the Azure VM SSH Servers
Minimal Apono connector version: 1.4.0 (visit the Connectors Page and update the connector if needed)
A user with a key pair authentication for Apono to your SSH servers with sudo permissions. Add this line to the sudoers file:
apono ALL=(ALL) NOPASSWD:ALL
Optional: User groups representing access to the servers. The default value is "Default", representing access to the server with the user's default Linux group.
What's a connector? What makes it so secure?
The Apono Connector is an on-prem connection that can be used to connect resources to Apono and separate the Apono web app from the environment for maximal security.
Read more about the recommended Azure Installation Architecture.
In the Apono app, navigate to the Catalog
Pick the Azure VM SSH integration:
Pick an existing connector or create a new one (see connector prerequisites)
In the secret store of your choice, create a secret for Apono with the following params:
Key: base64_private_key
Value: the SSH Server private key in base64 format (see SSH key prerequisites)
To find the private key in base64 format, run this command : cat /PATH-TO-KEY/key.pem | base64
Fill the config:
Integration name: Give the integration a name of your choice
User: set the name of the user you created in the prerequisites for the Apono connector.
User groups (Optional): The names of groups in the server representing the sudoer role (from a local server, puppet/chef, LDAP server, etc., depending on your network setup)
Secret: according to the Secret Store of your choice, insert the secret you created in step 4.
Apono supports default access to SSH servers, even if no user groups were provided.
This means users can always log in with their default Linux group.
You will be redirected to the Connected Integrations tab.
Make sure you see the Azure VM SSH integration as Active. The # of discovered SSH servers will appear in the table under Resources.
You can now create Access Flows for Azure VM SSH Servers!
How to integrate with your EC2 SSH Servers with Apono for JIT access
If users need to debug, develop or troubleshoot AWS EC2 SSH servers, they can request Just-in-Time access to them in Apono!
Admins can create Access Flows with specific EC2 SSH servers and build approval and access duration flows for different users, groups, and shifts.
Upon an approved request, Apono creates a certificate that grants access to the server and makes the requester a member of the group(s) representing the access they need. Apono may also use the user's default Linux group.
Installed Apono connector with network access to the AWS EC2 SSH Servers
Minimal Apono connector version: 1.4.0 (visit the Connectors Page and update the connector if needed)
A user with a key pair authentication for Apono to your SSH servers with sudo permissions. Add this line to the sudoers file:
apono ALL=(ALL) NOPASSWD:ALL
Optional: User groups representing access to the servers. The default value is "Default", representing access to the server with the user's default Linux group.
What's a connector? What makes it so secure?
The Apono Connector is an on-prem connection that can be used to connect resources to Apono and separate the Apono web app from the environment for maximal security.
Read more about the recommended Azure Installation Architecture.
In the Apono app, navigate to the Catalog
Pick the AWS EC2 SSH integration:
Pick an existing connector or create a new one (see connector prerequisites)
In the secret store of your choice, create a secret for Apono with the following params:
Key: base64_private_key
Value: the SSH Server private key in base64 format (see SSH key prerequisites)
To find the private key in base64 format, run this command : cat /PATH-TO-KEY/key.pem | base64
Fill the config:
Integration name: Give the integration a name of your choice
User: set the name of the user you created in the prerequisites for the Apono connector.
User groups (Optional): The names of groups in the server representing the sudoer role (from a local server, puppet/chef, LDAP server, etc., depending on your network setup)
Secret: according to the Secret Store of your choice, insert the secret you created in step 4.
Apono supports default access to SSH servers, even if no user groups were provided.
This means users can always log in with their default Linux group.
You will be redirected to the Connected Integrations tab.
Make sure you see the AWS EC2 SSH integration as Active. The # of discovered SSH servers will appear in the table under Resources.
You can now create Access Flows for AWS EC2 SSH Servers!
How to integrate MySQL DB with Apono Cloud-Native access management platform
Reduce Over Privileges - Discover existing privileges to MySQL databases and convert them to on-demand access flows to reduce over-privileges.
Self Service Access - Empower your developers to gain self-servable access to databases using Slack.
Automated Approval Workflows - Create approval workflows to specific sensitive databases.
Restricted Third Party Access - Grant third-party (customer or vendor) time-based access to specific databases with MFA verification.
Review Access - View a detailed access audit of who was granted access to which databases with what permission level and why.
An Apono connector installed with network access to the MySQL databases
Minimal Apono connector version: 1.3.0 (visit the Connectors Page and update the connector if needed)
A user for Apono to your MySQL with the following permissions
A secret created in Secret Store with the following params:
Key username
, Value MySQL USERNAME
Keypassword
, Value USERNAME PASSWORD
📘 Why does Apono need secrets?
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal security.
Create user for Connector in the instance, type in some secure password
Using aws-cli
, store in AWS Secret Manager, make sure to replace #SECRET_NAME
,#REGION
,#USERNAME
, #PASSWORD
Expose databases to apono_connector
Grant CREATE USER
to apono_connector in all the databases
Select and grant apono_connector ONE of the following READ_ONLY
, READ_WRITE
, ADMIN
permissions, this will function as the highest permission level you would like to provision with Apono
READ_ONLY
READ_WRITE
ADMIN
📘 Is your MySQL running on a cloud service?
If you are trying to connect to an RDS MySQL or a CloudSQL MySQL you should use the specific cloud service integration.
Click on Integrations Catalog.
Pick a connector with network access to the MySQL databases (see prerequisites)
Specify the integrations details:
Integration name – type the name of the integration When building an Access Flow you will reference this name
Hostname – specify the hostname of the MySQL you are connecting
Port – 3306
Provide the secret (see prerequisites)
Click "Connect"
Congratulations on connecting your MySQL. You can now create access flows that grant permissions to your MySQL databases.
Have multiple MySQLs? Use the API
You can check out the Apono API reference to easily integrate multiple integrations.
Apono Connector | On-prem connection serving as a bridge between an Elasticsearch instance and Apono: |
Apono HTTP Proxy |
Create an integration to manage access to a Vertica database
Vertica is a scalable and high-performance analytics database optimized for fast querying and analysis of large datasets. It delivers speed and flexibility for business intelligence and data warehousing applications.
Through this integration, Apono helps you securely manage access to your Vertica database and just-in-time (JIT) access to built-in and custom roles.
Item | Description |
---|---|
You must create a user in your Vertica database instance for the Apono connector and grant that user permissions to the database resources.
Follow these steps to create a user and grant it permissions:
In your preferred client tool, create a new user. Be sure to set a strong password for the user.
Grant the pseudosuperuser
role to the user. This allows Apono to create or drop tables and manage user roles and permissions within the Vertica database.
Using the credentials from step 1, create a secret for the database instance.\
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal security.
You can now integrate your Vertica database.
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Vertica Database. The Connect Integration page appears.
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Vertica database.
Create an integration to manage access to Oracle Database tables and custom roles
Oracle Database is a relational database management system (RDBMS) developed by Oracle Corporation. It enables organizations to store, manage, and retrieve data using Structured Query Language (SQL). The database includes features for ensuring data integrity, performing backup and recovery, controlling access, and tuning performance.
Oracle Database supports both on-premises and cloud-based deployments through Oracle Cloud Infrastructure.
Through this integration, Apono helps you securely manage just-in-time, just-enough access to your Oracle Database, tables and custom roles.
You must create a user in your Oracle Database instance for the Apono connector.
Use the following steps to create a user and grant it permissions to your databases:
In your preferred client tool, create a new user. Be sure to set a strong password for the user.
The password must be a minimum of 9 characters and satisfy the following minimum requirements:
2 lowercase letters
2 uppercase letter
2 numbers (0-9)
2 special characters
Cannot have 3 consecutive identical characters
Have 4 different characters than the previous password
Cannot contain, repeat, or reverse the user name
Grant the user permission to connect to the Oracle Database.
Expose databases to the user. This allows Apono to view database names without accessing the contents of each database.
Grant the user permissions to query data from any object, create new user accounts, modify existing user accounts, and remove user accounts from the database.
Using the credentials from step 1, create a secret for the database instance.
You can also input the user credentials directly into the Apono UI during the integration process.
You can now integrate Oracle Database.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Oracle Database. The Connect Integration page appears.
Under Discovery, click one or more resource types to sync with Apono.
Apono automatically discovers and syncs all the instances in the environment. After syncing, you can manage access flows to these resources.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Oracle Database resources.
Create an integration to manage access to a Snowflake instance
Snowflake is a fully managed, cloud-based data platform that functions as a data warehouse, data lake, and data sharing solution. With features such as automatic scaling, secure data sharing, and robust data integration, Snowflake offers high performance and flexibility, ensuring seamless data management and analytics.
Through this integration, Apono helps you securely manage access to your Snowflake instance.
Item | Description |
---|---|
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Snowflake. The Connect Integration page appears.
Under Discovery, select one or multiple resource types for Apono to discover in all instances of the environment.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Snowflake instance.
Create an integration to manage access to an RDP server
Microsoft Remote Desktop Protocol (RDP) enables users to connect to and control a remote computer or virtual machine over a network. It provides secure and efficient remote access to desktops, servers, and applications, allowing employees to work from anywhere with an internet connection.
With this integration, Apono enables you to manage access to an RDP server with Connect permission or custom permissions group, so that only specific users or groups can provide remote access to resources in your environment on a temporary, as-needed basis.
Item | Description |
---|---|
Before you begin integrating RDP with Apono, you must configure the Windows Remote Management (WinRM) service on a Windows machine to allow remote access using unencrypted and basic authentication.
You can allow unencrypted or encrypted communication.
Follow these steps to configure the RDP server:
Add the WinRM port 5985 to the allowlist in the server firewall.
Turn on the WinRM firewall rule in the Windows server.
Analyze and configure the WinRM service to allow remote management on the local machine.
If a confirmation prompt appears after running the following command, enter y.
Set the WinRM service configuration to allow unencrypted traffic.
Enable basic authentication for the WinRM service. Basic authentication transmits credentials in cleartext.Shell
You can now integrate an RDP server.
Follow these steps to configure the RDP server:
Add the WinRM port 5985 to the allowlist in the server firewall.
Turn on the WinRM firewall rule in the Windows server.
Analyze and configure the WinRM service to allow remote management on the local machine.
If a confirmation prompt appears after running the following command, enter y.
Enable basic authentication for the WinRM service. Basic authentication transmits credentials in cleartext.
Configure WinRM HTTPS access on the target machine.
Configuring WinRM to use HTTPS encrypts data transmitted between the client and server, protecting sensitive information from interception. To enable HTTPS, ensure a valid server authentication certificate is installed on the target machine.
You can now integrate an RDP server.
WinRM HTTPS requires a local computer Server Authentication certificate with a CN matching the hostname to be installed. The certificate must not be expired, revoked, or self-signed.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click RDP The Connect Integration page appears.
Under Discovery, select one or multiple resource types for Apono to discover in all instances of the environment.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config page appears.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your RDP server.
Create an integration to manage access to SSH servers
SSH servers are secure, remote access points that allow users to connect to and manage systems over encrypted connections.
Through this integration, Apono enables managing secure Just-in-Time (JIT) access to SSH servers. Admins can create access flows for specific SSH servers and define approval processes and access durations for different users, groups, and shifts.
When a user's access request is approved, Apono creates a certificate that grants access to the server and assigns the requester to the appropriate access group(s). Apono may also use the user's default Linux group.
Item | Description |
---|---|
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click SSH. The Connect Integration page appears.
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config page appears.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your SSH instance.
Create an integration to manage access for sets of people in your Okta Group membership
Administrators can create groups in Okta to efficiently manage access rights and application settings for distinct sets of users. Users can leverage groups to streamline and secure their access to various applications and resources across multiple devices and environments.
Through this integration, Apono helps you securely manage access for sets of users in your Okta Group instance.
Item | Description |
---|
This article provides a simplified guide to creating an Okta application for use with Apono.
Since Okta products evolve, we strongly recommend verifying the steps in this documentation with Okta's official .
Follow these steps to create an Okta app:
In your Okta admin dashboard, from the main side navigation, click Applications > Applications > Create App Integration. The Create a new app integration popup window appears.
Select API Services.
Click Next. The New API Services App Integration page appears.
Enter an App integration name, such as Apono Connector.
Click Save. The application settings page appears.
and a secret for Apono.
of the application.
.
.
Use the following steps to generate your client credentials:
For the OKTA Groups integration, use an OKTA API Services app that only has one key pair.
On the General tab, under Client Credentials, click Edit.
Copy and save the Client ID.
For the Client authentication, select Public key / Private key. The PUBLIC KEYS section appears.
Under PUBLIC KEYS, click Add key. The Add a public key popup window appears.
Click Generate new key.
Under Private key - Copy this!, click Copy to clipboard and save the value.
Click Done.
Click Save. The Existing client secrets will no longer be used popup window appears.
Click Save.
Follow these steps to configure app settings:
On the General tab, under General Settings, click Edit.
For the Proof of possession, uncheck Require Demonstrating Proof of Possession (DPoP) header in token requests.
Click Save.
Follow these steps to define the scope:
On the Okta API Scopes tab, in the okta.groups.manage row, click Grant. The Grant Okta API Scope popup window appears.
This permission allows Apono to manage existing groups in your Okta organization.
Click Grant scope.
In the okta.users.read row, click Grant.
This permission allows Apono to read the existing users' profiles and credentials.
Follow these steps to grant admin assignments:
On the Admin roles tab, click Edit assignments.
From the Role dropdown menu, select Organization Administrator.
To grant users a membership to a group that contains admin roles, the Super Admin role should be granted to the Apono connector.
Click Save Changes.
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Create an integration to manage access for sets of people in your Google Workspace
Groups in Google Workspace allow for communication and collaboration within an organization. Administrators can create groups to manage settings and access to services for different sets of users. Users can utilize groups for activities, such as team communication, document sharing, and meetings.
Through this integration, Apono helps you securely manage access for sets of users in your Google Workspace.
The groups feature in Google Workspace differs from the Google Groups product.
Before starting this integration, be sure to acquire the items listed in the following table.
In your Google Workspace, you must add the service account associated with the Apono connector to the Groups Admin role.
Use the following steps to assign this role:
Click Assign admin. The Groups Admin page appears.
Click Assign service accounts. The Assign role - Groups Admin modal appears.
Under Add service accounts, enter apono-connector-iam-sa@$PROJECT_ID.iam.gserviceaccount.com. Be sure to replace $PROJECT_ID
with the project ID where the connector is installed.
Click ADD.
Click ASSIGN ROLE.
You can also use the steps below to integrate with Apono using Terraform.
In step 8, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Apono's integration syncs your JumpCloud organization's groups and users, so you can easily define access policies for them.
log in to JumpCloud as an Admin User with read-only permission. See for information about creating one.
Have a JumpCloud admin API Key ready.
Log into your JumpCloud organization with the Apono dedicated admin user
Click on your Profile (icon with your initials)
On the menu click on -> My API Key
Copy admin API Key
Log into Apono
Go to the -> IDP integrations section
Click on Connect JumpCloud
Specify the integrations details:
Integration name – type the name of the integration When building an Access Flow you will reference this name
Admin API Key – paste the Admin's API key
Custom Manager Field Name - Specify the custom attribute name for Manager context. For more information go to the section.
You should notice the new JumpCloud integration in few seconds
User doesn't have the right privileges - creating a new admin user maybe will need a new company's email.
Enable your organization to use single sign-on to log in to Apono
Implementing Okta Single Sign-On provides seamless and secure authentication across various applications. Centralized identity management reduces password fatigue and increases overall security for your organization.
This guide shows you how to enable SSO for logging in to Apono.
Item | Description |
---|
Use the following resources as needed:
for additional context about creating an integration
for descriptions of the following integration settings
Follow these steps to create a SAML integration and enable Okta SSO:
From the side navigation in the Okta Admin Console, click Applications > Applications. The Applications page opens.
Click Create App Integration. The Create a new app integration popup window appears.
Select SAML 2.0.
Click Next. The General Settings tab appears.
Enter an App name for the integration.
Click Next. The Configure SAML tab appears.
In the Single sign-on URL field, enter https://login.apono.io/auth/saml/callback.
In the Audience URI (SP Entity ID) field, enter Apono.
From the Name ID format dropdown menu, select EmailAddress.
From the Application username dropdown menu, select Okta username.
Under Group Attribute Statements (optional), map your Okta groups to Apono roles by defining a group attribute statement.
Field | Value |
---|
Click Next. The Feedback tab appears.
Click Finish. The new application appears.
On the Sign On tab, under SAML Signing Certificates, click Actions > View IdP metadata for the active certificate. The XML file appears in a new tab.
Save the .xml file to your device.
Send the following information to Apono support:
The downloaded .xml file
Domains that your organization allows to log in to Apono
When your Okta SSO integration is available, you will be able to use SSO to log into Apono with your company domain.
Okta users and groups provisioning integration with SCIM
If your organization uses Okta SCIM to manage your employees’ access to apps, tools and services, you can take advantage of Okta’s “Provisioning” feature to automatically sync users and groups to Apono, allowing you to create just-in-time group membership based on Access Flows and user requests.
The integration between Okta and Apono that enables this provisioning to occur is built around an industry-standard protocol known as (System for Cross-domain Identity Management). To learn more about how Okta works with SCIM, please .
The remainder of this guide is focused on enabling you to configure both Apono and Okta to get provisioning up and running for your organization.
The following provisioning features are supported by Apono:
Push Users. Users in Okta that are assigned to the Apono SCIM application in Okta are automatically added as members to your Apono's integrated account.
Push User Attributes. User profile information in Okta synchronization between Okta and Apono's integrated account identities.
Push Deactivate User. Deactivating or removing user in Okta terminates the user in Apono.
Push Groups. Groups and their members in Okta can be pushed to Apono.
Okta organization with admin access (see ).
Go to Integrations, under Environment from the left navigator.
Under Integrations, click the Catalog tab and select under IdP category.
In Okta Directory (SCIM) integration page enter the following:
Integration Name. Unique, alphanumeric, user-friendly name.
Domain. Your OKTA organization domain name. Can be found in Okta admin portal, below your username in the upper right corner, as follow:
Groups to Sync (optional). List of group names to sync in the following structure: group1,group2.group3
.
Click Connect to initiate the integration.
The connector is initializing, and it will still that way until the intergration is complete and the two applications talk with each other.
In the meantime, click the vertical three dots to the right and click Edit.
Copy the browser's URL. It looks like this:
https://app.apono.io/catalog/edit-integration/XXXXX-XXXXX-XXXXX-XXXXX
The URL suffix is the Integration ID. Save this for Okta provisioning described below.
Log in to your Okta admin portal and complete the following steps:
Under the Applications tab, select Browse App Catalog and search and add Apono SCIM app.
Under the Applications tab, navigate to the Apono application.
Click on the “Provisioning” tab in the application. Under the “Integration” panel, click the "Configure API Integration".
Check the "Enable API integration" checkbox.
For the Connection ID, enter the Integration ID part of the URL saved from the Apono integration above.
Click on "Authenticate with Apono" and Save.
Go to “To App” panel. click on edit "Provisioning to App" and check the "Enable" checkbox next to:
Create Users
Update User Attributes
Deactivate Users
Click Save.
Okta integration is only possible with an organization account, not a personal Gmail account.
Create an integration to manage access to GitHub repositories
GitHub is a code hosting and collaboration platform that enables developers to manage project versions, track changes, and collaborate on software development.
Through this integration, Apono helps you securely manage access to your GitHub repositories.
Item | Description |
---|
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the tab, click GitHub. The Connect Integration page appears.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
Click Next. The Integration Config page appears.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Create an integration to manage access to a Windows Domain Controller
A Windows Domain Controller (DC) authenticates and authorizes users, enforcing security policies for computers within the domain. Through centralized user management and access control, the DC ensures that users can log into computers and access resources like applications and files based on their permissions.
With this integration, Apono enables you to manage access to a Windows Domain Controller with Connect permission or a custom permissions group, so that only specific users or groups can provide remote access to resources in your environment on a temporary, as-needed basis.
Before you begin integrating Windows Domain Controller with Apono, you must allow remote access with the Windows Remote Management (WinRM) service on your Windows machine.
You can allow or communication.
Follow these steps to configure the Windows Domain Controller:
Add the WinRM port 5985 to the allowlist in the server firewall.
Turn on the WinRM firewall rule in the Windows server.
Analyze and configure the WinRM service to allow remote management on the local machine.
If a confirmation prompt appears after running the following command, enter y.
Set the WinRM service configuration to allow unencrypted traffic.
Enable basic authentication for the WinRM service. Basic authentication transmits credentials in cleartext.
Follow these steps to configure the Windows Domain Controller:
Add the WinRM port 5985 to the allowlist in the server firewall.
Turn on the WinRM firewall rule in the Windows server.
Analyze and configure the WinRM service to allow remote management on the local machine.
If a confirmation prompt appears after running the following command, enter y.
Enable basic authentication for the WinRM service. Basic authentication transmits credentials in cleartext.Shell
Configure WinRM HTTPS access on the target machine.
Configuring WinRM to use HTTPS encrypts data transmitted between the client and server, protecting sensitive information from interception. To enable HTTPS, ensure a valid server authentication certificate is installed on the target machine.
WinRM HTTPS requires a local computer Server Authentication certificate with a CN matching the hostname to be installed. The certificate must not be expired, revoked, or self-signed.
You can also use the steps below to integrate with Apono using Terraform.
In step 11, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
Under Discovery, select one or multiple resource types for Apono to discover in all instances of the environment.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
Click Next. The Integration Config page appears.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
REST API for managing Redis Cloud programmatically for your account.
Value generated with the credentials of the user you create based on your Redis Cloud API account key and user key:
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal .
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
that enables quickly provisioning and managing Atlas database deployments from the terminal.
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
Look for MySQL and click Connect
to manage Elasticsearch The default Elasticsearch capabilities do not include authorization controls and therefore neither does the API. When integrating with Apono using the HTTP Proxy, you will be able to manage access to Elasticsearch using Apono Access Flows.
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
for your Okta instance with your Okta client ID and private key.
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal .
You can also input the directly into the Apono UI on the Apono tab in the Secret Store section.
On the tab, click Okta Group. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Setting | Description |
---|
.
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can create that grant permission to your Okta Group instance.
Item | Description |
---|
On the page, hover over the Groups Admin row. Several menu options appear.
On the tab, click Google Group. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a .
Setting | Description |
---|
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permissions to groups within your Google Workspace.
The is used by Apono to determine how it finds each user's manager within the JumpCloud system. By specifying the attribute name, Apono can accurately locate the manager associated with each user. If the attribute name is not specified, Apono will default to using JumpCloud's predefined attribute, which is manager
.If you prefer not to use JumpCloud's default method, you have the option to utilize Custom Attributes in JumpCloud to specify the user manager.It is important to note that the manager attribute must contain either the manager's email address or their ID (JumpCloud user ID).For more information about the manager attribute, see , along with for general information about custom attributes.
With a successful connection to JumpCloud, you can now for the resource.
Refer to for information about errors that may occur.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Setting | Description |
---|
.
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your GitHub instance.
You can now .
You can now .
On the tab, click Windows Domain Controller. The Connect Integration page appears.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (, , , ).
Setting | Description |
---|
.
Setting | Description |
---|
Refer to for more details about the schema definition.
Now that you have completed this integration, you can that grant permission to your Windows Domain Controller.
Option
Description
User / Password
Apono-created local user credentials
IAM Authentication
Cloud IAM authentication
Option
Description
require
An SSL-encrypted connection must be used.
allow
An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used.
disable
An unencrypted connection is used.
prefer
An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used.
verify-ca
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
verify-full
An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass.
Additionally, the server hostname is checked against the certificate's names.
Option | Description |
require | An SSL-encrypted connection must be used. |
allow | An SSL-encrypted or unencrypted connection is used. If an SSL encrypted connection is unavailable, the unencrypted connection is used. |
disable | An unencrypted connection is used. |
prefer | An SSL encrypted connection is attempted. If the encrypted connection is unavailable, the unencrypted connection is used. |
verify-ca | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. |
verify-full | An SSL-encrypted connection must be used and a server certification verification against the provided CA certificates must pass. Additionally, the server hostname is checked against the certificate's names. |
Apono Connector
On-prem connection serving as a bridge between a Vertica database instance and Apono:
Vertica Information
Information for the database instance to be integrated:
Hostname
Port number
Database name
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Hostname
Hostname of the Vertica database instance to connect
Port
Port value for the instance By default, Apono sets this value to 5433.
Database Name
Name of the database
Credential Rotation
(Optional) Number of days after which the database credentials must be rotated
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Apono Connector
On-prem connection serving as a bridge between an Oracle Database instance and Apono:
Oracle Database Information
Information for the database instance to be integrated:
Hostname
Port number
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Hostname
Hostname of the Oracle Database instance to connect
Port
Port value for the instance By default, Apono sets this value to 1521.
Service Name
Name of the service By default, Apono sets this value to ORCL.
Credential Rotation
(Optional) Number of days after which the database credentials must be rotated
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Apono Connector
On-prem connection serving as a bridge between a Snowflake instance and Apono:
Snowflake Hostname
Snowflake User
Snowflake user with the ACCOUNTADMIN role for the Apono connector
Apono Secret
Value generated with the credentials of the user you create Create your secret based on the Snowflake user credentials and connector you are using.
You can also input the user credentials directly.
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal security.
Credential Rotation
(Optional) When Auth Type is set to User / Password, number of days after which the database credentials must be rotated
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Apono Connector
On-prem connection serving as a bridge between an RDP server and Apono:
User
Microsoft RDP user for Apono The RDP user must be one of the following:
Admin user
Custom role user with the following permissions:
GenericRead
ListChildren
CreateChild
DeleteChild
ListObject
WriteMember
ResetPassword
Delete
Secret
Value generated with the credentials of the user you create
Create your secret based on the connector you are using.
You can also input the user credentials directly.
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal security.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Host
DNS name or IP address of the RDP server to connect
WinRM Port
WinRM port value for the server By default, Apono sets this value to 5985.
RDP Port
(Optional) RDP port value By default, Apono sets this value to 3389.
Use SSL connection
Encrypted or unencrypted connection indicator Possible Values:
false: Unencrypted (unsecure) connection
true: Encrypted (secure) connection
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Servers
Minified JSON list of servers
User Groups
(Optional) Names of groups in the server representing the sudoer role
User's Login Shell
(Optional) Command-line interface program used to log in to an account via SSH
User Key Name
(Optional) Filename of the SSH key pair used for authentication
Credential Rotation
(Optional) Number of days after which the database credentials must be rotated
Learn more about the Credentials Rotation Policy.
User cleanup after access is revoked (in days)
(Optional) Defines the number of days after access has been revoked that the user should be deleted
Learn more about Periodic User Cleanup & Deletion.
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Okta Organization URL | Organizational URL of the Okta instance to connect |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Customer ID | Unique Google account ID |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Organization | GitHub organization name |
Integration Name | Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow |
Host | DNS name or IP address of the RDP server to connect |
WinRM Port | WinRM port value for the server By default, Apono sets this value to 5985. |
RDP Port | (Optional) RDP port value By default, Apono sets this value to 3389. |
Use SSL connection | Encrypted or unencrypted connection indicator Possible Values:
|
How to manage on-demand, temporary membership to JumpCloud groups
If your organization manages access to apps and accounts using IdP groups, for example by adding users to shift groups, you can now create Access Flow to control who can request temporary group membership.
Upon approved request, Apono will add users to groups and remove them after the access time is up.
JumpCloud - Super Admin privilege to the Okta Admin Console
Cloud Provider/K8S - Create secret privileges in cloud provider or Kubernetes secrets manager
JumpCloud admin API Key
Log in to your JumpCloud organization with the Apono dedicated admin user
Click on your Profile (icon with your initials)
In the menu click My API Key
Copy the admin API Key
Go to your cloud provider secret manager and create a new secret
In the secret content store the following fields: Key: token Value: The JumpCloud admin API token you copied in the previous step
Tag the created secret with the following tag: Key: apono-connector-read Value: true
Store the newly created secret
You can also use an existing secret you've already created for Apono
Go to the Apono Catalog
Under Resources, find the JumpCloud integration
Click the integration
Give the integration a name
In Select Connector, choose a connector from the list of connectors or add a new connector
In the Secret Store section, choose the secret store location you created in step 2. You can also use an existing secret you've already created for Apono
Click Connect
That's it!
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Hostname
Hostname of the Snowflake instance to connect
Auth Type
Authorization type for the Snowflake user
Option
Description
User / Password
Apono-created local user credentials
SSO Auth
Synced user credentials from IdP integration with Snowflake
Apono Connector | On-prem connection serving as a bridge between an Okta Group instance and Apono: |
Okta Account Access | Okta account with Super Admin privileges to the Okta admin dashboard |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Apono Connector |
Apono Premium |
Google Workspace Super Admin Role | User role enabling your user account to configure settings in Google Workspace |
Google Workspace Customer ID |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Okta developer account |
Name | group |
Filter | Starts with Enter the name of the group in the filter text field |
Apono Connector | On-prem connection serving as a bridge between a GitHub database instance and Apono: Minimum Required Version: 1.3.2 |
GitHub Organization Account | GitHub organization account that possesses admin repository and user permissions |
Company Email of User | (Non-Enterprise subscription) Company email associated with the user's GitHub profile For non-Enterprise organizations, set the user email to public in GitHub. If the email is private, Apono will not be able to locate the user. |
Synced IdP | (Enterprise subscription) Identity provider (IdP) connected with your GitHub account |
GitHub Token |
|
Apono Secret | Value generated in one of the following environments |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
Item | Description |
Apono Connector | On-prem connection serving as a bridge between a Windows DC server and Apono: |
User | Windows Domain Controller user for Apono The Windows Domain Controller user must be one of the following:
|
Secret |
Custom Access Details | (Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview. |
Integration Owner |
NOTE: When Resource Owner is defined, an Integration Owner must be defined. |
Resource Owner |
NOTE: When this setting is defined, an Integration Owner must also be defined. |
How to integrate Onelogin with Apono to manage access of users and groups
OneLogin is a cloud-based identity and access management (IAM) provider that specializes in single sign-on (SSO) and multi-factor authentication (MFA) solutions. These services are scalable, secure, and easily integrated into various business environments. OneLogin helps organizations manage and secure real-time user access to applications and data across different devices and environments.
Apono's integration with OneLogin provides a seamless way to synchronize your OneLogin users and groups with Apono. This allows you to easily define policies for existing users and groups within Apono.
DevOps creating Access Flows
Professionals in the organization who manage the OneLogin identity provider
Apono account with Admin privileges
OneLogin account with Super User privileges. Learn more about OneLogin privileges in this OneLogin knowledge base article
Follow these steps to integrate Apono with OneLogin:
Log into your OneLogin organization using an admin account.
Click the Administration button in the top-right corner of the Admin Dashboard.
In the menu, navigate to Developers and then click on API Credentials.
Click the New Credential button and create credentials with the Read users scope.
Record the Client ID and Client Secret. You can always access these credentials by returning to the API Credentials page.
Once you have logged in to OneLogin, you can find your organization's domain in the URL bar of your browser. Remove "https://" prefix and any "/. suffix so that you are left with a domain that looks like this example.onelogin.com. Record the base domain for the next step.
Log into Apono.
Fill in the integration details:
Submit the form when it has been completed, and the new OneLogin integration should appear immediately. Find the OneLogin item in the Apono catalog and navigate to the Connected tab to confirm that the Apono integration was successful.
The Manager Attribute is used by Apono to find each user's manager within the OneLogin system. By specifying a manager attribute name, Apono can accurately locate the manager associated with each user. If the attribute name is not specified, Apono will default to using OneLogin's predefined attribute, which is Manager
.
If you prefer not to use OneLogin's default method, you have the option to utilize Custom Attributes in OneLogin to specify the user manager.
Note that the manager attribute must contain either the manager's email address or their ID (OneLogin user ID).
For additional information on how to configure custom attributes in OneLogin, please refer to Custom User Fields in the OneLogin Knowledge Base.
Return to the Integrations page Connected tab where you will see that OneLogin is now active. Click it to view the details of the integration.
With a successful connection to OneLogin, you can now create access flows for the resource.
Refer to Troubleshooting Errors for information about errors that may occur.
Apono Connector
On-prem connection serving as a bridge between an SSH server and Apono:
Minimum Required Version: 1.4.0
Learn how to update an existing AWS, Azure, GCP, or Kubernetes connector.
Apono Secret
Value generated with the credentials of the SSH server user
Create your secret based on your SSH server private key in base64 format.
To find the private key in base64 format, run the following command.
Apono does not store credentials. The Apono connector uses the secret to communicate with services in your environment and separates the Apono web app from the environment for maximal security.
User with Key Pair Authentication
Dedicated SSH server user account that authenticates with SSH key pairs
In the sudoers file, add the following line to allow Apono to execute commands with sudo privileges without a password prompt.
JSON List of Servers
Structured list of SSH servers to which Apono will connect
The following information should be provided for each server:
name
: Unique identifier for the server
host
: IP address or hostname of the server
user
: (Optional) Username for the SSH connection. Default: apono
port
: (Optional) SSH port number. Default: 22
tags
: (Optional) Labels for grouping server resources for dynamic access management.
User Groups
(Optional) User groups representing access to the SSH servers
Default: Default
The default represents access to the server with the user's default Linux group.
Create an integration to manage access to your Google Workspace
Google Workspace (Gsuite) provides a unified platform for communication, file sharing, and collaboration within an organization.
Through this integration, Apono automatically syncs your organizational users and groups when integrating with an organizational identity provider.
Item | Description |
---|---|
Follow these steps to complete the integration:
On the Catalog tab, click Google Workspace. The Add Integration page appears.
(Optional) Enter the Custom Manager Field Name.
By specifying the manager attribute name in this field, Apono can locate a user's manager within Google Workspace. If the attribute name is not specified, Apono uses Google Workspace's predefined field, Manager's Email in the Employee information section of the user's profile.
You can also use custom attributes to specify a user's manager.
The manager attribute must contain either the manager's email address or Google Workspace user ID.
Click Connect. The Google sign in prompts appears.
Follow the sign in prompts.
Be sure that the account you connect has the following admin API privileges:
Users: Read
Groups: Read
On the Apono wants additional access to your Google Account page, click Select all.
Click Continue.
Integrate Microsoft Entra ID with Apono to manage access for users and groups
Microsoft Entra Identity, formerly known as Azure AD, is a comprehensive identity and access management service provided by Microsoft. It facilitates secure user authentication and authorization across various applications and platforms.
Through this integration, Apono helps you securely manage the access of your users.
Item | Description |
---|---|
Follow these steps to complete this integration:
On the Catalog tab, click Azure AD. The Add Integration page appears.
Click Connect. The Microsoft connection screen appears.
Click Accept to grant Apono access to your Microsoft Entra ID instance.
Now that you have completed this integration, you can create access flows that grant access to members of your Microsoft Entra ID instance.
Create an integration to manage access for sets of users in an Azure AD instance
Azure Active Directory (Azure AD) Groups, now part of Microsoft Entra ID, allow administrators to organize users, devices, and other Azure AD objects into collections. By using Azure AD Groups, administrators can efficiently manage settings and control access to various resources for different sets of users.
Through this integration, Apono helps you securely manage access for sets of users in your Azure AD instance.
Item | Description |
---|---|
You can also use the steps below to integrate with Apono using Terraform.
In step 9, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click Azure AD Groups. The Connect Integration page appears.
Under Discovery, select one or multiple resource types for Apono to discover in all instances of the environment.
Click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating an Azure Apono connector.
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Setting | Description |
---|---|
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Setting | Description |
---|---|
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your Azure AD instance.
Create an integration to manage access to a OneLogin instance
Administrators can create groups to manage settings and access to services for different sets of users. Users can utilize groups to manage and secure access to applications and data across different devices and environments.
Through this integration, Apono helps you securely manage access for sets of users in your OneLogin instance.
Item | Description |
---|---|
You must create credentials in your OneLogin instance for the Apono connector.
Follow these instructions to create the credentials:
Log in to OneLogin Admin UI using an admin account with Super User privileges.
Click Administration.
In the menu, click Developers > API Credentials. The Create new API credential page appears.
Click New Credential.
Create a new credential with the Manage users scope.
Using the credentials from the previous step, create a secret for the OneLogin instance.
You can now integrate your OneLogin instance.
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click OneLogin Group. The Connect Integration page appears.
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant permission to your OneLogin instance.
Create an integration to manage users through an LDAP Group
LDAP Groups are fundamental Lightweight Directory Access Protocol (LDAP) components. They enable centralized management of user permissions and access to network resources in complex IT environments.
Through this integration, Apono helps you securely manage the access of your users.
Item | Description |
---|---|
You can also use the steps below to integrate with Apono using Terraform.
In step 10, instead of clicking Confirm, follow the Are you integrating with Apono using Terraform? guidance.
Follow these steps to complete the integration:
On the Catalog tab, click LDAP Group. The Connect Integration page appears.
Under Discovery, click Next. The Apono connector section expands.
From the dropdown menu, select a connector. Choosing a connector links Apono to all the services available on the account where the connector is located.
If the desired connector is not listed, click + Add new connector and follow the instructions for creating a connector (AWS, Azure, GCP, Kubernetes).
Click Next. The Integration Config section expands.
Define the Integration Config settings.
Click Next. The Secret Store section expands.
Click Next. The Get more with Apono section expands.
Define the Get more with Apono settings.
Click Confirm.
Now that you have completed this integration, you can create access flows that grant access to members of your LDAP Group.
Integrate Zenduty with Apono to control access for managing events and alerts
Zenduty provides end-to-end incident alerting and resolution for site reliability engineering (SRE), DevOps, and ITOps teams.
With this integration, you can manage access to Zenduty for creating incident alerts and response workflows based on Zenduty shifts:
Create access policies that are synced with ZenDuty on-call rotations
Set grantees to be requesters who are currently on call
Allocate the minimum amount of resource permissions needed for resolving incidents with automatic approval
Require on-call approvers for developers assisting with incident response
Item | Description |
---|
Zenduty limits the On-call Get
API to 40 calls per minute. In case Apono exceeds that limit, consider reaching out to Zenduty to raise this .
Follow these steps to complete the integration:
On the tab, click Zenduty. The Add Integration page appears.
Enter a unique, alphanumeric, user-friendly Integration Name for identifying this integration when constructing an Access Flow.
Under Secret Store, enter your Zenduty Api Key.
Click Connect.
Integrate VictorOps with Apono to control incident and on-call alerts
VictorOps (now known as Splunk On-Call) is a real-time incident management platform that helps you address system issues quickly and efficiently.
VictorOps centralizes the flow of information throughout the incident lifecycle, allowing you to leverage existing contacts, scheduling, and escalation policies for your Splunk alerts.
With this integration, Apono enables you to do the following:
Manage permissions according to on-call shifts
Automatically update access according to user on-call schedules
Item | Description |
---|
Follow these steps to integrate VictorOps with the Apono system:
On the tab, select VictorOps (Splunk On-Call). The VictorOps page appears.
Enter a user-friendly, alphanumeric Integration Name.
Under Secret Store, enter your API ID.
Enter your API Key.
Click Connect.
Integrate Opsgenie with Apono to manage access based on on-call schedules for developers on duty
Opsgenie manages alerts and connects to multiple communication, Security information and event management (SEIM), and other channels to notify your on-call teams of events that require resolution.
Apono’s Opsgenie integration allows you to perform the following tasks:
Create access policies that are synced with Opsgenie on-call shifts
Validate that the requester is on call
Allocate the minimum amount of resources needed to resolve incidents
Require on-call approver for developers assisting in incident response
Item | Description |
---|
Follow these steps to complete the integration:
On the tab, click Opsgenie. The Add Integration page appears.
Enter a unique, alphanumeric, user-friendly Integration Name for identifying this integration when constructing an Access Flow.
Select the , which you selected when creating your Opsgenie profile.
Under Secret Store, enter your Opsgenie Api Key.
Click Connect.
How to use the IdP Manager attribute for manager approval Access Flows
Some access policies, especially around sensitive access, customer data, production access or high environments and strong permissions, require manager approval for the user requesting access.
Apono supports this use case out-of-the-box, by automatically syncing the manager attribute from your IdP.
Then, all you have to do is set the Access Flow approver to Manager, and that's it! Apono continuously refreshes it's IdP data, so when managers change in the organization, so does Apono's Access Flows.
Integrate your IdP with Apono. Read more .
Create a new Access Flow or edit an existing one.
Replace "Automatic" approval with "Manager" approval:
That's it! Managers will now be required to approve access requests before access is granted to the user.
Once the request is submitted, if the Access Flow is set for Manager approval, the user's manager will get a notification to approve the access:
The manager can review the request and decide whether to approve or reject it.
If the manager approves the access request, the requester will receive another message with the access details and instructions on how to log in to the requested resource.
Integrate Apono with PagerDuty for frictionless access management to developers on duty and on-call shifts
Access Per Ticket - Enrich context with ticket-based and shift-based access.
Automatic On-Call Access - Automate access contest to support On-Call shifts context.
Breakglass Access - Create Access Flows that support your immediate needs in case of an incident.
Justification - Add access justification from your existing assigned incident tickets.
Go to the .
Under User Information, look for PagerDuty and click Connect
In the Add Integration page, click Connect
Enter you PagerDuty details to log into your PagerDuty account
User Email
Come back to Apono - you should see PagerDuty active in the Integrations page.
Create new Access Flow or edit an existing one
Set Grantee as on-call shift member:
Select Shifts
Set Approver as on-call shift member:
Select Shifts
Create an integration to manage access for your HiBob users
HiBob is a Human Resources (HR) platform designed to streamline and optimize HR processes. This platform contains employee information and associated attributes.
By integrating with Apono, you can sync your HiBob users with Apono and create access flows based on attributes defined in the HiBob platform.
Item | Description |
---|
Follow these steps to complete the integration:
On the tab, click HiBob. The Add Integration page appears.
Enter an Integration Name. This is a unique, alphanumeric, user-friendly name used to identify the integration when constructing an access flow.
Enter the Domain of your HiBob organization.
(Optional) In the Custom Attributes field, enter the API ID value of the HiBob field in a comma-delimited list, such as root.email, work.startDate.
Apono automatically adds the Site, Department, and Is A Manager attributes.
Under Secret Store, enter the Service User ID and Service User Token.
Click Connect.
Option | Description |
---|---|
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
On-prem serving as a bridge between a GCP instance and Apono
providing the most features and dedicated account support
Unique account ID On the page, under Profile, copy the Customer ID.
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
with administrative access to the Okta platform
For Enterprise organizations, .
GitHub authentication Under Select scopes, click the checkboxes next to the following parent scopes. By selecting each parent scope, all the children scopes will also be selected:
for the GitHub instance. For the key, use token
. For the value, use the generated GitHub token.
"token": "<GITHUB_ACCESS_TOKEN>"
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal .
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
Value generated with the credentials of the user you create based on the connector you are using.
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separates the Apono web app from the environment for maximal .
(Optional) Fallback approver if no is found Follow these steps to define one or several integration owners:
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several :
Parameter | Value |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Setting | Description |
---|---|
Go to the page to see the most currently synced on-call schedules and members. This integration syncs every few minutes to keep shifts and members current.
Now that you have completed this integration, you can for Zenduty.
You can now to manage your VictorOps on-call permissions.
Go to the page to see the most currently synced on-call schedules and members. This integration syncs every few minutes to keep shifts and members current.
Now that you have completed this integration, you can for Opsgenie.
End users who need access to resources can create an access request in , , or .
You’ve successfully integrated Apono with your PagerDuty. You should see the new integration in your Connected Integrations. You can now use this integration in new or existing .
Navigate to the page.
Select 1 or more shifts
Select the 1 or more shifts
Now that you have completed this integration, you can create that grant your HiBob users access to your resources.
User / Password
Apono-created local user credentials
SSO Auth
Synced user credentials from IdP integration with Snowflake
Integration name
Your name for the integration. It will be used when managing Access Flows
Domain
Your organization's OneLogin base domain from the previous step
Client ID
The Client ID from OneLogin's API credentials created above
Client Secret
The Client Secret from OneLogin's API credentials created above
Group Mapping Strategy
Select how users from OneLogin should be mapped to Apono. The choices are: - Groups: Use the default OneLogin groups for mapping - Roles: Use OneLogin Roles to map users to groups
Custom Manager Attribute Name
If necessary, specify the name of the OneLogin attribute that contains users' manager names. For more information, see below
Apono Connector
On-prem connection serving as a bridge between an Azure AD instance and Apono NOTE: Be sure that the Groups Administrator and Privileged Role Administrator roles have been added to the connector.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Apono Connector
On-prem connection serving as a bridge between an OneLogin instance and Apono:
OneLogin Super User Account
OneLogin account that possesses user management permissions
OneLogin Organization Subdomain
Unique subdomain of your OneLogin instance Follow these steps to obtain the subdomain:
Log in to OneLogin.
Copy the subdomain from the URL in the address bar. Be sure to remove the protocol (https://
), onelogin.com
domain, and any suffix.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
Subdomain
OneLogin subdomain
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Integration Name
Unique, alphanumeric, user-friendly name used to identify this integration when constructing an access flow
LDAP Server URL
URL for the LDAP server The following are the default LDAP ports to append to the server URL:
389: No SSL
636: SSL
Self signed server or CA certificate
(Optional) Self-signed certificates or base64-encoded certificate of the self-signed LDAP server or CA certificate Leave this field blank unless the LDAP server does NOT have a properly-signed certificate with a public CA.
Domain
Domain of the LDAP Server Example: dc=example, dc=com
Groups Scope
(Optional) Scope of the groups When a scope is entered, Apono will only fetch groups within the specified scope. If this field is blank, Apono will fetch all groups within the LDAP directory.
Users Scope
(Optional) Scope of the users When a scope is entered, Apono will only fetch users within the specified scope. If this field is blank, Apono will fetch all users within the LDAP directory.
User Email Attribute
(Optional) Attribute of user emails When an attribute is defined, it enables Apono to determine which email to use. A user email attribute is helpful when users have multiple email addresses. If a user has multiple email addresses, each email address must exist within both the LDAP directory and Apono.
Custom Access Details
(Optional) Instructions explaining how to access this integration's resources Upon accessing an integration, a message with these instructions will be displayed to end users in the User Portal. The message may include up to 400 characters. To view the message as it appears to end users, click Preview.
Integration Owner
(Optional) Fallback approver if no resource owner is found Follow these steps to define one or several integration owners:
From the Attribute dropdown menu, select User or Group under the relevant identity provider (IdP) platform.
From the Value dropdown menu, select one or multiple users or groups.
NOTE: When Resource Owner is defined, an Integration Owner must be defined.
Resource Owner
(Optional) Group or role responsible for managing access approvals or rejections for the resource Follow these steps to define one or several resource owners:
Enter a Key name. This value is the name of the tag created in your cloud environment.
From the Attribute dropdown menu, select an attribute under the IdP platform to which the key name is associated. Apono will use the value associated with the key (tag) to identify the resource owner. When you update the membership of the group or role in your IdP platform, this change is also reflected in Apono.
NOTE: When this setting is defined, an Integration Owner must also be defined.
Zenduty API key |
API ID | Unique identifier for the VictorOps API You can find your API ID in the VictorOps portal under Integrations > API. |
API key |
Opsgenie API key |
HiBob Account Access | HiBob account with admin privileges |
HiBob Service Account ID & Token | You will input these values in the Secret Store section of the Apono UI. Be sure the service account has access permissions to all required fields. |
Additional HiBob Fields | (Optional) HiBob field values used by Apono as custom attributes to define access flows Follow these steps to obtain the attribute values:
Example: The HiBob API returns the following list. To add Start date to the Apono UI as a custom attribute, copy the |
Apono Premium
Apono plan providing the most features and dedicated account support
Google User Account
Google user account with the following admin API privileges:
Users: Read
Groups: Read
Microsoft Entra ID Admin Permission
Microsoft Entra ID account with admin privileges, such as User Administrator, that can grant permissions to an app
Admin User
Admin user on the LDAP server created for the Apono connector
Apono Connector
On-prem connection serving as a bridge between an LDAP server and Apono:
The connector must have Admin permissions to LDAP in order to manage JIT access to LDAP groups.
Apono Secret
Value generated with the credentials of the user you create Create your secret based on the LDAP user credentials and connector you are using.
Apono does not store credentials. The Apono Connector uses the secret to communicate with services in your environment and separate the Apono web app from the environment for maximal security.
LDAP Information
Information for the LDAP server:
Domain
LDAP Server URL
Self-signed server or CA certificate* Needed when the server does not have a properly signed certificate with a public CA
Groups Scope* Limits Apono to work with groups within the defined scope
User Scope* Limits Apono to work with users within the defined scope
User Email Attribute* Defines which user email to use
* This information is only necessary when the note is applicable.
for accessing Zenduty REST API
Key for accessing the VictorOps API You can find your API key in the VictorOps portal under Integrations > API. NOTE: You can either use the default API key or for the Apono integration.
with Opsgenie Read and Configuration access rights
HiBob
of all your company fields.