0 / 0
Go back to the English version of the documentation
Ověřování pro programový přístup
Last updated: 18. 8. 2023
Ověřování pro programový přístup

Chcete-li použít produkt Watson Machine Learning s knihovnou klienta Python nebo s rozhraním API služby REST, musíte se ověřit, abyste zabezpečili svou práci. Zde se dozvíte o různých způsobech ověření a o tom, jak je použít na službu dle vašeho výběru.

Produkt IBM Cloud® Identity and Access Management (IAM) se používá k provádění ověřených požadavků na veřejné služby produktu IBM Watson™ . Pomocí zásad přístupu IAM můžete přiřadit přístup k více než jednomu prostředku z jednoho klíče. Kromě toho může mít uživatel, ID služby a instance služby více klíčů rozhraní API.

přehled zabezpečení

Podívejte se do sekce, která popisuje vaše potřeby zabezpečení.

Údaje pověření pro ověřování

Tyto podmínky se vztahují k požadavkům na zabezpečení popsaným v tomto tématu.

  • Klíče rozhraní API vám umožňují snadno ověřit, když používáte klienta nebo rozhraní API Python a lze je použít v rámci více služeb. Klíče rozhraní API jsou považovány za důvěrné, protože se používají k udělení přístupu. Zacházejte se všemi klíči rozhraní API jako heslo, protože kdokoli s klíčem vašeho rozhraní API může přistupovat k vašim službám.
  • Token IAM je token ověření, který je nezbytný pro přístup ke službám IBM Cloud . Token můžete generovat pomocí svého klíče rozhraní API v požadavku tokenu. Podrobnosti o použití tokenů IAM najdete v tématu Ověřování na rozhraní API produktu Watson Machine Learning.

Chcete-li provést ověření ke službě prostřednictvím svého rozhraní API, předejte svá pověření k rozhraní API. Token nositele můžete předat buď v záhlaví autorizace, nebo jako klíč rozhraní API.

Generování klíče rozhraní API

Chcete-li generovat klíč rozhraní API z uživatelského účtu IBM Cloud , přejděte na téma Správa přístupu a uživatelů-Klíče rozhraní API a vytvořte nebo vyberte klíč rozhraní API pro váš uživatelský účet.

Ověřit pomocí tokenu IAM

Tokeny IAM jsou dočasná bezpečnostní pověření, která jsou platná po dobu 60 minut. Po vypršení platnosti tokenu můžete vygenerovat nový. Tokeny mohou být užitečné pro dočasný přístup k prostředkům. Další informace naleznete v tématu Generování tokenu IAM produktu IBM Cloud pomocí klíče rozhraní API.

Získání tokenu na úrovni služeb

Ověření lze provést také pomocí tokenu na úrovni služeb. Chcete-li generovat token servisní úrovně, postupujte takto:

  1. Prohlédněte si instrukce IBM Cloud pro vytvoření ID služby.
  2. Vygenerujte klíč rozhraní API pro toto ID služby.
  3. Otevřete prostor, ve kterém plánujete uchovat vaše implementovatelná aktiva.
  4. Na kartě Řízení přístupu přidejte ID služby a přiřaďte přístupovou roli Administrátor nebo Editor.

Token na úrovni služby můžete použít s požadavky na přidělení rozhraní API.

Rozhraní

 

Klient Python

Další informace naleznete na webu: Watson Machine Learning Python client externí odkazy

Chcete-li vytvořit instanci objektu klienta Watson Machine Learning Python , musíte předat svá pověření klientovi rozhraní API Watson Machine Learning .

wml_credentials = {
                  "apikey":"123456789",
                  "url": " https://HIJKL"
}
from ibm_watson_machine_learning import APIClient
wml_client = APIClient(wml_credentials)
Pozn.:

Přestože výslovně neposkytnete instance_id, bude vyzvedne z přidruženého prostoru nebo projektu pro účely fakturace. Podrobnosti o plánech a účtování služeb Watson Machine Learning najdete v tématu Plány produktu Watson Machine Learning a využití běhového prostředí.

Příklady postupu ověření a následného hodnocení modelu pomocí klienta Python naleznete v části Ukázkové notebooky .

Rozhraní REST API

Další informace naleznete v dokumentu Watson Machine Learning REST API externí odkazy .

Chcete-li použít rozhraní Watson Machine Learning REST API, musíte získat token produktu IBM Cloud Identity and Access Management (IAM). V tomto příkladu byste zadali klíč rozhraní API na místo vzorového klíče.

Příklad cURL

curl -k -X POST \
--header "Content-Type: application/x-www-form-urlencoded" \
--header "Accept: application/json" \
--data-urlencode "grant_type=urn:ibm:params:oauth:grant-type:apikey" \
--data-urlencode "apikey=123456789" \
"https://iam.cloud.ibm.com/identity/token"

Získaný token IAM musí mít předponu se slovem Bearera musí být předán v záhlaví autorizace pro volání rozhraní API.

Příklad Python

import requests

# Paste your Watson Machine Learning service apikey here

apikey = "123456789"

# Get an IAM token from IBM Cloud
url     = "https://iam.cloud.ibm.com/identity/token"
headers = { "Content-Type" : "application/x-www-form-urlencoded" }
data    = "apikey=" + apikey + "&grant_type=urn:ibm:params:oauth:grant-type:apikey"
response  = requests.post( url, headers=headers, data=data, auth=( apikey )
iam_token = response.json()["access_token"]

Příklad Node.js

var btoa    = require( "btoa" );
var request = require( 'request' );

// Paste your Watson Machine Learning service apikey here
var apikey = "123456789";

// Use this code as written to get an access token from IBM Cloud REST API
//
var IBM_Cloud_IAM_uid = "bx";
var IBM_Cloud_IAM_pwd = "bx";

var options = { url     : "https://iam.cloud.ibm.com/identity/token",
                headers : { "Content-Type"  : "application/x-www-form-urlencoded",
                            "Authorization" : "Basic " + btoa( IBM_Cloud_IAM_uid + ":" + IBM_Cloud_IAM_pwd ) },
                body    : "apikey=" + apikey + "&grant_type=urn:ibm:params:oauth:grant-type:apikey" };

request.post( options, function( error, response, body )
{
    var iam_token = JSON.parse( body )["access_token"];
} );

Nadřízené téma: Správa prediktivních implementací

Generative AI search and answer
These answers are generated by a large language model in watsonx.ai based on content from the product documentation. Learn more