我正在尝试使用 ibm 应用程序身份和访问适配器设置第一个 oidc 和 jwt 令牌,并且在安装完所有内容后它错过了一些东西,我不明白是什么。
版本
Istio 1.5
Kubernetes 1.17
ibm 应用程序 ID:稳定的 helm 存储库
掌舵:3.2
第一步:使用入门部分安装 Istio。
我按照以下步骤操作:https ://istio.io/docs/setup/getting-started/
第二步:ibm app身份和访问适配器
我按照自述文件中的说明进行安装。我只需要更改命令以使用 helm3,就像在 kubernetes 1.17 上一样。
第三步:
添加配置:
# socio-jwt.yaml
apiVersion: "security.cloud.ibm.com/v1"
kind: JwtConfig
metadata:
name: socio-jwt
# namespace: default
namespace: istio-system # tried with both default and istio-system
spec:
jwksUrl: https://sso.staging.infra-socotec.net/auth/realms/socotec-user/protocol/openid-connect/certs
# socio-keycloak-oidc.yaml
apiVersion: "security.cloud.ibm.com/v1"
kind: OidcConfig
metadata:
name: socio-keycloak-oidc
# namespace: default
namespace: istio-system # tried with both default and istio-system
spec:
discoveryUrl: https://sso.staging.infra-socotec.net/auth/realms/socotec-user/.well-known/openid-configuration
clientId: 1234-abcd-efgh-4567
clientSecret: <name-of-my-kube-secret> # I use a real one here of course
# clientSecretRef:
# name: <name-of-my-kube-secret>
# key: <key-in-my-kube-secret>
# socio-oidc-policy.yaml
apiVersion: "security.cloud.ibm.com/v1"
kind: Policy
metadata:
name: socio-oidc-policy
# namespace: default
namespace: istio-system # tried with both default and istio-system
spec:
targets:
- serviceName: productpage # internal service name
paths:
- prefix: /productpage
method: ALL
policies:
- policyType: oidc
config: socio-keycloak-oidc
- prefix: /api/v1
method: ALL
policies:
- policyType: jwt
config: socio-jwt
- serviceName: bookinfo # external virtual service name see https://raw.githubusercontent.com/istio/istio/release-1.5/samples/bookinfo/networking/bookinfo-gateway.yaml
paths:
- prefix: /productpage
method: ALL
policies:
- policyType: oidc
config: socio-keycloak-oidc
- prefix: /api/v1
method: ALL
policies:
- policyType: jwt
config: socio-jwt
我使用这个命令来添加配置(如果命名空间是 istio-system 我添加了 -n istio-system 选项):
kubectl apply -f istio-yaml/socio-jwt.yaml
kubectl apply -f istio-yaml/socio-keycloak-oidc.yaml
kubectl apply -f istio-yaml/socio-oidc-policy.yaml
全球 Kubernetes 信息:
ibm 应用程序 ID 日志:
我现在有点卡住了。一切似乎都很好,但是当我导航到http://in51aonvlo.lb.c1.gra.k8s.ovh.net/productpage或http://in51aonvlo.lb.c1.gra.k8s.ovh.net/api/v1/产品没有认证。
我当然想念一些东西,但我需要一些帮助来弄清楚是什么。