首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Phabricator conduit.connect C#证书错误

Phabricator conduit.connect C#证书错误
EN

Stack Overflow用户
提问于 2015-12-07 19:25:44
回答 1查看 457关注 0票数 2

我正在尝试写一个接口到我们的Phabricator安装,以允许内部改进系统创建任务。但是,我不明白为什么我一直收到证书错误。

代码语言:javascript
复制
"{\"result\":null,\"error_code\":\"ERR-INVALID-CERTIFICATE\",\"error_info\":\"Your authentication certificate for this server is invalid.\"}"

以下是我的代码;

代码语言:javascript
复制
    private void CreateSession()
    {
        int token = (int)((DateTime.UtcNow - new DateTime(1970, 1, 1)).TotalSeconds);

        var result = this.Do(
            "conduit.connect",
            new
            {
                client = this.ClientName,
                clientVersion = this.ClientVersion,
                clientDescription = "HIS to Fabricator Connector",
                user = this.User,
                authToken = token,
                authSignature = SHA1HashStringForUTF8String(token + this.Certificate)
            });
        this.m_SessionKey = result.sessionKey;
        this.m_ConnectionID = result.connectionID;
    }

public static string SHA1HashStringForUTF8String(string s)
    {
        byte[] bytes = Encoding.UTF8.GetBytes(s);

        var sha1 = SHA1.Create();
        byte[] hashBytes = sha1.ComputeHash(bytes);

        return HexStringFromBytes(hashBytes);
    }

public static string HexStringFromBytes(byte[] bytes)
    {
        var sb = new StringBuilder();
        foreach (byte b in bytes)
        {
            var hex = b.ToString("x2");
            sb.Append(hex);
        }
        return sb.ToString();
    }

这将返回以下JSON;

代码语言:javascript
复制
"{\"client\":\"HIS\",\"clientVersion\":\"1\",\"clientDescription\":\"HIS to Fabricator Connector\",\"user\":\"KYLIE\",\"authToken\":1449486922,\"authSignature\":\"ec020edbd5082d3971c2c11ef4f4917244fc4a78\"}"

我想问题出在我通过的证书上。我正在使用;

代码语言:javascript
复制
api-3ydcae2gtmf6u6uer2zow465j6px

这是我从Conduit API令牌页面获得的。

有什么建议吗?

EN

回答 1

Stack Overflow用户

发布于 2016-01-24 22:09:15

要查询.../api/conduit.getcertificate,您必须通过.../conduit/token

  • Use
  1. 获取令牌

因此,您将获得证书->利润!:)

PS:查询证书既不是api- token,也不是cli- token!;)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/34132443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档