Questo contenuto non è disponibile nella lingua selezionata.
Chapter 6. Understanding identity provider configuration
The OpenShift Container Platform master includes a built-in OAuth server. Developers and administrators obtain OAuth access tokens to authenticate themselves to the API.
As an administrator, you can configure OAuth to specify an identity provider after you install your cluster.
6.1. About identity providers in OpenShift Container Platform Copia collegamentoCollegamento copiato negli appunti!
By default, only a kubeadmin
user exists on your cluster. To specify an identity provider, you must create a custom resource (CR) that describes that identity provider and add it to the cluster.
OpenShift Container Platform user names containing /
, :
, and %
are not supported.
6.2. Supported identity providers Copia collegamentoCollegamento copiato negli appunti!
You can configure the following types of identity providers:
Identity provider | Description |
---|---|
Configure the | |
Configure the | |
Configure the | |
Configure a | |
Configure a | |
Configure a | |
Configure a | |
Configure a | |
Configure an |
Once an identity provider has been defined, you can use RBAC to define and apply permissions.
6.3. Removing the kubeadmin user Copia collegamentoCollegamento copiato negli appunti!
After you define an identity provider and create a new cluster-admin
user, you can remove the kubeadmin
to improve cluster security.
If you follow this procedure before another user is a cluster-admin
, then OpenShift Container Platform must be reinstalled. It is not possible to undo this command.
Prerequisites
- You must have configured at least one identity provider.
-
You must have added the
cluster-admin
role to a user. - You must be logged in as an administrator.
Procedure
Remove the
kubeadmin
secrets:oc delete secrets kubeadmin -n kube-system
$ oc delete secrets kubeadmin -n kube-system
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.4. Identity provider parameters Copia collegamentoCollegamento copiato negli appunti!
The following parameters are common to all identity providers:
Parameter | Description |
---|---|
| The provider name is prefixed to provider user names to form an identity name. |
| Defines how new identities are mapped to users when they log in. Enter one of the following values:
|
When adding or changing identity providers, you can map identities from the new provider to existing users by setting the mappingMethod
parameter to add
.
6.5. Sample identity provider CR Copia collegamentoCollegamento copiato negli appunti!
The following custom resource (CR) shows the parameters and default values that you use to configure an identity provider. This example uses the htpasswd identity provider.
Sample identity provider CR
6.6. Manually provisioning a user when using the lookup mapping method Copia collegamentoCollegamento copiato negli appunti!
Typically, identities are automatically mapped to users during login. The lookup
mapping method disables this automatic mapping, which requires you to provision users manually. If you are using the lookup
mapping method, use the following procedure for each user after configuring the identity provider.
Prerequisites
-
You have installed the OpenShift CLI (
oc
).
Procedure
Create an OpenShift Container Platform user:
oc create user <username>
$ oc create user <username>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Create an OpenShift Container Platform identity:
oc create identity <identity_provider>:<identity_provider_user_id>
$ oc create identity <identity_provider>:<identity_provider_user_id>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Where
<identity_provider_user_id>
is a name that uniquely represents the user in the identity provider.Create a user identity mapping for the created user and identity:
oc create useridentitymapping <identity_provider>:<identity_provider_user_id> <username>
$ oc create useridentitymapping <identity_provider>:<identity_provider_user_id> <username>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow