Commit Graph
16 Commits
Author SHA1 Message Date
Sakshyam Shah 82add5c7ef support awsic plugin --assume-role-arn flag (#53403)
* support awsic plugin assume-role-arn flag

* review comments:
- fix command typo useSystemCredentials -> use-system-credentials
- explain why use-system-credentials is required
2025-03-26 21:47:22 +00:00
Trent ClarkeandZac Bergquist 2a0b76e749 Adds AWS Role ARN to IC Integration settings (#53024)
* Adds AWS Role ARN to IC Integration settings

The Identity Center integration needs to be able to assume an AWS role
when using the ambient system credentials. This patch updates the IC
integration protobuf definition to include the role ARN, by refactoring
the settings block to replace the CredentialSource enumeration with a
`Credentials` type containing a `oneof` union of System and OIDC credential blocks.

The CredentalSource value is preserved for backwards compatibility with previous
Teleport releases.

This patch includes
- the updated protobuf message and generated types
- update tests, etc
- updated `tctl` to handle new plugin settings structure

Chagnges required to actually use this information are coming in a later PR.

* Apply suggestions from code review

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>

* Rename role ARN

---------

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2025-03-13 15:14:12 +00:00
Hugo Shaka 59ded01eb3 Add install script using teleport-update and oneoff.sh (#52155) 2025-02-21 15:22:43 +00:00
8f02eb11df Add tctl plugins install awsic (#51239)
* Adds `tctl plugins install awsic`

Adds a comand-line installation tool for the AWS Identity Center integration.

Co-authored-by: Marek Smoliński <marek@goteleport.com>
Co-authored-by: Trent Clatke <trent@goteleport.com>

* Apply suggestions from code review

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>

---------

Co-authored-by: Trent Clatke <trent@goteleport.com>
Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2025-02-19 22:29:29 +00:00
rosstimothy 2cced62805 Fix violations of non-constant format strings linter (#51812)
Depends on https://github.com/gravitational/teleport.e/pull/6006.
Now that we are compliant, the ignore rule was removed from the
golangci-lint config to prevent future regressions.
2025-02-04 16:43:35 +00:00
Tiago SilvaandGavin Frazar b61e70ea19 netiq: add plugin install prompt (#51502)
* netiq: add plugin install prompt

This PR adds the plugin prompt code to read the required parameters to
create the netiq plugin.

Part of https://github.com/gravitational/access-graph/issues/634

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>

* add license

* Update netiq.go

Co-authored-by: Gavin Frazar <gavin.frazar@goteleport.com>

* Update netiq.go

Co-authored-by: Gavin Frazar <gavin.frazar@goteleport.com>

* Update netiq.go

Co-authored-by: Gavin Frazar <gavin.frazar@goteleport.com>

* handle review comments

* Apply suggestions from code review

Co-authored-by: Gavin Frazar <gavin.frazar@goteleport.com>

* Apply suggestions from code review

Co-authored-by: Gavin Frazar <gavin.frazar@goteleport.com>

* consolidate prompt methods

---------

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
Co-authored-by: Gavin Frazar <gavin.frazar@goteleport.com>
2025-01-29 17:57:26 +00:00
Vadym Popov 45f29a8330 Reorganize tctl commands to not require an auth client by default (#48894)
* Reorganize tctl commands to have commands not required auth client

* Replace auth client with lazy loading approach

* Fix linter warning

* Replace camel case in import alias
Replace logrus to use slog

* Rename close function

* Refactor plugin commands to use interface of auth client and plugin client
Code review changes

* Refactor workload identity commands

* Add access to global config for the commands

* Add test checking all tctl commands match process

* Fix golangci-lint warnings
2024-12-17 20:54:12 +00:00
Steven Martin 124cbf11a1 update entra id refs in tctl (#48791) 2024-11-12 10:20:37 +00:00
Tiago Silva 0ebaf189f8 [entraid] store entra appId in plugin settings (#48754)
* [entraid] store entra `appId` in plugin settings

This PR stores the Entra ID appID of the application used for SSO in Entra ID plugin settings.
This field filled in a best effort scenario and might be empty for old Entra Plugins.
Newly created plugins will make the field mandatory.

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>

* handle code review comments

---------

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
2024-11-12 10:00:47 +00:00
Tiago Silva 5e892d94cc [entraid] add manual flag to disable automatic entraID aplication setup (#48564)
This PR adds a flag that disables Entra ID application setup. This aims customers that prefer to manually configure the applications and permissions instead of relying on  `tctl` to automatically perform that.

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
2024-11-07 13:42:51 +00:00
Tiago Silva ee1726ef68 [entraid] ask for mfa reuse during entraid plugin setup (#48493)
This PR fixes a bug where MFA for admin actions prevents creating
multiple objects during the entra id setup guide.

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
2024-11-06 11:02:12 +00:00
Tiago SilvaandMarco Dinis 768a0bd684 [entraid] add setup script for offline clusters. (#47863)
* [entraid] add setup script for offline clusters.

This PR adds a cli configuration for Entra ID where it's possible to default to system credentials instead of relying on OIDC for authentication in EntraID. OIDC is not always a possibility specially when the cluster is private and not internet acessible.

The UX is the following:

```text

Step 1: Run the Setup Script

1. Open **Azure Cloud Shell** (Bash) using **Google Chrome** or **Safari** for the best compatibility.
2. Upload the setup script using the **Upload** button in the Cloud Shell toolbar.
3. Once uploaded, execute the script by running the following command:
   $ bash entraid.sh

**Important Considerations**:
- You must have **Azure privileged administrator permissions** to complete the integration.
- Ensure you're using the **Bash** environment in Cloud Shell.
- During the script execution, you'll be prompted to run 'az login' to authenticate with Azure. **Teleport** does not store or persist your credentials.
- **Mozilla Firefox** users may experience connectivity issues in Azure Cloud Shell; using Chrome or Safari is recommended.

Once the script completes, type 'continue' to proceed, 'exit' to quit: continue

Step 2: Input Tenant ID and Client ID

With the output of Step 1, please copy and paste the following information:
Enter the Tenant ID: 1056b571-0390-4b08-86c8-2edba8d9ae79
Enter the Client ID: 1056b571-0390-4b08-86c8-2edba8d9ae79

Successfully created EntraID plugin "name".
```

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>

* move function to api

* handle code review comments

* Apply suggestions from code review

Co-authored-by: Marco Dinis <marco.dinis@goteleport.com>

* fix url

* enable group claims

* add godoc

* handle code review comments

* fix gomod

---------

Signed-off-by: Tiago Silva <tiago.silva@goteleport.com>
Co-authored-by: Marco Dinis <marco.dinis@goteleport.com>
2024-10-29 17:51:58 +00:00
Andrew LeFevreandAndrew LeFevre 555264fc79 hide the flag that allows users to pass their own Okta SCIM auth token to tctl (#44474)
Co-authored-by: Andrew LeFevre <Andrew LeFevre>
2024-08-05 11:44:08 +00:00
e4a64d3815 update plugin command descriptions (#44731)
* update plugin command descriptions

* verbiage update for logging plugin clean up

Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>

---------

Co-authored-by: Steven Martin <stevenmartin@stevens-mbp.lan>
Co-authored-by: Zac Bergquist <zac.bergquist@goteleport.com>
2024-07-30 15:39:23 +00:00
Zac Bergquist 80c1c72034 Fix capitalization of Okta (#43617)
Okta is not an acronym
2024-06-27 22:15:47 +00:00
Marek Smoliński e6918de207 OTKA SCIM only integration (#41814) 2024-05-23 13:40:56 +00:00