Spec-Zone.ru › AWS CLI v2

[ aws . cognito-idp ]

update-identity-provider

Описание

Изменяет конфигурацию и отношения доверия между сторонним поставщиком идентификации (IdP) и пулом пользователей. Amazon Cognito принимает вход с использованием сторонних поставщиков идентификации (IdP) через управляемые механизмы входа и библиотеки сторонних служб OIDC. Дополнительную информацию см. в разделе Вход с использованием сторонних поставщиков IdP.

Примечание

Amazon Cognito оценивает политики управления идентификацией и доступом (IAM) в запросах для этой операции API. Для этой операции необходимо использовать учетные данные IAM для авторизации запросов и предоставить себе соответствующее разрешение IAM в политике.

Узнать больше
  • Подписывание запросов к API Amazon Web Services
  • Использование API пулов пользователей Amazon Cognito и конечных точек пулов пользователей

См. также: Документация API AWS

Синтаксис

  update-identity-provider
--user-pool-id <value>
--provider-name <value>
[--provider-details <value>]
[--attribute-mapping <value>]
[--idp-identifiers <value>]
[--cli-input-json | --cli-input-yaml]
[--generate-cli-skeleton <value>]
[--debug]
[--endpoint-url <value>]
[--no-verify-ssl]
[--no-paginate]
[--output <value>]
[--query <value>]
[--profile <value>]
[--region <value>]
[--version <value>]
[--color <value>]
[--no-sign-request]
[--ca-bundle <value>]
[--cli-read-timeout <value>]
[--cli-connect-timeout <value>]
[--cli-binary-format <value>]
[--no-cli-pager]
[--cli-auto-prompt]
[--no-cli-auto-prompt]

Параметры

--user-pool-id (строка)

Идентификатор пула пользователей, в котором требуется обновить IdP.

--provider-name (строка)

Имя IdP, которое нужно обновить. Вы можете передать имя поставщика идентификации в параметре запроса identity_provider запроса к конечной точке Authorize для автоматического перенаправления на вход с соответствующим IdP.

--provider-details (карта)

Области, URL-адреса и идентификаторы для вашего внешнего поставщика идентификации. В следующих примерах описываются ключи деталей поставщика для каждого типа IdP. Эти значения и их схемы могут быть изменены. Значения Social IdP authorize_scopes должны соответствовать значениям, указанным здесь.

OpenID Connect (OIDC)

Amazon Cognito принимает следующие элементы, когда не может обнаружить URL-адреса конечных точек из oidc_issuer : attributes_url , authorize_url , jwks_uri , token_url .

Запрос создания или обновления: "ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }

Описание ответа: "ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "attributes_url_add_attributes": "false", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }

SAML

Запрос создания или обновления с URL-адресом метаданных: "ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256" }

Запрос создания или обновления с файлом метаданных: "ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataFile": "[metadata XML]", "RequestSigningAlgorithm": "rsa-sha256" }

Значение MetadataFile должно быть текстовым документом метаданных со всеми символами кавычек (”) экранированными обратными слешами.

Описание ответа: "ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "ActiveEncryptionCertificate": "[certificate]", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256", "SLORedirectBindingURI": "https://auth.example.com/slo/saml", "SSORedirectBindingURI": "https://auth.example.com/sso/saml" }

LoginWithAmazon

