> For the complete documentation index, see [llms.txt](https://docs.devolutions.net/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.devolutions.net/pam/it/pam-with-devolutions-server/getting-started/custom-pam-providers/create-a-custom-pam-provider-in-devolutions-server.md).

# Creare un provider PAM personalizzato in Devolutions Server

I provider PAM personalizzati vengono creati e gestiti tramite modelli. I modelli sfruttano il lavoro di Devolutions e della community per creare provider, riducendo la necessità per gli utenti di crearli da zero.

Un modello è un oggetto all'interno di Devolutions PAM che funge da struttura per la creazione di un provider PAM personalizzato.

I modelli guidano Devolutions Server nella mappatura dei parametri e degli output degli script di azione alle proprietà interne di Devolutions PAM, facilitando l'inserimento e lo scambio di informazioni. I modelli consentono agli utenti di popolare le proprietà di un identity provider per creare un provider.

Crei un modello personalizzato o importi uno dei modelli già esistenti.

{% hint style="warning" %}
Il [WinRM](https://docs.devolutions.net/server/it/knowledge-base/how-to-articles/enable-winrm-and-add-trusted-hosts) deve essere abilitato affinché ciò funzioni.
{% endhint %}

### Creare un modello PAM personalizzato

Una volta creati gli [script di azione](/pam/it/concepts/action-script.md), il passo successivo è sviluppare il modello PAM personalizzato in Devolutions Server.

1. In Devolutions Server, vada in ***Amministrazione – Accesso privilegiato – Provider***.
2. Clicchi su ***Modelli PAM personalizzati***.
3. Clicchi ***Aggiungi*** per creare un nuovo modello.
4. In ***Generale***, fornisca un ***Nome*** (obbligatorio) e una ***Descrizione*** (facoltativa) per il suo nuovo modello. È anche possibile modificare l'icona visualizzata.
5. È possibile abilitare tre azioni, ciascuna con il proprio script. Selezioni le caselle accanto a quelle che desidera che questo provider implementi.

   * ***Rotazione delle password***, per reimpostare le password degli account.
   * ***Heartbeat***, per sincronizzare gli account.
   * ***Rilevamento degli account***, per la scansione.

   <div data-gb-custom-block data-tag="hint" data-style="success" class="hint hint-success"><p>Sebbene non sia obbligatorio abilitare ogni azione, si consiglia di farlo per sfruttare appieno i vantaggi di un provider PAM personalizzato.</p></div>
6. In ***Proprietà del provider*** e ***Proprietà dell'account***, imposti i campi che i provider e gli account implementeranno.

   * Le ***Proprietà del provider*** definiscono gli attributi che il provider PAM personalizzato utilizza per autenticarsi e connettersi a un identity provider. Queste proprietà possono includere nome utente, password, nome host o qualsiasi altro attributo univoco di un identity provider.
   * Le ***Proprietà dell'account*** sono attributi relativi a un account specifico su un identity provider. Le proprietà dell'account più comuni includono ID, nome utente e segreto. Le proprietà dell'account identificano in modo univoco gli account del provider e forniscono un valore per memorizzare la password di un account o altre credenziali sicure.

   Aggiunga proprietà cliccando su ***Aggiungi proprietà***. Per ogni proprietà, fornisca un ***Nome*** e un ***Tipo***. Di seguito è riportato un elenco dei diversi tipi:

   * ***Boolean***
   * ***Description*** (stringa)
   * ***Int***
   * ***Password*** (SecureString)
   * ***Sensitive Data*** (SecureString)
   * ***String***
   * ***Unique Identifier*** (stringa)
   * ***Username*** (stringa)

   <div data-gb-custom-block data-tag="hint" data-style="success" class="hint hint-success"><p>Si assicuri di fornire un tipo Unique Identifier se prevede di utilizzare il rilevamento degli account. Questo campo aiuta a tenere traccia di quali account sono stati aggiunti dall'ultima scansione.</p></div>
7. Selezioni la casella ***Obbligatorio*** accanto a una proprietà se i campi sono richiesti per la creazione/modifica.
8. Per ogni azione abilitata nella sezione ***Generale***, vada alla sezione corrispondente nel menu a sinistra.
9. Mappi le proprietà del provider/account necessarie al funzionamento dello script fornendo quanto segue:

   * ***Nome***: nome della variabile nello script.
   * ***Origine***: se il valore è fornito dal provider o dall'account.
   * ***Proprietà***: la proprietà di origine che verrà iniettata nello script.

   Tutte le azioni hanno script di azione associati con almeno due o tre parametri. I provider PAM personalizzati devono sapere come mappare una proprietà a un parametro dello script per definire la relazione tra l'oggetto del provider PAM personalizzato (provider o account) e ogni script di azione. I parametri dello script consentono di specificare al provider PAM personalizzato quali parametri possiede ciascuno dei suoi script di azione e a quale proprietà del provider PAM personalizzato tale parametro dello script deve essere mappato. Se necessario, può aggiungere altri parametri dello script.
10. Inserisca lo script dell'azione cercandolo sul suo computer o modificando manualmente il campo ***Script***. Può anche generare uno script di base su cui costruire.
11. Testi lo script una volta completato, quindi ***Salvi*** il suo nuovo modello. Il suo nuovo modello PAM personalizzato è stato creato e può essere trovato nell'elenco dei modelli. Può passare direttamente alla sezione Creare un provider PAM personalizzato.

#### Esempio di modello

Di seguito è riportato un esempio di valori per un modello PAM personalizzato completato, basato sui seguenti script di azione:

```powershell
[CmdletBinding()]
param(
    [Parameter(Mandatory)]
    [string]$IdentityProviderEndpoint,

    [Parameter(Mandatory)]
    [string]$IdentityProviderEndpointUserName,

    [Parameter(Mandatory)]
    [securestring]$IdentityProviderEndpointPassword
)
```

```powershell
[CmdletBinding()]
param(
    [Parameter(Mandatory)]
    [string]$IdentityProviderEndpoint,

    [Parameter(Mandatory)]
    [string]$IdentityProviderEndpointUserName,

    [Parameter(Mandatory)]
    [securestring]$IdentityProviderEndpointPassword,

    [Parameter(Mandatory)]
    [securestring]$NewPassword,

    [Parameter(Mandatory)]
    [string]$AccountUserName
)
```

```powershell
[CmdletBinding()]
param(
    [Parameter(Mandatory)]
    [string]$IdentityProviderEndpoint,

    [Parameter(Mandatory)]
    [string]$IdentityProviderEndpointUserName,

    [Parameter(Mandatory)]
    [securestring]$IdentityProviderEndpointPassword,

    [Parameter(Mandatory)]
    [securestring]$AccountSecret,

    [Parameter(Mandatory)]
    [string]$AccountUserName
)
```

**Proprietà del provider**

| Nome della proprietà             | Tipo di proprietà | Obbligatorio |
| -------------------------------- | ----------------- | ------------ |
| IdentityProviderEndpoint         | String            | Sì           |
| IdentityProviderEndpointUserName | UserName          | Sì           |
| IdentityProviderEndpointPassword | Password          | Sì           |

**Proprietà dell'account**

| Nome della proprietà | Tipo di proprietà | Obbligatorio |
| -------------------- | ----------------- | ------------ |
| AccountUserName      | UniqueIdentifier  | Sì           |
| AccountSecret        | Password          | Sì           |

**Tipi di parametri dello script**

| Nome del parametro               | Azione/i                                                       | Proprietà                        | Origine  | Obbligatorio |
| -------------------------------- | -------------------------------------------------------------- | -------------------------------- | -------- | ------------ |
| IdentityProviderEndpoint         | Rotazione delle password, Heartbeat, Rilevamento degli account | IdentityProviderEndpoint         | Provider | Sì           |
| IdentityProviderEndpointUserName | Rotazione delle password, Heartbeat, Rilevamento degli account | IdentityProviderEndpointUserName | Provider | Sì           |
| IdentityProviderEndpointPassword | Rotazione delle password, Heartbeat, Rilevamento degli account | IdentityProviderEndpointPassword | Provider | Sì           |
| NewPassword                      | Rotazione delle password                                       | N/D                              | Sistema  | Sì           |
| AccountUserName                  | Rotazione delle password, Heartbeat                            | AccountUserName                  | Account  | Sì           |
| AccountSecret                    | Heartbeat                                                      | AccountSecret                    | Account  | Sì           |

### Importare un modello PAM personalizzato

{% embed url="<https://youtu.be/hsLuhLJjCaM?t=112>" %}

{% hint style="info" %}
Può accedere al nostro [repository GitHub](https://github.com/Devolutions/PAM-Providers) pubblico per trovare provider PAM personalizzati creati dal team Devolutions e istruzioni su come utilizzarli.
{% endhint %}

1. In Devolutions Server, vada in ***Amministrazione – Accesso privilegiato – Provider***.
2. Clicchi su ***Modelli PAM personalizzati***.
3. Clicchi su ***Importa***.
4. Carichi il suo file .json, quindi clicchi su ***Importa***.
5. Adatti le impostazioni del modello se necessario, quindi clicchi su ***Salva***.

Il suo modello è stato importato e può essere trovato nell'elenco ***Modelli PAM personalizzati***.

### Creare un provider PAM personalizzato

Una volta creato o importato il suo modello, è pronto per creare un provider PAM personalizzato.

1. Vada in ***Amministrazione – Accesso privilegiato – Provider***, quindi clicchi ***Aggiungi***.
2. Vada su ***Personalizzato*** nel menu a sinistra, quindi selezioni il suo nuovo modello nell'elenco. Clicchi ***Continua***.
3. Nella pagina di configurazione ***Provider***, fornisca un ***Nome*** e un ***Nome utente***, poiché queste informazioni sono obbligatorie. Quindi, se necessario, imposti le altre opzioni in base alle sue esigenze.
4. Clicchi ***Salva***.

Il suo nuovo provider PAM personalizzato è stato creato e può essere trovato nell'elenco dei provider.

#### Vedere anche

* [Devolutions Academy - Configurazione di un provider PAM personalizzato](https://academy.devolutions.net/student/path/2354099/activity/3423448)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.devolutions.net/pam/it/pam-with-devolutions-server/getting-started/custom-pam-providers/create-a-custom-pam-provider-in-devolutions-server.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
