小编ubi*_*bie的帖子

在 ARM 模板中获取 CosmosDb 主连接字符串

我有一个 ARM 模板,它提供 cosmosDb 的 primaryMasterKey,如下所示:

{ "properties": { "enabled": true, "siteConfig": { "appSettings": [ { "name": "MongoDb:CnnDetails", "value": "[listKeys(resourceId('Microsoft.DocumentDB/databaseAccounts') , variables('cosmosdb_full')), '2015-04-08').primaryMasterKey]" } }

如何修改它以获取实际的连接字符串?

我尝试了几件事:

  1. 将单词 primaryMasterKey 更改为 primaryConnectionString。这给出了一个错误说:

'语言表达式属性'primaryConnectionString'不存在,可用属性为'primaryMasterKey、secondaryMasterKey、primaryReadonlyMasterKey、secondaryReadonlyMasterKey'

  1. 将工作 listKeys 更改为 listConnectionStrings。这是我的视觉工作室中的红色下划线,但在通过 azure devops 时似乎可以工作

'语言表达式属性 'primaryConnectionString' 不存在,可用属性为 'connectionStrings'

  1. 我去https://docs.microsoft.com/en-us/rest/api/cosmos-db-resource-provider/databaseaccounts/listconnectionstrings#code-try-0尝试一下。ListKeys 返回这样的结构:

    { "primaryMasterKey": "[REDACTED]", "secondaryMasterKey": "[REDACTED]", "primaryReadonlyMasterKey": "[REDACTED]", "secondaryReadonlyMasterKey": "[REDACTED]" }

所以我明白为什么 .primaryMasterKey 起作用了。但 ListConnectionStrings 返回:

{
  "connectionStrings": [
{
  "connectionString": "mongodb://[REDACTED]:10255/?ssl=true&replicaSet=globaldb",
  "description": "Primary MongoDB Connection String"
},
{
  "connectionString": "mongodb://[REDACTED]:10255/?ssl=true&replicaSet=globaldb",
  "description": "Secondary MongoDB …
Run Code Online (Sandbox Code Playgroud)

azure-rm-template azure-cosmosdb

10
推荐指数
3
解决办法
3382
查看次数

将预先存在的静态 HTML 页面添加到 React/Gatsby 站点的最快方法

我有一个使用 JSX/React/Gatsby 运行良好的简单项目。

我在另一个项目中的 HTML 中有一个预先存在的页面(想想登陆页面),非常复杂,使用 Bootstrap 4 设计得很好,我们称之为 LandingPage.html 和关联的 LandingPage.css。

我想将登录页面添加到我的 Gatsby 网站。因此,例如,当导航到 localhost:3000/LandingPage.html 时,登录页面会显示,样式正确等。

我不清楚是否必须将我预先存在的 HTML 完全转换为 React 组件/JSX?或者我是否可以通过将 LandingPage.html(和相关的样式文件)放在我的 Gatsby 项目结构中的某个合理位置来提供它?或者我是否必须创建一个在“运行时”读取 LandingPage.html 和 LandingPage.css 内容的反应“包装器”?

注意:我已经尝试将 LandingPage.html 和 LandingPage.css 放入 /public 文件夹中,实际上确实有效!所以也许我已经回答了我自己的问题。但这样做的方法正确吗?

reactjs react-router gatsby

9
推荐指数
1
解决办法
5507
查看次数

如何在 Amazon AWS EC2 Windows 上使用 Windows 容器运行 Docker Desktop(或者这是不可能的)?

我有一台运行 Windows 10 的桌面计算机,运行 Windows 10、Microsoft 365、在 Windows 容器模式下运行的 Docker Desktop。

我有一台运行 Windows Server 2019 的 Amazon EC2 计算机,并且也在那里安装了 Microsoft 365 并通过 RDP 进行访问。

本质上,我想要创建一台 EC2 机器,它允许我运行在 Windows 容器模式下运行的 Microsoft 365 和 Docker 桌面。

我尝试创建 AWS EC2 实例并安装 Docker for Desktop,但遇到很多神秘错误。(见下文)。

我尝试使用 Microsoft 的 AMI 和https://aws.amazon.com/marketplace/server/procurement?productId=d94e0325-6111-4c69-8c29-87e784a6d0aa中内置的 Hyper-V

[或者我应该使用 Docker Enterprise 来实现此目的?]

[或者根本不可能获得一台可以在 AWS 上运行 Docker Windows 容器的 Windows 机器吗?]

[或者我是否需要选择特定类型的机器大小 [t4.large 或其他] - 我之前在 Microsoft Azure 上体验过,运行 Docker Desktop 只能在特定规格的机器上运行,这允许“虚拟化之上的虚拟化” ”]

System.InvalidOperationException:
job failed with message: 'DockerDesktopVM' failed to …
Run Code Online (Sandbox Code Playgroud)

amazon-ec2 docker windows-container docker-desktop

8
推荐指数
1
解决办法
5621
查看次数

由于“不需要的软件”,Google 禁止投放广告。这可能是 Blazor DLL 吗?怎么解决?

我有一个带有 blazor 客户端组件(webassembly/WASM)的正常运行的网站。然后我尝试在谷歌上为该网站做广告,但被不需要的软件拒绝了。我查看了我的网站,在 wwwroot 中当然有一个 _bin_framework 目录,其中包含下载到客户端浏览器的 dll。

这可能是问题吗?什么可能是解决方法?或者,是否有人有 blazor WASM 网站的示例,这些网站是谷歌广告的成功目标,可能证明 Blazor DLL 不是问题,而其他可能是问题?

(事实上​​,任何关于如何处理谷歌拒绝垃圾软件的一般建议都非常感谢!)

google-search-console blazor blazor-client-side

7
推荐指数
1
解决办法
271
查看次数

我的 Windows Bash shell 在与 Windows 文件系统交互时运行的是哪个用户?

我已经下载并安装了 Windows 版 Bash。当我做一个 simple 时ls -al,我得到了很多权限被拒绝的错误。

我不太清楚用户权限是如何解决的。假设在 bash shell 中,我设置了一个名为moihome drive的用户/home/moi。如果我这样做ls -al /mnt/c,我会收到一堆权限被拒绝的错误,例如

ls: cannot access /mnt/c/hiberfil.sys: Permission denied 
ls: cannot access /mnt/c/pagefile.sys: Permission denied 
ls: cannot access /mnt/c/swapfile.sys: Permission denied total 2388

    drwxrwxrwx 2 root root      0 Sep 26 18:09 .
    drwxr-xr-x 2 root root      0 Jan  1  1970 ..
    drwxrwxrwx 2 root root      0 Oct 22  2015 AutoDiscover
    -r-xr-xr-x 1 root root 398156 Jul 26  2012 bootmgr
    -r-xr-xr-x 1 …
Run Code Online (Sandbox Code Playgroud)

bash windows-subsystem-for-linux

5
推荐指数
1
解决办法
1249
查看次数

在 Postman 中为受 Azure AD B2C 保护的 Azure Function App 请求访问令牌

我有一个由 Azure Active Directory B2C 租户保护的 AspNetCore 2.0 MVC Web API。我已经能够使用 Postman 通过以下 SO 发布来测试 API 端点:在 Postman 中为 Azure AD B2C 请求访问令牌(特别是 SpottedMahn 的评论中引用的 Microsoft 记录步骤:https ://docs.microsoft.com /en-us/aspnet/core/security/authentication/azure-ad-b2c-webapi#use-postman-to-get-a-token-and-test-the-api )

现在,我正在开发上述的无服务器版本 - 该应用程序几乎相同,期望端点已由 Azure Functions 应用程序中的 Azure 函数实现

Functions App 已启用身份验证、使用 Azure Active Directory 登录以及以下设置:

在此处输入图片说明

这是我在 Azure B2C 租户中设置应用程序的方式:

在此处输入图片说明

如果我通过浏览器访问函数端点,我将成功路由到 Azure AD B2C 登录页面并可以登录,然后从 API 端点查看结果。所以我非常有信心,Azure AD B2C <-> Function App 配置都很好。

但是,我无法使用上面链接的请求访问令牌技术来获取令牌并检查 Postman 中的端点

如果我获取认证后获得的令牌(例如通过使用 fiddler 并观察返回的 id_token),并且在 Postman 中我选择 Bearer 身份验证并提供该 id_token,则 Postman 成功命中我的端点。但是,如果我按照上面链接文档中的步骤操作,我会得到“登录”弹出窗口,然后会得到一个有效的 [寻找] …

azure postman azure-ad-b2c azure-functions

5
推荐指数
1
解决办法
1665
查看次数

我需要做什么才能删除这个已通过所有初始检查的 Azure Active Directory 租户?

Microsoft 的 UI 显示所有初始检查均已通过,他们可以删除此 Azure Active Directory 租户。随后出现消息称 Microsoft 实际上无法删除租户。我还能做些什么来真正删除它吗?

在此输入图像描述

编辑 1 似乎我得到了 403 在此输入图像描述

我是租户中唯一剩下的用户并且拥有全局管理员。

在此输入图像描述

azure azure-active-directory

5
推荐指数
1
解决办法
899
查看次数

如何使用 azure CLI 在插槽中停止功能应用程序

我想使用 Azure CLI 发出一个命令,该命令仅在特定部署槽中停止函数应用程序。

Azure CLI 2.0 文档Azure CLI 2.0 文档列出了命令:

az functionapp stop --name
                    --resource-group
Run Code Online (Sandbox Code Playgroud)

但是我不清楚如何停止不是“主”应用程序,而是特定部署槽中的应用程序。

在我的情况下,插槽称为 dev,应用程序称为 myapp。我试过了:

az functionapp stop --name=dev --resource-group=myresourcegroup
The Resource 'Microsoft.Web/sites/dev' under resource group myresourcegroup' was not found.

az functionapp stop --name=myapp/dev --resource-group=myresourcegroup
az functionapp stop --name='myapp/dev' --resource-group=myresourcegroup
Operation failed with status: 'Not Found'. Details: 404 Client Error: Not Found for url: https://management.azure.com/subscriptions/long-guid/resourceGroups/myresourcegroup/providers/Microsoft.Web/sites/myapp%2Fdev/start?api-version=2016-08-01
Run Code Online (Sandbox Code Playgroud)

我可以停止主应用程序没问题。当我发出停止主应用程序的命令时,部署槽中的应用程序不会停止(我可以通过检查门户 GUI 看到)。

那么,如何从命令行停止部署槽中的应用程序?

azure azure-cli azure-functions azure-cli2

4
推荐指数
1
解决办法
553
查看次数

我错过了什么导致[TempData]装饰的属性从获取到发布不保留值?

我对asp.net核心中的TempData属性的理解是,它将模型属性标记为需要在帖子和同一页面的获取之间保持值不变(并且生存期可能更长,但至少要更长)。

我的问题是,当用户回发表单时,我标记为TempData并在OnGetAsync中成功设置的任何属性都已重置为null。为什么会这样呢?

还是我误解了TempData应该作为属性做什么?如果有的话,实现我正在尝试的最佳方法是什么?将电话号码传递到视图,然后将其发回到OnPostAsync?!?

public class MyPageModel : PageModel
{
    [TempData] public string PhoneNumber { get; set; }

    public async Task<IActionResult> OnGetAsync(string phoneNumber)
    {
       PhoneNumber = phoneNumber; //THIS IS WORKING
       return Page();
    }

    public async Task<IActionResult> OnPostAsync()
    {
         user.PhoneNumber = PhoneNumber; //BUT BY HERE PHONENUMBER is NULL?
    }
}
Run Code Online (Sandbox Code Playgroud)

//在Startup.ConfigureServices中//我添加了以前没有的CookieTempDataProvider,但我相信默认情况下会启用CookieTempDataProvider:https : //docs.microsoft.com/zh-cn/aspnet/core/fundamentals/ app-state?view = aspnetcore-2.1#tempdata

services.AddSingleton<ITempDataProvider, CookieTempDataProvider>();
services.AddSession(options =>
        {
            //// Set a short timeout for easy testing.
            //options.IdleTimeout = TimeSpan.FromSeconds(10);
            options.Cookie.HttpOnly = true;
        });
Run Code Online (Sandbox Code Playgroud)

有想法吗?

razor asp.net-core-mvc razor-pages

1
推荐指数
1
解决办法
493
查看次数