Запрос создания или обновления: "ProviderDetails": { "authorize_scopes": "profile postal_code", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret"

Описание ответа: "ProviderDetails": { "attributes_url": "https://api.amazon.com/user/profile", "attributes_url_add_attributes": "false", "authorize_scopes": "profile postal_code", "authorize_url": "https://www.amazon.com/ap/oa", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "POST", "token_url": "https://api.amazon.com/auth/o2/token" }

Google

Запрос создания или обновления: "ProviderDetails": { "authorize_scopes": "email profile openid", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret" }

Описание ответа: "ProviderDetails": { "attributes_url": "https://people.googleapis.com/v1/people/me?personFields=", "attributes_url_add_attributes": "true", "authorize_scopes": "email profile openid", "authorize_url": "https://accounts.google.com/o/oauth2/v2/auth", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret", "oidc_issuer": "https://accounts.google.com", "token_request_method": "POST", "token_url": "https://www.googleapis.com/oauth2/v4/token" }

SignInWithApple

Запрос создания или обновления: "ProviderDetails": { "authorize_scopes": "email name", "client_id": "com.example.cognito", "private_key": "1EXAMPLE", "key_id": "2EXAMPLE", "team_id": "3EXAMPLE" }

Описание ответа: "ProviderDetails": { "attributes_url_add_attributes": "false", "authorize_scopes": "email name", "authorize_url": "https://appleid.apple.com/auth/authorize", "client_id": "com.example.cognito", "key_id": "1EXAMPLE", "oidc_issuer": "https://appleid.apple.com", "team_id": "2EXAMPLE", "token_request_method": "POST", "token_url": "https://appleid.apple.com/auth/token" }

Facebook

Запрос создания или обновления: "ProviderDetails": { "api_version": "v17.0", "authorize_scopes": "public_profile, email", "client_id": "1example23456789", "client_secret": "provider-app-client-secret" }

Описание ответа: "ProviderDetails": { "api_version": "v17.0", "attributes_url": "https://graph.facebook.com/v17.0/me?fields=", "attributes_url_add_attributes": "true", "authorize_scopes": "public_profile, email", "authorize_url": "https://www.facebook.com/v17.0/dialog/oauth", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "GET", "token_url": "https://graph.facebook.com/v17.0/oauth/access_token" }

key -> (строка)

value -> (строка)

Сокращенный синтаксис:

KeyName1=string,KeyName2=string

Синтаксис JSON:

{"string": "string"
  ...}

--attribute-mapping (карта)

Сопоставление атрибутов IdP со стандартными и пользовательскими атрибутами пула пользователей. Укажите атрибут пула пользователей в качестве ключа пары «ключ-значение» и имя утверждения атрибута IdP в качестве значения.

key -> (строка)

value -> (строка)

Сокращенный синтаксис:

KeyName1=string,KeyName2=string

Синтаксис JSON:

{"string": "string"
  ...}

--idp-identifiers (список)

Массив идентификаторов IdP, например, "IdPIdentifiers": [ "MyIdP", "MyIdP2" ]. Идентификаторы — это удобочитаемые имена, которые можно передать в параметре запроса idp_identifier запросов к конечной точке Authorize для автоматического перенаправления на вход с соответствующим IdP. Идентификаторы в формате домена также позволяют использовать сопоставление адресов электронной почты с поставщиками SAML.

(строка)

Синтаксис:

"string" "string" ...

--cli-input-json | --cli-input-yaml (строка) Читает аргументы из предоставленной строки JSON. Строка JSON соответствует формату, предоставленному в --generate-cli-skeleton. Если на командной строке указаны другие аргументы, эти значения переопределят значения, предоставленные в JSON. Невозможно передать произвольные двоичные значения с помощью значения, предоставленного в JSON, поскольку строка будет интерпретирована буквально. Это может не быть указано вместе с --cli-input-yaml.

--generate-cli-skeleton (строка) Выводит каркас JSON в стандартный вывод без отправки запроса API. Если указано без значения или со значением input, выводит пример JSON-ввода, который можно использовать в качестве аргумента для --cli-input-json. Аналогично, если указано yaml-input, выведет пример ввода YAML, который можно использовать с --cli-input-yaml. Если указано значение output, проверяет входные данные команды и возвращает пример выходных данных JSON для этой команды. Сгенерированный каркас JSON не является стабильным между версиями AWS CLI, и нет гарантий обратной совместимости в сгенерированном каркасе JSON.

Глобальные параметры

--debug (логическое значение)

Включить отладочную запись в журнал.

--endpoint-url (строка)

Переопределить URL по умолчанию команды заданным URL-адресом.

--no-verify-ssl (логическое значение)

По умолчанию AWS CLI использует SSL при общении с сервисами AWS. Для каждого соединения SSL AWS CLI проверяет сертификаты SSL. Этот параметр переопределяет стандартное поведение проверки сертификатов SSL.

--no-paginate (логическое значение)

Отключить автоматическую постраничную навигацию. Если автоматическая постраничная навигация отключена, AWS CLI выполнит только один вызов для первой страницы результатов.

--output (строка)

Стиль форматирования выходных данных команды.

  • json
  • text
  • table
  • yaml
  • yaml-stream

--query (строка)

Запрос JMESPath для фильтрации данных ответа.

--profile (строка)

Использовать определенный профиль из файла учетных данных.

--region (строка)

Регион для использования. Переопределяет настройки конфигурации/среды.

--version (строка)

Отобразить версию этого инструмента.

--color (строка)

Включить/выключить цветной вывод.

  • on
  • off
  • auto

--no-sign-request (логическое значение)

Не подписывать запросы. Учетные данные не будут загружены, если этот аргумент указан.

--ca-bundle (строка)

Файл сертификатов CA для проверки сертификатов SSL. Переопределяет настройки конфигурации/среды.

--cli-read-timeout (целое число)

Максимальное время чтения сокета в секундах. Если значение установлено в 0, чтение сокета будет выполняться в блокирующем режиме и не будет иметь таймаута. Значение по умолчанию — 60 секунд.

--cli-connect-timeout (целое число)

Максимальное время подключения к сокету в секундах. Если значение установлено в 0, подключение к сокету будет выполняться в блокирующем режиме и не будет иметь таймаута. Значение по умолчанию — 60 секунд.

--cli-binary-format (строка)

Стиль форматирования для двоичных блоков. Формат по умолчанию — base64. Формат base64 ожидает, что двоичные блоки будут предоставлены в виде закодированной в base64 строки. Формат raw-in-base64-out сохраняет совместимость с поведением AWS CLI V1, и двоичные значения должны быть переданы буквально. При предоставлении содержимого из файла, отображающего двоичный блок, fileb:// всегда будет обрабатываться как двоичный и будет использовать содержимое файла напрямую независимо от настройки cli-binary-format. При использовании file:// содержимое файла должно быть правильно отформатировано для настроенного cli-binary-format.

  • base64
  • raw-in-base64-out

--no-cli-pager (логическое значение)

Отключить страницу вывода cli.

--cli-auto-prompt (логическое значение)

Автоматически запрашивать параметры ввода CLI.

--no-cli-auto-prompt (логическое значение)

Отключить автоматическое запросы параметров ввода CLI.

Примеры

Примечание

Чтобы использовать следующие примеры, необходимо установить и настроить AWS CLI. Дополнительную информацию см. в руководстве по началу работы в руководстве пользователя AWS CLI.

Если не указано иное, во всех примерах используются правила цитирования по типу Unix. Эти примеры необходимо адаптировать к правилам цитирования вашей оболочки. Дополнительную информацию см. в разделе Использование кавычек со строками в руководстве пользователя AWS CLI.

Для обновления поставщика идентификации пула пользователей

В следующем update-identity-provider примере обновляется поставщик OIDC «MyOIDCIdP» в запрошенном пуле пользователей.

aws cognito-idp update-identity-provider \
    --cli-input-json file://update-identity-provider.json

Содержимое update-identity-provider.json:

{
   "AttributeMapping": {
            "email": "idp_email",
            "email_verified": "idp_email_verified",
            "username": "sub"
    },
    "CreationDate": 1.701129701653E9,
    "IdpIdentifiers": [
        "corp",
        "dev"
    ],
    "LastModifiedDate": 1.701129701653E9,
    "ProviderDetails": {
        "attributes_request_method": "GET",
        "attributes_url": "https://example.com/userInfo",
        "attributes_url_add_attributes": "false",
        "authorize_scopes": "openid profile",
        "authorize_url": "https://example.com/authorize",
        "client_id": "idpexampleclient123",
        "client_secret": "idpexamplesecret456",
        "jwks_uri": "https://example.com/.well-known/jwks.json",
        "oidc_issuer": "https://example.com",
        "token_url": "https://example.com/token"
    },
    "ProviderName": "MyOIDCIdP",
    "UserPoolId": "us-west-2_EXAMPLE"
}

Вывод:

{
    "IdentityProvider": {
        "AttributeMapping": {
            "email": "idp_email",
            "email_verified": "idp_email_verified",
            "username": "sub"
        },
        "CreationDate": 1701129701.653,
        "IdpIdentifiers": [
            "corp",
            "dev"
        ],
        "LastModifiedDate": 1736444278.211,
        "ProviderDetails": {
            "attributes_request_method": "GET",
            "attributes_url": "https://example.com/userInfo",
            "attributes_url_add_attributes": "false",
            "authorize_scopes": "openid profile",
            "authorize_url": "https://example.com/authorize",
            "client_id": "idpexampleclient123",
            "client_secret": "idpexamplesecret456",
            "jwks_uri": "https://example.com/.well-known/jwks.json",
            "oidc_issuer": "https://example.com",
            "token_url": "https://example.com/token"
        },
        "ProviderName": "MyOIDCIdP",
        "ProviderType": "OIDC",
        "UserPoolId": "us-west-2_EXAMPLE"
    }
}

Дополнительную информацию см. в разделе Настройка домена в руководстве разработчика Amazon Cognito.

Вывод

IdentityProvider -> (структура)

Подробная информация об идентификаторе поставщика.

UserPoolId -> (строка)

Идентификатор пользовательского пула, связанного с IdP.

ProviderName -> (строка)

Наглядное имя IdP.

ProviderType -> (строка)

Тип IdP. Может быть SAML, OIDC или именной поставщик социальных идентификаторов.

ProviderDetails -> (массив)

Охватывающие области, URL-адреса и идентификаторы вашего внешнего поставщика удостоверений. Следующие примеры описывают ключи деталей поставщика для каждого типа IdP. Эти значения и их схема могут быть изменены. Значения социальных IdP authorize_scopes должны соответствовать указанным здесь значениям.

OpenID Connect (OIDC)

Amazon Cognito принимает следующие элементы, когда не может обнаружить URL-адреса конечных точек из oidc_issuer : attributes_url , authorize_url , jwks_uri , token_url .

Запрос на создание или обновление: "ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }

Описание ответа: "ProviderDetails": { "attributes_request_method": "GET", "attributes_url": "https://auth.example.com/userInfo", "attributes_url_add_attributes": "false", "authorize_scopes": "openid profile email", "authorize_url": "https://auth.example.com/authorize", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "jwks_uri": "https://auth.example.com/.well-known/jwks.json", "oidc_issuer": "https://auth.example.com", "token_url": "https://example.com/token" }

SAML

Запрос на создание или обновление с URL-адресом метаданных: "ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256" }

Запрос на создание или обновление с файлом метаданных: "ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "MetadataFile": "[metadata XML]", "RequestSigningAlgorithm": "rsa-sha256" }

Значение MetadataFile должно быть текстовым документом метаданных со всеми символами кавычек (”) экранированными обратными слешами.

Описание ответа: "ProviderDetails": { "IDPInit": "true", "IDPSignout": "true", "EncryptedResponses" : "true", "ActiveEncryptionCertificate": "[certificate]", "MetadataURL": "https://auth.example.com/sso/saml/metadata", "RequestSigningAlgorithm": "rsa-sha256", "SLORedirectBindingURI": "https://auth.example.com/slo/saml", "SSORedirectBindingURI": "https://auth.example.com/sso/saml" }

LoginWithAmazon

Запрос на создание или обновление: "ProviderDetails": { "authorize_scopes": "profile postal_code", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret"

Описание ответа: "ProviderDetails": { "attributes_url": "https://api.amazon.com/user/profile", "attributes_url_add_attributes": "false", "authorize_scopes": "profile postal_code", "authorize_url": "https://www.amazon.com/ap/oa", "client_id": "amzn1.application-oa2-client.1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "POST", "token_url": "https://api.amazon.com/auth/o2/token" }

Google

Запрос на создание или обновление: "ProviderDetails": { "authorize_scopes": "email profile openid", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret" }

Описание ответа: "ProviderDetails": { "attributes_url": "https://people.googleapis.com/v1/people/me?personFields=", "attributes_url_add_attributes": "true", "authorize_scopes": "email profile openid", "authorize_url": "https://accounts.google.com/o/oauth2/v2/auth", "client_id": "1example23456789.apps.googleusercontent.com", "client_secret": "provider-app-client-secret", "oidc_issuer": "https://accounts.google.com", "token_request_method": "POST", "token_url": "https://www.googleapis.com/oauth2/v4/token" }

SignInWithApple

Запрос на создание или обновление: "ProviderDetails": { "authorize_scopes": "email name", "client_id": "com.example.cognito", "private_key": "1EXAMPLE", "key_id": "2EXAMPLE", "team_id": "3EXAMPLE" }

Описание ответа: "ProviderDetails": { "attributes_url_add_attributes": "false", "authorize_scopes": "email name", "authorize_url": "https://appleid.apple.com/auth/authorize", "client_id": "com.example.cognito", "key_id": "1EXAMPLE", "oidc_issuer": "https://appleid.apple.com", "team_id": "2EXAMPLE", "token_request_method": "POST", "token_url": "https://appleid.apple.com/auth/token" }

Facebook

Запрос на создание или обновление: "ProviderDetails": { "api_version": "v17.0", "authorize_scopes": "public_profile, email", "client_id": "1example23456789", "client_secret": "provider-app-client-secret" }

Описание ответа: "ProviderDetails": { "api_version": "v17.0", "attributes_url": "https://graph.facebook.com/v17.0/me?fields=", "attributes_url_add_attributes": "true", "authorize_scopes": "public_profile, email", "authorize_url": "https://www.facebook.com/v17.0/dialog/oauth", "client_id": "1example23456789", "client_secret": "provider-app-client-secret", "token_request_method": "GET", "token_url": "https://graph.facebook.com/v17.0/oauth/access_token" }

ключ -> (строка)

значение -> (строка)

AttributeMapping -> (массив)

Сопоставление атрибутов IdP со стандартными и пользовательскими атрибутами пользовательского пула.

ключ -> (строка)

значение -> (строка)

IdpIdentifiers -> (список)

Список идентификаторов IdP. Идентификаторы IdP — это строки, представляющие наглядные имена или доменные имена IdP, например MyIdP или auth.example.com. Вы можете направить запросы на авторизацию пользователя в нужный IdP с помощью идентификаторов IdP или имён IdP. Дополнительную информацию см. в identity_provider и idp_identifier на конечной точке авторизации.

(строка)

LastModifiedDate -> (временная метка)

Дата и время последнего изменения элемента. Amazon Cognito возвращает эту временную метку в формате временной метки Unix. Ваш SDK может отображать вывод в удобочитаемом формате, таком как ISO 8601 или объект Java Date.

CreationDate -> (временная метка)

Дата и время создания элемента. Amazon Cognito возвращает эту временную метку в формате временной метки Unix. Ваш SDK может отображать вывод в удобочитаемом формате, таком как ISO 8601 или объект Java Date.

© Copyright 2025, Amazon Web Services. Created using Sphinx.

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API