Intégrer un courtier
Ce tutoriel vous explique comment intégrer un courtier que vous pouvez utiliser pour connecter un plan tarifaire à votre service tiers. Lorsque des utilisateurs créent des instances de votre service à partir du catalogue IBM Cloud®, le courtier gère le cycle de vie de ces instances et connecte le service aux applications que les développeurs construisent.
Ce tutoriel est l'un des cinq d'une série qui montre comment monter à bord et publier un service tiers vers IBM Cloud. Au fur et à mesure que vous suivez le tutoriel, adaptez chaque étape aux besoins de votre produit.
Avant de commencer
Avant de commencer l'intégration de votre courtier, vous devez suivre l'étape suivante :
- Pour un exemple de création de courtier, voir l'application de référence Open Service Broker et l'API IBM Cloud Open Service Broker.
Schémas d'authentification pour les courtiers
Lorsque vous ajoutez un courtier dans le Partner Center, vous pouvez choisir parmi les trois schémas d'authentification suivants pour vérifier l'identité du client qui interagit avec le courtier :
- Porteur CRN
- Dans cette méthode, le contrôleur de ressources génère un jeton IAM en utilisant le nom de la ressource en nuage (CRN) du courtier auquel il se connecte. Ce jeton inclut le CRN du courtier en tant qu'identité dans le JWT. Lorsque le jeton est utilisé pour appeler un service, l'application du courtier du service autorise la demande en vérifiant que l'identité de l'appelant correspond au CRN attendu du courtier. Cette méthode ne nécessite pas de clé API ou de rotation de clé API. Le jeton IAM doit être vérifié par le courtier avant d'autoriser la demande. Le jeu de clés utilisé pour la vérification est disponible à l'adresse suivante https://iam.cloud.ibm.com/identity/keys. Voir l'exemple suivant pour un jeton CRN :
{
"iam_id": "crn-crn:v1:bluemix:public:resource-controller::a/f71446b6474d45bf81196da45de13940::resource-broker:1f4a9711-e359-4e00-8ad3-c8bfd38446b3",
"id": "crn-crn:v1:bluemix:public:resource-controller::a/f71446b6474d45bf81196da45de13940::resource-broker:1f4a9711-e359-4e00-8ad3-c8bfd38446b3",
"realmid": "crn",
"jti": "86912b78-4b25-482e-9876-665f6cf97978",
"identifier": "crn:v1:bluemix:public:resource-controller::a/f71446b6474d45bf81196da45de13940::resource-broker:1f4a9711-e359-4e00-8ad3-c8bfd38446b3",
"sub": "crn:v1:bluemix:public:resource-controller::a/f71446b6474d45bf81196da45de13940::resource-broker:1f4a9711-e359-4e00-8ad3-c8bfd38446b3",
"sub_type": "CRN",
"authn": {
"sub": "crn:v1:bluemix:public:resource-controller::a/f71446b6474d45bf81196da45de13940::resource-broker:1f4a9711-e359-4e00-8ad3-c8bfd38446b3",
"iam_id": "crn-crn:v1:bluemix:public:resource-controller::a/f71446b6474d45bf81196da45de13940::resource-broker:1f4a9711-e359-4e00-8ad3-c8bfd38446b3",
"sub_type": "CRN"
},
"account": {
"valid": true,
"bss": "f71446b6474d45bf81196da45de13940",
"frozen": true
},
"iat": 1746518443,
"exp": 1746520239,
"iss": "https://iam.cloud.ibm.com/identity",
"grant_type": "urn:ibm:params:oauth:grant-type:iam-authz",
"scope": "ibm openid resource-controller",
"client_id": "resource-controller",
"acr": 0,
"amr": []
}
- Basic
-
L'authentification de base consiste à fournir un nom d'utilisateur et un mot de passe, qui sont transmis au courtier, lequel valide l'identité de l'appelant et vérifie si le justificatif d'identité est valide. Cette méthode est moins sûre et n'est pas recommandée car les informations d'identification sont envoyées de manière répétée à chaque demande.
Basic and bearer authentication schemas are deprecated and will no longer be supported in the future due to security reasons. Use bearer CRN authentication for continued access instead.
- Porteur
-
Dans cette méthode, le contrôleur de ressources génère un jeton IAM à l'aide de la clé API fournie. Il s'agit d'une méthode d'authentification basée sur un jeton où
apikey
est utilisé comme nom d'utilisateur et la valeur réelle de la clé API est utilisée comme mot de passe. Le contrôleur de ressources échange cette clé API contre un jeton JWT, qui est ensuite envoyé au courtier. Le courtier valide l'authenticité du jeton et vérifie l'identité de l'appelant avant d'autoriser la demande. Le jeton IAM doit être vérifié par le courtier avant d'autoriser la demande. Le jeu de clés utilisé pour la vérification est disponible à l'adresse suivante https://iam.cloud.ibm.com/identity/keys. Voir l'exemple suivant pour un jeton d'identification de service :
{
"iam_id": "iam-ServiceId-c1e45eff-8df9-49b7-af73-d9c6e6f99a69",
"id": "iam-ServiceId-c1e45eff-8df9-49b7-af73-d9c6e6f99a69",
"realmid": "iam",
"jti": "c4810836-2467-49e6-9612-ad3595de4eb1",
"identifier": "ServiceId-c1e45eff-8df9-49b7-af73-d9c6e6f99a69",
"name": "My Service ID",
"sub": "ServiceId-c1e45eff-8df9-49b7-af73-d9c6e6f99a69",
"sub_type": "ServiceId",
"authn": {
"sub": "ServiceId-c1e45eff-8df9-49b7-af73-d9c6e6f99a69",
"iam_id": "iam-ServiceId-c1e45eff-8df9-49b7-af73-d9c6e6f99a69",
"sub_type": "ServiceId",
"name": "My Service ID"
},
"account": {
"valid": true,
"bss": "f71446b6474d45bf81196da45de13940",
"frozen": true
},
"iat": 1746519454,
"exp": 1746523054,
"iss": "https://iam.cloud.ibm.com/identity",
"grant_type": "urn:ibm:params:oauth:grant-type:apikey",
"scope": "ibm openid",
"client_id": "default",
"acr": 1,
"amr": [
"pwd"
]
}
Ajouter votre courtier
-
Dans la console IBM Cloud, cliquez sur l'icône Menu de navigation
> Centre Partenaires > Mes produits.
-
Sélectionnez le service que vous souhaitez intégrer.
-
Dans la page Courtiers, cliquez sur Ajouter un courtier.
-
Saisissez le nom programmatique de votre courtier et l' URL à laquelle il est possible de le joindre.
-
Sélectionnez le schéma d'authentification à utiliser pour vérifier l'identité du client qui interagit avec le courtier. Vous pouvez choisir entre les schémas CRN de base, porteur et porteur.
Les schémas d'authentification de base et de support sont obsolètes et ne seront plus pris en charge à l'avenir pour des raisons de sécurité. Utilisez plutôt l'authentification CRN du porteur pour l'accès continu.
-
Sélectionnez le type de courtier.
-
Saisissez le nom d'utilisateur pour l'authentification du courtier. Si vous avez sélectionné l'authentification du porteur à l'étape précédente,
apikey
est automatiquement saisi pour vous en tant que nom d'utilisateur.Pour le schéma d'authentification CRN du porteur, les informations relatives au nom d'utilisateur et au mot de passe ne sont pas nécessaires.
-
Saisissez le mot de passe pour l'authentification du courtier. Si vous avez sélectionné l'authentification par porteur, entrez la clé API.
-
Cliquez sur Sauvegarder.
Configuration de la connexion unique IBM Cloud
Vous pouvez activer la connexion unique IBM Cloud pour votre service et ajouter les URL de redirection pouvant gérer l'authentification et l'autorisation.
-
Dans la console IBM Cloud, cliquez sur l'icône Menu de navigation
> Centre Partenaires > Mes produits.
-
Sélectionnez le service que vous souhaitez intégrer.
-
Sur la page Brokers, cliquez sur Set up IBM Cloud SSO.
-
Ajoutez des membres d'équipe en tant que propriétaires de l'ID client. Les propriétaires peuvent afficher et éditer l'ID client.
Vous ne pouvez pas vous retirer de la liste des propriétaires.
-
Cliquez sur Ajouter pour ajouter une URL redirection.
-
Entrez l' URL redirection qui peut gérer l'authentification et l'autorisation de votre service.
-
Cliquez sur Sauvegarder.
-
Copiez votre ID client et votre secret.
Une fois que vous avez fermé le panneau SSO IBM Cloud, vous ne pouvez plus afficher votre secret. Si le secret est perdu, vous devez créer un nouvel ID client.
-
Cliquez sur Terminé.
Vous devez copier ou afficher le secret pour effectuer cette action.
Etapes suivantes
Vous pouvez maintenant ajouter votre Plan de tarification.