0

由于身份验证错误,我无法使用 .NET Core 连接到 AWS Keyspaces:

AuthenticationException '提供的用户名 nick 和/或密码不正确')

我不确定我应该赋予什么价值PlainTextAuthProvider

我试过使用:

  • 我的 AWS 控制台凭证
  • AWS 访问密钥/秘密密钥对

如何为 AWS Keyspaces 生成凭证?


我的代码,如果它是相关的:

open System
open Cassandra

[<EntryPoint>]
let main argv = 
  async {    
    let cluster =
      Cluster.Builder()
        .AddContactPoints("cassandra.eu-west-2.amazonaws.com")
        .WithPort(9142)
        .WithAuthProvider(PlainTextAuthProvider ("username", "password123"))
        .WithSSL()
        .Build()

    use! session =
      cluster.ConnectAsync ()
      |> Async.AwaitTask

    ()
  }
  |> Async.RunSynchronously

  0
4

1 回答 1

0

该选项位于IAM 部分

导航至:

  • “服务”下拉菜单
  • 单击“身份和访问管理 (IAM)”
  • 打开“用户”选项卡
  • 点击你的用户名
  • 打开“安全凭据”选项卡
  • 滚动到“Amazon Keyspaces 的凭据”部分
  • 点击“生成凭证”

在此处输入图像描述

这将显示一个弹出窗口,您可以在其中生成凭据。


此外,代码应该指定一个 Keyspace:

open System
open Cassandra

[<EntryPoint>]
let main argv = 
  async {    
    let cluster =
      Cluster.Builder()
        .AddContactPoints("cassandra.eu-west-2.amazonaws.com")
        .WithPort(9142)
        .WithAuthProvider(PlainTextAuthProvider ("username", "password123"))
        .WithSSL()
        .Build()

    use! session =
      cluster.ConnectAsync "test_keyspace"
      |> Async.AwaitTask

    ()
  }
  |> Async.RunSynchronously

  0
于 2020-07-01T15:28:49.910 回答