Nano Hash - криптовалюты, майнинг, программирование

Как создавать/управлять ключами GCP API с помощью Python

Я пытаюсь получить доступ к Google Cloud API Services с помощью клиентских библиотек, таких как Python, однако ничего не могу найти в документации здесь. Документацию действительно сложно найти. Любая помощь, пожалуйста.

Мне нужно создать ключи API с помощью клиентской библиотеки для клиентов, которые могут получить доступ к шлюзу API с помощью ключей API.


Ответы:


1

На данный момент нет общедоступного API для программного создания ключей API. Я видел бета-версию месяц назад, но сейчас она уже недоступна.

Недавно я просматривал видео с новым API от Google, но не задокументированным публично.

Таким образом, вы можете использовать этот вызов API (не документ, который может быть изменен без предварительного уведомления. Используйте на свой страх и риск)


curl -H "Authorization: Bearer $(gcloud auth print-access-token)" -X POST https://apikeys.googleapis.com/v1/projects/PROJECT_ID/apiKeys

08.10.2020

2

Если вы хотите использовать API Google, лучше создать учетную запись службы и использовать ее в коде Python. https://cloud.google.com/docs/authentication/production?hl=en

Если вы уже создали службу и хотите предоставить доступ к API с помощью ключа API, вы можете следовать инструкциям по ссылке, которую вы упомянули.

08.10.2020
  • я хочу создать ключи API, используя клиентскую библиотеку 08.10.2020
  • Нет возможности создать ключ API программно. Вам нужно использовать облачную консоль. 09.10.2020

  • 3

    Согласно официальной документации, если вы используете API key для аутентификации, вы должны сначала включить поддержку ключа API для вашей службы, затем для идентификации службы, которая отправляет запросы к вашему API, вы используете учетную запись службы.

    При этом вы можете создать ключ сервисного аккаунта с помощью Cloud Console, инструмента gcloud, метода serviceAccounts.keys.create(), в документацию включен следующий пример создания ключа сервисной учетной записи с помощью Python.

    import os
    
    from google.oauth2 import service_account
    import googleapiclient.discovery
    
    def create_key(service_account_email):
        """Creates a key for a service account."""
    
        credentials = service_account.Credentials.from_service_account_file(
            filename=os.environ['GOOGLE_APPLICATION_CREDENTIALS'],
            scopes=['https://www.googleapis.com/auth/cloud-platform'])
    
        service = googleapiclient.discovery.build(
            'iam', 'v1', credentials=credentials)
    
        key = service.projects().serviceAccounts().keys().create(
            name='projects/-/serviceAccounts/' + service_account_email, body={}
            ).execute()
    
        print('Created key: ' + key['name'])
    

    Другой пример можно найти по этой ссылке.

    08.10.2020
    Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..