-
Notifications
You must be signed in to change notification settings - Fork 1
WIP: OpenAI connector doc draft and index entries #21
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Open
mindymo
wants to merge
1
commit into
main
Choose a base branch
from
openai-connector
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
+210
−2
Open
Changes from all commits
Commits
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,203 @@ | ||
| --- | ||
| title: "Set up OpenAI connector" | ||
| og:title: "Set up OpenAI connector" | ||
| description: "ConductorOne provides identity governance and just-in-time provisioning for OpenAI. Integrate your OpenAI instance with ConductorOne to run user access reviews (UARs) and enable just-in-time access requests." | ||
| og:description: "ConductorOne provides identity governance and just-in-time provisioning for OpenAI. Integrate your OpenAI instance with ConductorOne to run user access reviews (UARs) and enable just-in-time access requests." | ||
| sidebarTitle: "OpenAI" | ||
| --- | ||
|
|
||
| <Warning> | ||
| **This connector is in beta.** This means it's undergoing ongoing testing and development while we gather feedback, validate functionality, and improve stability. Beta connectors are generally stable, but they may have limited feature support, incomplete error handling, or occasional issues. | ||
|
|
||
| We recommend closely monitoring workflows that use this connector and contacting our Support team with any issues or feedback. | ||
| </Warning> | ||
|
|
||
| ## Capabilities | ||
|
|
||
| | Resource | Sync | Provision | | ||
| | :--- | :--- | :--- | | ||
| | Account | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | | ||
| | Invitation | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | | | ||
| | Organization role | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | | ||
| | Project | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | | ||
| | API key | <Icon icon="square-check" iconType="solid" color="#65DE23"/> | | | ||
|
|
||
| **Additional functionality:** | ||
|
|
||
| <Icon icon="square-check" iconType="solid" color="#65DE23"/> Supports [automatic account provisioning and deprovisioning](/product/admin/account-provisioning) <br/> | ||
|
|
||
| ## Gather OpenAI configuration information | ||
|
|
||
| Configuring the connector requires you to pass in information from OpenAI. Gather these configuration details before you move on. | ||
|
|
||
| Here's the information you'll need: | ||
|
|
||
| - OpenAI Admin Key | ||
|
|
||
| See the OpenAI docs for information on how to acquire credentials: [View the documentation](https://platform.openai.com/docs/api-reference/administration) | ||
|
|
||
| ## Configure the OpenAI connector | ||
|
|
||
| <Warning> | ||
| To complete this task, you'll need: | ||
|
|
||
| - The **Connector Administrator** or **Super Administrator** role in ConductorOne | ||
| - Access to the set of OpenAI configuration information gathered by following the instructions above | ||
| </Warning> | ||
|
|
||
| <Tabs> | ||
| <Tab title="Cloud-hosted"> | ||
|
|
||
| **Follow these instructions to use a built-in, no-code connector hosted by ConductorOne.** | ||
|
|
||
| <Steps> | ||
| <Step> | ||
| In ConductorOne, navigate to **Admin** > **Connectors** and click **Add connector**. | ||
| </Step> | ||
| <Step> | ||
| Search for **OpenAI** and click **Add**. | ||
| </Step> | ||
| <Step> | ||
| Choose how to set up the new OpenAI connector: | ||
| - Add the connector to a currently unmanaged app (select from the list of apps that were discovered in your identity, SSO, or federation provider that aren't yet managed with ConductorOne) | ||
| - Add the connector to a managed app (select from the list of existing managed apps) | ||
| - Create a new managed app | ||
| </Step> | ||
| <Step> | ||
| Set the owner for this connector. You can manage the connector yourself, or choose someone else from the list of ConductorOne users. Setting multiple owners is allowed. | ||
| If you choose someone else, ConductorOne will notify the new connector owner by email that their help is needed to complete the setup process. | ||
| </Step> | ||
| <Step> | ||
| Click **Next**. | ||
| </Step> | ||
| <Step> | ||
| Find the **Settings** area of the page and click **Edit**. | ||
| </Step> | ||
| <Step> | ||
| Enter the configuration information from the previous section. | ||
| </Step> | ||
| <Step> | ||
| Click **Save**. | ||
| </Step> | ||
| <Step> | ||
| The connector's label changes to **Syncing**, followed by **Connected**. You can view the logs to ensure that information is syncing. | ||
| </Step> | ||
| </Steps> | ||
|
|
||
| **That's it!** Your OpenAI connector is now pulling access data into ConductorOne. | ||
|
|
||
| </Tab> | ||
| <Tab title="Self-hosted"> | ||
|
|
||
| **Follow these instructions to use the OpenAI connector, hosted and run in your own environment.** | ||
|
|
||
| When running in service mode on Kubernetes, a self-hosted connector maintains an ongoing connection with ConductorOne, automatically syncing and uploading data at regular intervals. This data is immediately available in the ConductorOne UI for access reviews and access requests. | ||
|
|
||
| ### Step 1: Set up a new OpenAI connector | ||
|
|
||
| <Steps> | ||
| <Step> | ||
| In ConductorOne, navigate to **Connectors** > **Add connector**. | ||
| </Step> | ||
| <Step> | ||
| Search for **Baton** and click **Add**. | ||
| </Step> | ||
| <Step> | ||
| Choose how to set up the new OpenAI connector: | ||
| - Add the connector to a currently unmanaged app (select from the list of apps that were discovered in your identity, SSO, or federation provider that aren't yet managed with ConductorOne) | ||
| - Add the connector to a managed app (select from the list of existing managed apps) | ||
| - Create a new managed app | ||
| </Step> | ||
| <Step> | ||
| Set the owner for this connector. You can manage the connector yourself, or choose someone else from the list of ConductorOne users. Setting multiple owners is allowed. | ||
| If you choose someone else, ConductorOne will notify the new connector owner by email that their help is needed to complete the setup process. | ||
| </Step> | ||
| <Step> | ||
| Click **Next**. | ||
| </Step> | ||
| <Step> | ||
| In the **Settings** area of the page, click **Edit**. | ||
| </Step> | ||
| <Step> | ||
| Click **Rotate** to generate a new Client ID and Secret. | ||
| Carefully copy and save these credentials. We'll use them in Step 2. | ||
| </Step> | ||
| </Steps> | ||
|
|
||
| ### Step 2: Create Kubernetes configuration files | ||
|
|
||
| Create two Kubernetes manifest files for your OpenAI connector deployment: | ||
|
|
||
| #### Secrets configuration | ||
|
|
||
| ```yaml | ||
| # baton-openai-secrets.yaml | ||
| apiVersion: v1 | ||
| kind: Secret | ||
| metadata: | ||
| name: baton-openai-secrets | ||
| type: Opaque | ||
| stringData: | ||
| # ConductorOne credentials | ||
| BATON_CLIENT_ID: <ConductorOne client ID> | ||
| BATON_CLIENT_SECRET: <ConductorOne client secret> | ||
|
|
||
| # OpenAI config | ||
| BATON_OPENAI_ADMIN_KEY: <OpenAI Admin API Key for organization management> | ||
|
|
||
| # Optional: include if you want ConductorOne to provision access using this connector | ||
| BATON_PROVISIONING: true | ||
| ``` | ||
|
|
||
| See the connector's README or run `--help` to see all available configuration flags and environment variables. | ||
|
|
||
| #### Deployment configuration | ||
|
|
||
| ```yaml expandable | ||
| # baton-openai.yaml | ||
| apiVersion: apps/v1 | ||
| kind: Deployment | ||
| metadata: | ||
| name: baton-openai | ||
| labels: | ||
| app: baton-openai | ||
| spec: | ||
| selector: | ||
| matchLabels: | ||
| app: baton-openai | ||
| template: | ||
| metadata: | ||
| labels: | ||
| app: baton-openai | ||
| baton: true | ||
| baton-app: openai | ||
| spec: | ||
| containers: | ||
| - name: baton-openai | ||
| image: ghcr.io/conductorone/baton-openai:latest | ||
| imagePullPolicy: IfNotPresent | ||
| env: | ||
| - name: BATON_HOST_ID | ||
| value: baton-openai | ||
| envFrom: | ||
| - secretRef: | ||
| name: baton-openai-secrets | ||
| ``` | ||
|
|
||
| ### Step 3: Deploy the connector | ||
|
|
||
| <Steps> | ||
| <Step> | ||
| Create a namespace in which to run ConductorOne connectors (if desired), then apply the secret config and deployment config files. | ||
| </Step> | ||
| <Step> | ||
| Check that the connector data uploaded correctly. In ConductorOne, click **Applications**. On the **Managed apps** tab, locate and click the name of the application you added the OpenAI connector to. OpenAI data should be found on the **Entitlements** and **Accounts** tabs. | ||
| </Step> | ||
| </Steps> | ||
|
|
||
| **That's it!** Your OpenAI connector is now pulling access data into ConductorOne. | ||
|
|
||
| </Tab> | ||
| </Tabs> | ||
|
|
||
|
|
||
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
🧩 Analysis chain
🏁 Script executed:
Repository: ConductorOne/docs
Length of output: 276
🏁 Script executed:
Repository: ConductorOne/docs
Length of output: 77
🌐 Web query:
OpenAI Admin Key documentation API reference💡 Result:
OpenAI’s Admin API Keys reference (endpoints, object schema, and curl examples) is in the API docs: it covers listing organization/project admin API keys, creating keys (POST), retrieving a key (GET), and deleting a key (DELETE), plus the Admin API key object fields (id, name, redacted_value, value, created_at, last_used_at, owner). Example endpoints and curl samples are shown in the docs. [1]
Additional Admin/API audit and Admin API usage guidance (who can create/use admin keys, audit logging notes) is in the Help Center. [2]
Sources:
Fix the inaccessible OpenAI documentation link.
The documentation link at line 36 returns HTTP 403 Forbidden and is not publicly accessible. Update to the correct, accessible URL for OpenAI's Admin API Key documentation.
🤖 Prompt for AI Agents