steampipe plugin install github

Table: github_organization_collaborator - Query GitHub Organization Collaborators using SQL

GitHub Organization Collaborators are users who have been granted access to contribute to a repository within an organization. Collaborators can be given different levels of access, from read-only to full admin rights. The status of their invitation, whether it's pending acceptance or has been accepted, is also tracked.

Table Usage Guide

The github_organization_collaborator table provides insights into the collaborators associated with GitHub repository within an organization. As a repository manager, you can use this table to explore details about collaborators, including their permissions and the status of their invitations. This can be particularly useful for managing access control and ensuring the appropriate level of access is granted to each collaborator.

Important Notes

  • You must specify the organization column in the where or join clause to query the table.

Examples

List all contributors of an organization

Determine the areas in which various users have permissions within a specific project. This is useful for project managers who need to understand the roles and access levels of different contributors to better manage project resources and responsibilities.

select
user_login,
permission
from
github_organization_collaborator
where
organization = 'turbot';
select
user_login,
permission
from
github_organization_collaborator
where
organization = 'turbot';

List all outside collaborators on a repository

Determine the areas in which outside collaborators have access within a specific repository. This is useful for ensuring appropriate access levels and identifying potential security risks.

select
user_login,
permission
from
github_organization_collaborator
where
organization = 'turbot'
and affiliation = 'OUTSIDE';
select
user_login,
permission
from
github_organization_collaborator
where
organization = 'turbot'
and affiliation = 'OUTSIDE';

List all collaborators with admins role

Identify instances where users have administrative access in a specific GitHub repository. This could be useful in managing access control and ensuring the right people have the appropriate permissions.

select
user_login,
permission
from
github_organization_collaborator
where
organization = 'turbot'
and permission = 'ADMIN';
select
user_login,
permission
from
github_organization_collaborator
where
organization = 'turbot'
and permission = 'ADMIN';

Schema for github_organization_collaborator

NameTypeOperatorsDescription
_ctxjsonbSteampipe context in JSON form.
affiliationtext=Affiliation filter - valid values 'ALL' (default), 'OUTSIDE', 'DIRECT'.
login_idtext=, !=, ~~, ~~*, !~~, !~~*Unique identifier for the user login.
organizationtext=The organization the member is associated with.
permissiontextThe permission the collaborator has on the repository.
repository_nametextThe name of the repository
sp_connection_nametext=, !=, ~~, ~~*, !~~, !~~*Steampipe connection name.
sp_ctxjsonbSteampipe context in JSON form.
user_loginjsonbThe login details of the collaborator.

Export

This table is available as a standalone Exporter CLI. Steampipe exporters are stand-alone binaries that allow you to extract data using Steampipe plugins without a database.

You can download the tarball for your platform from the Releases page, but it is simplest to install them with the steampipe_export_installer.sh script:

/bin/sh -c "$(curl -fsSL https://steampipe.io/install/export.sh)" -- github

You can pass the configuration to the command with the --config argument:

steampipe_export_github --config '<your_config>' github_organization_collaborator