Problemi e limitazioni noti
I problemi e le limitazioni noti includono l'impossibilità di limitare l'accesso ad alcuni prodotti del catalogo IBM Cloud® e i limiti massimi per la creazione di risorse IBM Cloud Identity and Access Management (IAM).
Per rivedere i limiti predefiniti per l'account, vedere IBM Cloud Limiti IAM.
Podman I token di autenticazione desktop non vengono aggiornati
Nelle versioni precedenti di Podman Desktop esiste un problema noto per cui i token di autenticazione scaduti non vengono aggiornati automaticamente. I token scaduti provocano ripetuti tentativi di autenticazione falliti con IAM. Se è stato
installato Podman Desktop, aggiornarlo alla versione 1.19.1 o successiva.
Podman è un prodotto di terze parti, non fornito o supportato da IBM. IBM non si assume alcuna responsabilità né garantisce alcuna prestazione particolare riguardo all'uso di Podman con IBM Cloud.
L'accesso Google non supporta gli ID federati
L'accesso ID Google non è disponibile per gli utenti con ID federati a causa dell'accesso aggiuntivo che potrebbe essere richiesto dal loro provider di identità esterno aziendale (IdP).
Le impostazioni di gestione del catalogo non si applicano ad alcuni prodotti IBM
Alcuni prodotti non sono influenzati dalle seguenti impostazioni di visibilità del catalogo:
- Disattivare la visibilità del catalogo IBM Cloud
- Esclusione dal catalogo di tutti i prodotti IBM Cloud
- Escludere tutti i prodotti di IBM Cloud dai vostri cataloghi privati
È possibile visualizzare e gestire le impostazioni di visibilità del catalogo andando su Gestione > Cataloghi > Impostazioni nella console IBM Cloud.
Gli utenti possono ancora creare le istanze dei prodotti seguenti utilizzando un'API o la CLI, indipendentemente dall'impostazione di visibilità del catalogo nell'account o nel catalogo privato:
- Block Storage for VPC
- Citrix Netscaler VPX
- Fortigate Security Appliance
- Hardware Firewall
- Hardware Firewall Dedicato
- IBM Cloud Backup for Classic
- IBM Cloud Bare Metal Servers
- IBM Cloud Block Storage for Classic
- IBM Cloud Container Registry
- IBM Cloud Content Delivery Network
- IBM Cloud Direct Link
- IBM Cloud Direct Link on Classic
- IBM Cloud Functions
- IBM Cloud Gateway Appliance
- Moduli di sicurezza hardware IBM Cloud
- IBM Cloud Kubernetes Service
- IBM Cloud Object Storage
- IBM Cloud Schematics
- IBM Cloud Programma di bilanciamento del carico
- IBM Cloud Virtual Servers
- Sottoreti e IP
- VPC (Virtual Private Cloud)
- Virtual Server for VPC
- VLAN
- VPN
- VPN for VPC
Limitazioni della politica basate su attributi
Le tag di gestione dell'accesso sono disponibili solo quando crei una politica di accesso nell'ambito di tutti i servizi abilitati a IAM. In tal caso, quando si abilita l'accesso basato su tag, non è possibile aggiungere altri attributi. Inoltre, quando basi la politica su un'ubicazione o un gruppo di risorse specifici, non è possibile aggiungere alcuna tag alla politica di accesso.
Limitazioni del ruolo IAM
La creazione di due ruoli con nomi diversi ma con lo stesso insieme di azioni non riesce. IAM tratta i ruoli con autorizzazioni identiche come duplicati, anche se i loro nomi sono unici.
Limitazioni della versione della politica di accesso
A partire dal 25 gennaio 2023, IAM supporta due versioni dell'API IAM Policy Management: /v2/policies e /v1/policies. v1/polices consente confronti di stringhe rispetto agli attributi nell'oggetto e alle
risorse di una politica. v2/polices introduce un nuovo schema che fornisce compatibilità funzionale con le versioni precedenti, consentendo confronti più complessi, operatori e condizioni basate sul tempo.
Confronti tra stringhe
La tabella seguente elenca gli operatori di confronto tra stringhe che si possono usare per costruire i criteri di accesso con la sintassi di /v2/policies. Per ulteriori informazioni su ciascuna versione, vedere Confronto tra le sintassi di /v1/policies e /v2/policies.
Per esempi di utilizzo degli operatori, vedere Condizioni basate sugli attributi delle risorse.
È possibile avere fino a 10 condizioni e nidificare fino a 2 livelli.
| Operatore | Descrizione |
|---|---|
stringEquals |
Confronto tra stringhe sensibile alle maiuscole e minuscole. I valori booleani o numerici vengono convertiti in una stringa prima del confronto. |
stringMatch |
La corrispondenza di stringa sensibile alle maiuscole viene eseguita tra il modello e la stringa di destinazione utilizzando un asterisco ( * ), un punto interrogativo ( ? ), entrambi o nessuno (come il valore
letterale). Un asterisco (*) rappresenta qualsiasi sequenza di zero o più caratteri nella stringa, mentre un punto interrogativo (?) rappresenta qualsiasi singolo carattere. È anche possibile esprimere un
asterisco * e un punto interrogativo ? come valore letterale, racchiudendo ciascuno di essi all'interno di due serie di parentesi graffe {{}}. |
stringExists |
Booleano dove true indica che la stringa deve essere presente e può essere vuota. false indica che la stringa non deve essere presente. |
stringEqualsAnyOf |
Stringa esatta sensibile alle maiuscole e minuscole che corrisponde a una qualsiasi stringa di un array di stringhe. Limite di 10 valori. |
stringMatchAnyOf |
Stringa sensibile alle maiuscole e minuscole che corrisponde a una qualsiasi stringa di un array di stringhe. I valori della stringa possono includere un asterisco ( * ), un punto interrogativo ( ? ), entrambi
o nessuno (come il valore letterale). Un asterisco (*) rappresenta qualsiasi sequenza di zero o più caratteri nella stringa, mentre un punto interrogativo (?) rappresenta qualsiasi singolo carattere. È anche
possibile esprimere un asterisco * e un punto interrogativo ? come valore letterale, racchiudendo ciascuno di essi all'interno di due serie di parentesi graffe {{}}. Limite di 10 valori. |
Ad esempio, la seguente istruzione contiene un elemento operator che usa stringEquals per indicare che l'ID account e il nome servizio devono corrispondere esattamente all'elemento value. L'istruzione
contiene anche un elemento operator che utilizza stringMatch per specificare un pattern di denominazione per argomenti Event Streams che potresti utilizzare per organizzare l'accesso a queste specifiche risorse.
In questo modo, puoi assegnare una politica a tutti gli argomenti nel tuo account che iniziano con messagehub-topic-dev.
"resource": {
"attributes": [
{
"operator": "stringEquals",
"value": "0aeab68aabd14d89bd72e4330150710a0",
"key": "accountId"
},
{
"value": "messagehub",
"operator": "stringEquals",
"key": "serviceName"
},
{
"value": "messagehub-topic-dev*",
"operator": "stringMatch",
"key": "resource"
}
]
}
Le politiche di autorizzazione sono attualmente supportate solo in /v1/policies.
Verifica di una versione di politica nella console
Le condizioni basate sugli attributi di risorse e temporali per le politiche di accesso IAM utilizzano la sintassi /v2/policies. Le politiche che utilizzano la sintassi /v1/policies non possono aggiungere condizioni
basate sul tempo e sulle risorse. Per aggiornare /v1/policies a /v2/policies utilizzando l'API, vedi Aggiornamento di /v1/policies a /v2/policies con condizioni utilizzando l'API.
Per verificare se è possibile aggiungere queste condizioni a una politica esistente nella console, completare la seguente procedura.
- Vai su Gestisci > Accesso (IAM).
- Selezionare Utenti, Profili attendibili, ID servizio o Gruppi di accesso, a seconda della politica che si desidera controllare.
- Selezionare un utente specifico, un profilo attendibile, un ID servizio o un gruppo di accesso.
- Vai a Access > Access policies.
- Fare clic su una politica.
/v1/policiessono indicati dalla notifica seguente:
Conditions unavailable for v1 policies
- (Facoltativo) Per aggiungere condizioni a una politica che utilizza la sintassi
/v1/policies, eliminare la politica originale e crearne una nuova. Nella console, le nuove politiche utilizzano la sintassi/v2/policies.
Aggiornamento di /v1/policies a /v2/policies con le condizioni utilizzando l'API
Le politiche che utilizzano la sintassi /v1/policies non possono aggiungere condizioni basate sul tempo e sulle risorse. Per aggiornare la versione, puoi utilizzare PUT /v2/policies/{id} con l'ID V1 e tutte le condizioni che vuoi includere. Per ulteriori informazioni, consultare /v2/policies.
Confronto tra la sintassi /v1/policies e /v2/policies
La politica in ogni esempio concede a un utente l'accesso al servizio di fatturazione con il ruolo Editor. L'esempio /v2/policies include condizioni temporanee basate sul tempo, indicate dal parametro "conditions".
Quando si modificano, si creano ed eliminano le politiche, utilizzare la versione API corrispondente.
/v1/policies
{
"type": "access",
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Editor"
}
],
"resources": [
{
"attributes": [
{
"name": "accountId",
"value": "000c49bc2724a07000010b1da94c4d0"
},
{
"name": "serviceName",
"value": "billing"
}
]
}
],
"subjects": [
{
"attributes": [
{
"name": "iam_id",
"value": "IBMid-00000AV0S0"
}
]
}
]
}
Quando elenchi le politiche con /v1/policies l'API restituisce /v1/ e una politica segnaposto per ogni politica /v2/ presente nell'account. Per ulteriori informazioni, consultare /v1/policies, che restituisce un segnaposto per le politiche /v2/ dell'account
/v2/policies
{
"type": "access",
"control": {
"grant": {
"roles": [
{
"role_id": "crn:v1:bluemix:public:iam::::role:Editor"
}
]
}
},
"resource": {
"attributes": [
{
"operator": "stringEquals",
"value": "000c49bc2724a07000010b1da94c4d0",
"key": "accountId"
},
{
"value": "billing",
"operator": "stringEquals",
"key": "serviceName"
}
]
},
"rule": {
"operator": "and",
"conditions": [
{
"key": "{{environment.attributes.current_date_time}}",
"operator": "dateTimeGreaterThanOrEquals",
"value": "2023-01-01T09:00:00+00:00"
},
{
"key": "{{environment.attributes.current_date_time}}",
"operator": "dateTimeLessThanOrEquals",
"value": "2023-01-06T17:59:59+00:00"
}
]
},
"pattern": "time-based-conditions:once",
"subject": {
"attributes": [
{
"key": "iam_id",
"operator": "stringEquals",
"value": "IBMid-00000AV0S0"
}
]
}
}
/v1/policies restituisce un segnaposto per le politiche /v2/
Quando elenchi le politiche con /v1/policies l'API restituisce /v1/ e una politica segnaposto per ogni politica /v2/ presente nell'account. I segnaposto indicano la presenza di ulteriori politiche nell'account
mentre rispettano lo schema /v1/. Per visualizzare il contenuto completo di una politica /v2/, elencare le politiche utilizzando /v2/policies o richiamare la singola politica utilizzando GET: v2/policies/<ID>.
Ad esempio, consultare la seguente politica segnaposto:
{
"id": "33b901fa-8ec5-4432-a2e6-24b6a212c20a",
"type": "access",
"description": "**This is a unsupported policy version placeholder, to view the full content, please call GET with provided href**",
"subjects": [{
"attributes": [{
"name": "iam_id",
"value": "unsupported version"
}]
}],
"roles": [{
"role_id": "crn:v1:bluemix:public:iam::::role:UnsupportedVersion",
"display_name": "Unsupported Version",
"description": "**This is a unsupported policy version placeholder, to view the full content, please call GET with provided href**"
}],
"resources": [{
"attributes": [{
"name": "accountId",
"value": "000c49bc2724a07000010b1da94c4d0"
}]
}],
"href": "https://iam.cloud.ibm.com/v2/policies/88b901fa-6ec5-888-a2e6-24b6a212c20a"
}
Servizi impattati dalla limitazione delle interazioni con l'identità esterna
La limitazione delle interazioni con le identità esterne richiede che gli utenti con un criterio di accesso IAM alle risorse dell'account dell'utente accedano a tali risorse solo se autenticati con il proprio account o con un account dell'elenco consentito. I seguenti servizi, o alcune delle loro caratteristiche, potrebbero non funzionare come previsto se l'impostazione delle interazioni con l'identità esterna è impostata sulla modalità limitata:
- IBM Cloud Satellite
- IBM Cloud Object Storage- i secchi ad accesso pubblico non saranno accessibili
- IBM Cloud Code Engine
- IBM Cloud® DevOps Insights
- Rapporto di accesso (generazione di un rapporto di accesso alle risorse CSV o JSON)
Per ulteriori informazioni su questa impostazione, vedere Gestione delle interazioni con le identità esterne.