forked from openstacknetsdk/openstack.net
-
Notifications
You must be signed in to change notification settings - Fork 25
Expand file tree
/
Copy pathIdentityProviderExamples.fs
More file actions
94 lines (83 loc) · 3.09 KB
/
Copy pathIdentityProviderExamples.fs
File metadata and controls
94 lines (83 loc) · 3.09 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
module IdentityProviderExamples
open System
open net.openstack.Core.Domain
open net.openstack.Providers.Rackspace
let createProvider =
//#region CreateProvider
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#endregion
()
let createProviderWithPassword =
//#region CreateProviderWithPassword
let identity = new CloudIdentity (Username = "{username}", Password = "{password}")
let provider = new CloudIdentityProvider(identity)
//#endregion
()
let createUser =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region CreateUser
let user = new NewUser("{username}", "{email}", enabled=true)
let user = provider.AddUser(user, null)
let password = user.Password
//#endregion
()
let updateUser =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region UpdateUser
let user = provider.GetUserByName("{username}", null)
user.Username <- "{newUsername}"
provider.UpdateUser(user, null) |> ignore
//#endregion
()
let listUsers =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region ListUsers
let users = provider.ListUsers(null)
for user in users do
Console.WriteLine("{0}: {1}", user.Id, user.Username)
//#endregion
()
let addRoleToUser =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region AddRoleToUser
let user = provider.GetUserByName("{username}", null)
provider.AddRoleToUser(user.Id, "{roleId}", null) |> ignore
//#endregion
()
let deleteRoleFromUser =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region DeleteRoleFromUser
let user = provider.GetUserByName("{username}", null)
provider.DeleteRoleFromUser(user.Id, "{roleId}", null) |> ignore
//#endregion
()
let resetApiKey =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region ResetApiKey
let credential = provider.ResetApiKey("{userId}")
let newApiKey = credential.APIKey
//#endregion
()
let listRoles =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region ListRoles
let roles = provider.ListRoles()
for role in roles do
Console.WriteLine("{0}: {1}", role.Id, role.Name)
//#endregion
()
let deleteUser =
let identity = new CloudIdentity (Username = "{username}", APIKey = "{apiKey}")
let provider = new CloudIdentityProvider(identity)
//#region DeleteUser
provider.DeleteUser("{userId}", null) |> ignore
//#endregion
()