Depois de criar um servidor API de provedor de atributos personalizados, você deve se conectar IBM® Software Hub ao provedor de atributos personalizados.
- Quem precisa concluir esta tarefa?
Para concluir esta tarefa, você deve ser:
- Um administrador de cluster
- Um administrador de instância
- Quando você precisa concluir essa tarefa?
Conclua esta tarefa se desejar usar um provedor de atributos personalizado para anexar automaticamente atributos ao perfil do IBM Software Hub usuário.
Antes de iniciar
Melhor prática: você pode executar muitos dos comandos desta tarefa exatamente como estão escritos se configurar variáveis de ambiente para sua instalação. Para
obter instruções, consulte Configurando variáveis de ambiente de instalação.
Certifique-se de obter as variáveis de ambiente antes de executar os comandos nesta tarefa.
Você deve ter um servidor API de provedor de atributos personalizados existente.
Procedimento
Para se conectar ao seu provedor de atributos personalizados, execute as seguintes etapas:
- Configure as variáveis de ambiente a seguir:
- Defina a variável
CONFIGMAP_NAME de ambiente com o nome que deseja usar para identificar a configuração.
O exemplo a seguir usa o nome recomendado: cpd-custom-attribute-provider-extension
export CONFIGMAP_NAME=cpd-custom-attribute-provider-extension
- Defina a variável
API_SERVER_URL de ambiente como o URL e do provedor de atributos personalizados:
export API_SERVER_URL=<URL>
- Defina a variável
DISPLAY_NAME de ambiente como o nome de exibição que você deseja usar para identificar a configuração no banco de dados onde IBM Software Hub os metadados são armazenados.
export DISPLAY_NAME="Custom Attribute Provider"
- Crie uma
attribute_provider extensão:
O servidor API não requer nenhuma autenticação
cat <<EOF |oc apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
labels:
icpdata_addon: "true"
name: ${CONFIGMAP_NAME}
namespace: ${PROJECT_CPD_INST_OPERANDS}
data:
extensions: |
[
{
"extension_point_id": "attribute_provider",
"extension_name": "custom_attribute_provider"
"display_name": "${DISPLAY_NAME}",
"order_hint": 600,
"details": {
"url": "${API_SERVER_URL}"
}
}
]
EOF
O servidor API requer um token portador para autenticação
cat <<EOF |oc apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
labels:
icpdata_addon: "true"
name: ${CONFIGMAP_NAME}
namespace: ${PROJECT_CPD_INST_OPERANDS}
data:
extensions: |
[
{
"extension_point_id": "attribute_provider",
"extension_name": "custom_attribute_provider"
"display_name": "${DISPLAY_NAME}",
"order_hint": 600,
"details": {
"url": "${API_SERVER_URL}"
"secretTokenKey": "custom_attribute_provider_token"
}
}
]
EOF
O servidor API requer um certificado TLS para autenticação
cat <<EOF |oc apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
labels:
icpdata_addon: "true"
name: ${CONFIGMAP_NAME}
namespace: ${PROJECT_CPD_INST_OPERANDS}
data:
extensions: |
[
{
"extension_point_id": "attribute_provider",
"extension_name": "custom_attribute_provider"
"display_name": "${DISPLAY_NAME}",
"order_hint": 600,
"details": {
"url": "${API_SERVER_URL}"
"secretCertificateKey": "custom_attribute_provider_certificate"
}
}
]
EOF
O servidor API requer um token portador e um certificado TLS para autenticação
cat <<EOF |oc apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
labels:
icpdata_addon: "true"
name: ${CONFIGMAP_NAME}
namespace: ${PROJECT_CPD_INST_OPERANDS}
data:
extensions: |
[
{
"extension_point_id": "attribute_provider",
"extension_name": "custom_attribute_provider"
"display_name": "${DISPLAY_NAME}",
"order_hint": 600,
"details": {
"url": "${API_SERVER_URL}"
"secretCertificateKey": "custom_attribute_provider_certificate"
"secretTokenKey": "custom_attribute_provider_token"
}
}
]
EOF
- Se o seu servidor API exigir autenticação, defina as seguintes variáveis de ambiente:
- Se o seu servidor API exigir um token portador para autenticação, defina a variável
BEARER_TOKEN de ambiente com o valor do token portador:
export BEARER_TOKEN=<bearer-token>
- Se o seu servidor API exigir um certificado TLS para autenticação, defina a variável
TLS_CERTIFICATE de ambiente como o nome completo do certificado TLS:
export TLS_CERTIFICATE=<fully-qualified-tls-certificate-name>
- Crie um segredo chamado
zen-ext-attribute-provider-secret:
O servidor API não requer nenhuma autenticação
oc create secret generic zen-ext-attribute-provider-secret \
-n ${PROJECT_CPD_INST_OPERANDS}
O servidor API requer um token portador para autenticação
oc create secret generic zen-ext-attribute-provider-secret \
-n ${PROJECT_CPD_INST_OPERANDS} \
--from-literal=custom_attribute_provider_token=${BEARER_TOKEN}
O servidor API requer um certificado TLS para autenticação
oc create secret generic zen-ext-attribute-provider-secret \
-n ${PROJECT_CPD_INST_OPERANDS} \
--from-file=custom_attribute_provider_certificate=${TLS_CERTIFICATE}
O servidor API requer um token portador e um certificado TLS para autenticação
oc create secret generic zen-ext-attribute-provider-secret \
-n ${PROJECT_CPD_INST_OPERANDS} \
--from-literal=custom_attribute_provider_token=${BEARER_TOKEN} \
--from-file=custom_attribute_provider_certificate=${TLS_CERTIFICATE}
O quê fazer em seguida
Agora que você se conectou IBM Software Hub ao seu provedor de atributos personalizados, está pronto para concluir a especificação dos atributos personalizados a serem usados em IBM Software Hub.